- Spegnimento
- 15 agosto 2026 alle ore 03:43 UTC
- Autore
- Kamo
- Impegno
- 75253b1
ContactRestController ha controllato la proprietà con attenzione — orgOf, userOf, assertBookIsMine, affermareGroupIsMine, e 404 piuttosto che 403 quindi l'id di qualcun altro non è mai confermato di esistere — e controllato nessun diritto a tutti attraverso 26 endpoints. VIEW CONTACTS era forzato solo da navRegistry nascondere l'applicazione nel browser, così i membri il cui i ruoli sostengono che sia stata rifiutata la pagina e servita dall'API; CREATE, EDIT e DELETE CONTACTS non ha portato nulla da nessuna parte. La proprietà e i diritti sono complementari, non ridondanti: la proprietà decide il cui contatti, diritti decidono se il verbo è consentito. Entrambi scappano ora. assertRight legge i diritti che la sessione già porta, dallo stesso attributo OrgIdExtractor e UserIdExtractor leggere, quindi la risposta è qualsiasi cosa modello di sicurezza dell'organizzazione risolto per questo membro. Non si chiude su un sessione mancante, un array di diritti mancanti, o un valore di diritti del tipo sbagliato — un sessione che non può essere classificata non è uno per passare attraverso. Dio bypassa, abbinare ogni altro controllo dei diritti nella piattaforma. Libri, gruppi e le loro operazioni di massa seguono il contatto che tengono: creare un libro o un gruppo è CREATE CONTACTS, i contatti tra di loro sono EDIT CONTACTS, e entrambi cancellano i percorsi più bulk-delete sono DELETE CONTACTS. L'importazione è creazione e i tre percorsi di esportazione sono letti. Non si vede. Tutti e tre i verbi tracciano VIEW CONTACTS esattamente — 28 ruoli, 47 membri — e nessun membro detiene il genitore senza di loro, quindi nessuno perde nulla.