I1206 — Co smí anonymní čtenář dělat, je odvozeno z klasifikace efektů, ne ze seznamu
Odvodit rozhodnutí o vystavení z registru schopností: schopnost jen pro čtení zůstává otevřená anonymnímu čtenáři, cokoli, co mění stav, vyžaduje identifikovaného, a rozhodnutí se uvádí jednou v politice nad třídami účinků, ne pro každou trasu. Promítnout rozhodnutí do bezpečnostního schématu OpenAPI, do vypnutých ovládacích prvků Cockpitu s jejich důvodem a do generované dokumentace.
BLOKOVÁNO vlna 5 · p1 · profil implementation · běží samostatně
Součást web-sign-in — Nasazené povrchy vědí, kdo se ptá, a poskytovatelé identit jsou data.
Blokováno. Tento úkol nemůže začít, dokud není hotovo I1205. Stav se z toho odvozuje, nedeklaruje.
Cíl
Odvodit rozhodnutí o vystavení z registru schopností: schopnost jen pro čtení zůstává otevřená anonymnímu čtenáři, cokoli, co mění stav, vyžaduje identifikovaného, a rozhodnutí se uvádí jednou v politice nad třídami účinků, ne pro každou trasu. Promítnout rozhodnutí do bezpečnostního schématu OpenAPI, do vypnutých ovládacích prvků Cockpitu s jejich důvodem a do generované dokumentace.
Proč
Seznam rout je druhý inventář toho, co tento repozitář umí, a je to inventář, který zastará. Registr už ví, čím každá schopnost je; politika musí jen říct, co která třída schopností vyžaduje.
Aktuální stav
Každá trasa se servíruje každému; milník fly-deployment proto zakazuje vystavit prohlížeči jakoukoli měnící operaci.
Cílový stav
Přidaná schopnost zdědí svou expozici ze třídy účinku a schopnost, která mění stav, nemůže být dosažena anonymně bez změny politiky, která je jako taková viditelná.
Rozsah
- .ai/repo/policy.yaml
- apps/majordomus-cli/src/capability
- apps/majordomus-cli/src/http
- apps/majordomus-cli/src/cockpit
- dokumentace
- apps/majordomus-cli/tests
Mimo rozsah
- Tabulka autorizace pro každou route v jakémkoli formátu
- Udělit přihlášenému čtenáři cokoli, co politika efektů neklasifikovala
Závislosti
Co na tom čeká
Kritéria přijetí
- Politika uvádí požadavek podle třídy efektu a žádná trasa nejmenuje svůj vlastní požadavek
- Schopnost přidaná s mutujícím efektem je anonymnímu volajícímu odmítnuta bez jakékoli úpravy vrstvy HTTP, což dokládá testovací schopnost
- Dokument OpenAPI nese bezpečnostní schéma a označuje operace, které je vyžadují, generované, ne psané
- Cockpit zakáže to, co volající nesmí vyvolat, a uvede důvod, proč je to zakázáno
Validace
- cargo test --workspace --all-features
- majordomus generate --check
- bash test/run.sh
Požadované důkazy
- policy_by_effect_class
- new_capability_inherits
- openapi_security_generated
Důkazy
Nic nezaznamenáno. Za každým tokenem výše musí stát příkaz nebo artefakt, než lze tento úkol dokončit; vyprávění se odmítá.
Riziko
Tento úkol závisí na tom, že klasifikace efektů je důvěryhodná. Kde je třída schopnosti špatně, opravou je klasifikace, nikdy výjimka v routeru.
Časová osa
- zahájeno
- —
- ověřeno
- —
- dokončeno
- —
Tato tři pole, důkazy výše a stav závislostí jsou vše, z čeho se stav skládá. Neexistuje žádné pole stavu, které by s nimi mohlo být v rozporu.
Kanonický záznam: .ai/repo/project/issues/I1206.yaml. Přečtěte ho zpět pomocí majordomus plan show I1206.