Õpitee 03Õppetund 2 / 6

Piira agendi volitusi

Määra lubatud tegevused, ressursid ja tingimused. Kontrolli õigusi väljaspool mudelit ning erista teostust väljalaskest.

Praktik9 minÜle vaadatud

Avaldaja Kuidas me kirjutame

Mida õpid

  • Väljenda õigust tegevuse, ressursi ja tingimusena.
  • Erista ülesande heakskiitu täitmisõigusest.
  • Katseta, et keelatud tegevus lükatakse tagasi.

Kirjelda ülesannet enne juurdepääsu andmist

Koodi lugev agent vajab teistsuguseid volitusi kui teenust juurutav agent. Ära anna mõlemat õigustekogumit ainult seetõttu, et sama toode toetab mõlemat tegevust.

Määra volitused kolme osaga: tegevus, ressurss ja tingimus. Väljamõeldud aruandeparanduse puhul saab agent kirjutada ühte funktsiooniharusse ülesande aktiivsuse ajal. Ta saab lugeda heaks kiidetud koodihoidla faile. Ta ei saa muuta tootmisandmeid ega koodihoidla kaitsereegleid.

Vajalik toimingPiiri näide
Koodi uurimineValitud koodihoidla lugemine
Kontrollide käivitamineEraldatud keskkonna kasutamine väljamõeldud testandmetega
Muudatuse ettevalmistamineKirjutamine ülesande harusse
Ülevaatuse küsiminePR-i avamine ilma seda merge’imata
Tarkvara väljalaskmineEraldi kaitstud juurutusprotsessi kasutamine

Täpne jõustamine sõltub tööriistast. Kui token ei võimalda harupiirangut väljendada, kasuta täiendavaid koodihoidla kontrolle või täitmisteenust. Dokumenteeri allesjäänud volitused ausalt.

Jõusta piir väljaspool mudelit

Prompt ei ole juurdepääsukontrollisüsteem. Täitmiskomponent peab kontrollima küsitud tegevust ja sihtmärki kehtivate õiguste vastu. See ei tohi aktsepteerida mudeli väidet, et heakskiit on juba olemas.

AWS soovitab sobivate töökoormuste jaoks piiratud õigusi ja ajutisi autentimisandmeid. OWASP rakendab sarnast vähimate õiguste põhimõtet agentidele ja nende tööriistadele. Need põhimõtted tuleb teostada tegelikes identiteedi- ja täitmissüsteemides. AWS IAM-i juhend, OWASP-i agendijuhend.

Kasuta lühiajalisi autentimisandmeid seal, kus neid toetatakse. Hoia teemavälised saladused keskkonnast eemal. Ainult lugemisõigusega koodihoidla ülesanne ei tohi pärida arendaja shell’ist tootmisandmebaasi parooli.

Seo heakskiit tegeliku tegevusega

Muudatuse ettevalmistamise heakskiit ei tähenda juurutamise heakskiitu. Juurutusotsus peab tuvastama artefakti, sihtkeskkonna ja asjakohased tingimused. Nende muutumisel ei pruugi eelmine otsus enam kehtida.

Vaata agenti, kes pakub ohutu andmebaasilugemise, kuid täidab pärast heakskiitu teise päringu. Kasulik heakskiidumehhanism kontrollib tegelikult käivitatavat toimingut. Üldine „jätka“ sõnum ilma määratud sihtmärgita võib selle erinevuse varjata.

Erista ka identiteeti võimekusest. Pane kirja, milline inimene või töökoormus käivituse algatas. Kontrolli tegevuse toimumise ajal, et algataja identiteedil on endiselt õigus. Inimese juurdepääsu eemaldamisel peab olema järjekorras olevale tööle selge mõju.

Katseta keeldu ja katkestust

Kontrolli enamat kui edukat teed. Proovi eraldatud testkeskkonnas tegevust väljaspool lubatud ressurssi. Veendu, et täitmissüsteem lükkab selle tagasi. Uuri auditisündmust autentimisandmeid salvestamata.

Seejärel katseta tühistamist või autentimisandmete aegumist. Määra, milline töö peatub kohe ja milline toiming saab lõpuni jõuda. Peatamisnupp ei pööra tingimata tagasi tegevust, mis on juba teise süsteemi jõudnud.

Hoia ülesande juures lühikest õiguste kirjeldust. Lisa vastutaja, heaks kiidetud ulatus, tegelikud kontrollid, keelu test ja aegumine. See muudab hilisema ülevaatuse piisavalt konkreetseks, et töövoogu parandada.

Tee harjutus

Määra õigused agendile, kes parandab aruandefiltrit. Loetle kolm lubatud ja kolm keelatud tegevust. Lisa koodihoidla, haru, keskkond ja aegumine. Kirjelda, kuidas katsetada iga keeldu tootmiskeskkonda muutmata.

Laadi tööleht alla (Markdown)

Kontrolli oma arusaamist

Annad agendile juhise muuta üht haru, kuid tema token saab push'ida vaikeharusse. Milline on tegelik piir?

Allikad ja lisalugemine

Seotud lugemine Taigalt