Pot 03Lekcija 2 / 6

Omejite pooblastila agenta

Določite dovoljena dejanja, vire in pogoje. Dovoljenja preverjajte zunaj modela ter ločite izvedbo od izdaje.

Praktična raven9 minPregledano

Izdajatelj Kako pišemo

Preverite razumevanjeAgentu naročite, naj ureja eno vejo, njegov žeton pa dovoljuje push v privzeto vejo. Kaj dejansko določa mejo?Opravite vajo
Agentu naročite, naj ureja eno vejo, njegov žeton pa dovoljuje push v privzeto vejo. Kaj dejansko določa mejo?

Kaj se boste naučili

  • Dovoljenje izrazite z dejanjem, virom in pogojem.
  • Ločite odobritev naloge od dovoljenja za izvajanje.
  • Preizkusite, ali sistem zavrne prepovedano dejanje.

Agent, ki bere kodo, potrebuje drugačna pooblastila kot agent, ki namešča storitev. Obeh naborov dovoljenj ne dodelite zgolj zato, ker isti izdelek podpira obe dejanji.

Pooblastila določite s tremi deli: dejanjem, virom in pogojem. Pri izmišljenem popravku poročila lahko agent med aktivno nalogo piše v eno razvojno vejo. Bere lahko odobrene datoteke repozitorija. Ne sme spreminjati produkcijskih podatkov ali pravil zaščite repozitorija.

Potrebna operacijaPrimer meje
Pregled kodeBranje izbranega repozitorija
Izvajanje preverjanjUporaba ločenega okolja z izmišljenimi testnimi podatki
Priprava spremembePisanje v vejo naloge
Zahteva za pregledOdprtje PR-ja brez mergea
Izdaja programske opremeUporaba ločenega zaščitenega postopka namestitve

Natančno uveljavljanje omejitev je odvisno od orodja. Če žeton ne omogoča omejitve na vejo, uporabite dodatne nadzorne ukrepe repozitorija ali izvajalno storitev. Preostala pooblastila dokumentirajte po resnici.

Omejitev uveljavite zunaj modela

Poziv ni sistem za nadzor dostopa. Izvajalna komponenta mora zahtevano dejanje in cilj preveriti glede na trenutna dovoljenja. Ne sme sprejeti trditve modela, da odobritev že obstaja.

AWS za ustrezne delovne obremenitve priporoča omejena dovoljenja in začasne poverilnice. OWASP podobno načelo najmanjših privilegijev uporablja za agente in njihova orodja. Ta načela je treba uvesti v dejanskih sistemih identitet in izvajanja. Smernice AWS IAM, smernice OWASP za agente.

Kjer je podprto, uporabljajte kratkotrajne poverilnice. Nepovezanih skrivnosti ne vključujte v okolje. Naloga, ki samo bere repozitorij, ne sme iz razvijalčeve lupine podedovati gesla za produkcijsko podatkovno zbirko.

Odobritev povežite z dejanskim dejanjem

Odobritev priprave spremembe ne pomeni odobritve njene namestitve. Odločitev o namestitvi naj določa artefakt, ciljno okolje in ustrezne pogoje. Če se ti spremenijo, prejšnja odločitev morda ne velja več.

Predstavljajte si agenta, ki predlaga varno branje podatkovne zbirke, po odobritvi pa izvede drugačno poizvedbo. Uporaben mehanizem odobritve preveri operacijo, ki se dejansko izvede. Splošno sporočilo »nadaljujte« brez določenega cilja lahko to razliko skrije.

Ločite tudi identiteto od zmožnosti. Zabeležite, katera oseba ali delovna obremenitev je sprožila izvajanje. Preverite, ali ima začetna identiteta ob izvedbi dejanja še vedno dovoljenje. Odvzem dostopa osebi mora imeti izrecno določen učinek na delo v čakalni vrsti.

Preizkusite zavrnitev in prekinitev

Preverite več kot samo uspešen potek. V ločenem testnem okolju poskusite izvesti dejanje zunaj dovoljenega vira. Potrdite, da ga izvajalni sistem zavrne. Preglejte revizijski dogodek brez zapisovanja poverilnic.

Nato preizkusite preklic ali potek veljavnosti poverilnic. Ugotovite, katero delo se takoj ustavi in katera operacija se lahko dokonča. Gumb za ustavitev ne razveljavi nujno dejanja, ki je že doseglo drug sistem.

Ob nalogi hranite kratek zapis dovoljenj. Vključite odgovorno osebo, odobreni obseg, dejanske nadzorne ukrepe, test zavrnitve in rok veljavnosti. Tako je poznejši pregled dovolj konkreten za izboljšanje delovnega toka.

Opravite vajo

Določite dovoljenja za agenta, ki popravlja filter poročila. Navedite tri dovoljena in tri prepovedana dejanja. Vključite repozitorij, vejo, okolje in rok veljavnosti. Opišite, kako boste preizkusili vsako zavrnitev brez spreminjanja produkcije.

Prenesi delovni list (Markdown)
Preverite razumevanje ↑

Nadaljujte učenje

Viri in nadaljnje branje

Povezano gradivo podjetja Taiga

← Prejšnja lekcija: Določite, kam smejo vaši podatki