Avem conturi AWS pentru dev
, punerea în scenă
, și prod
. Folosim AWS SSO prin Okta și definim grupuri precum „Developers” și „Support” în Okta.
Grupul de dezvoltatori ar trebui să aibă acces larg la AWS nostru dev
cont, dar acces limitat în punerea în scenă
și prod
. Grupul de asistență ar trebui să aibă și acces AWS, dar și permisiuni diferite în funcție de cont.
Cum pot permite membrilor grupului să se conecteze, apoi să aibă permisiuni adecvate în funcție de contul pe care îl accesează?
Detalii:
AWS SSO Seturi de permisiuni
sunt legate la pagina de pornire AWS. Aceasta listează conturile la care un utilizator are acces și afișează unul sau mai multe seturi de permisiuni pe care le poate folosi. Seturile de permisiuni par să fie orientate spre acordarea utilizatorilor de posibilitatea de a se conecta la mai multe conturi cu același acces -- toți administratorii ar putea avea AWSAdministratorAccess, iar alții ar putea avea ReadOnlyAccess, de exemplu.
Totuși, cazul meu de utilizare este diferit: vreau să creez accesuri diferite în funcție de contul la care se conectează un anumit utilizator.
Cred ca este posibil pentru a face acest lucru cu seturi de permisiuni - de ex. dezvoltator-dezvoltator
, developer-staging
, dezvoltator-prod
. Dar mi se pare dezordonat. De asemenea, în realitate, vom avea un număr de grupuri (echipa de dezvoltatori A, B, C) care au nevoie de acces diferit, așa că există o explozie de seturi de permisiuni și conturi.
Aș dori ca un dezvoltator să se conecteze ca „Dezvoltator” și, în funcție de contul la care se conectează, obține permisiunile potrivite. pot sa fac cel mai acest lucru folosind Roluri IAM standard. Rolul de „dezvoltator” în producție ar putea fi ReadOnlyAccess
, unde în Staging ar putea avea unele permisiuni suplimentare, iar în dev ar putea avea PowerUserAccess
. Gestionăm astfel de lucruri folosind Terraform deja.
Îmi place pagina de conectare SSO cu mai multe conturi. Îmi place, de asemenea, posibilitatea de a schimba rolurile (și conturile) din Consola AWS. Există o abordare simplă pe care o înțeleg greșit, care să mă permită să le fac pe amândouă?