Aplică guardrails cu Service Control Policies (SCP)

Subiect din roadmap-ul Bune practici AWS · parte din „Conturi și organizare”

Service Control Policies (SCP) sunt politicile centrale ale AWS Organizations care acționează ca un „gardian” la nivel de cont sau organizație, definind permisiunile maxime pe care le pot avea toate conturile din ierarhie. Ele nu acordă drepturi, ci doar restricționează acțiunile posibile, asigurând că niciun utilizator sau rol IAM nu poate efectua operațiuni periculoase, cum ar fi ștergerea resurselor critice sau dezactivarea serviciilor de securitate. Ignorarea acestei practici expune infrastructura la riscuri majore de securitate și costuri necontrolate, deoarece un singur cont compromis sau o eroare umană poate duce la pierderea datelor sau la facturi astronomice. Implementarea SCP-urilor este esențială pentru a menține integritatea mediului multi-cont, oferind o stratificare de siguranță care funcționează indiferent de configurările locale IAM.

Cum o aplici

  1. Activează AWS Organizations și asigură-te că toate conturile sunt grupate în unități organizatorice (OU).
  2. Accesează consola AWS Organizations, navighează la Policies > Service Control Policies și creează o nouă politică.
  3. Definește regula JSON care specifică acțiunile Deny pentru acțiunile sensibile.
  4. Atasează politica la OU-ul sau contul dorit. Verifică întotdeauna setarea Service Control Policy (SCP) effective permissions pentru a vedea impactul real asupra utilizatorilor.

Exemplu

Să presupunem că vrem să prevenim ștergerea accidentală a instanțelor EC2 sau modificarea regiunilor.

Varianta greșită (permite totul):

{
  "Version": "2012-10-17",
  "Statement": []
}

Varianta corectă (blochează acțiuni critice):

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Action": [
        "ec2:TerminateInstances",
        "ec2:DeleteVolumes"
      ],
      "Resource": "*"
    }
  ]
}

Notă: Folosește Condition pentru a exclude conturile de management sau rolele administrative critice dacă este necesar.

Cum verifici

Utilizează Access Analyzer pentru a identifica permisiunile nedorite și AWS CloudTrail pentru a audita încercările de a executa acțiuni blocate. Verifică dashboard-ul Organizations pentru a confirma că politica este atașată corect la OU. Testează practic prin logarea cu un rol IAM standard și încercarea executării unei comenzi interzise; răspunsul ar trebui să fie AccessDenied.

Greșeli frecvente

  • Atașarea la Root: Evită atașarea SCP-urilor restrictive direct la rădăcina (Root) a organizației, deoarece poți bloca accesul la propriile conturi de management.
  • Ignorarea excepțiilor: Nu uita să adaugi excepții pentru conturile de securitate sau de backup, care au nevoie de permisiuni largi pentru a-și îndeplini rolul.
  • Confuzia cu IAM: SCP-urile nu înlocuiesc politicile IAM; ele definesc limita superioară. Un utilizator are nevoie de permisiuni atât în IAM, cât și de a nu fi blocat de SCP.

Resurse gratuite

Alte subiecte din „Conturi și organizare”