SEC03-BP02 Concessione dell'accesso con privilegio minimo
Concedi alle identità soltanto il livello di accesso di cui hanno bisogno, specificando le operazioni che possono effettuare, le risorse AWS su cui possono operare e a quali condizioni. Affidati ai gruppi e agli attributi di identità per impostare dinamicamente le autorizzazioni su vasta scala, anziché definire le autorizzazioni per i singoli utenti. Ad esempio, puoi concedere a un gruppo di sviluppatori le autorizzazioni per gestire solo le risorse del loro progetto. In questo modo, quando uno sviluppatore lascia il gruppo, perderà l'accesso a tutte le risorse gestite tramite il gruppo e non sarà necessario modificare le policy di accesso.
Anti-pattern comuni:
-
L'impostazione predefinita è la concessione delle autorizzazioni di amministratore agli utenti.
-
L'utilizzo dell'account root per le attività quotidiane.
Livello di rischio associato se questa best practice non fosse adottata: alto
Guida all'implementazione
Stabilire un principio di privilegio minimo assicura che alle identità venga concesso di eseguire il minimo set di funzioni necessarie alla realizzazione di un'attività specifica, bilanciando al tempo stesso usabilità ed efficienza. Il funzionamento di questo principio limita l'accesso involontario e ti consente di verificare chi ha accesso a quali risorse. In AWS per impostazione predefinita le identità non dispongono di autorizzazioni ad eccezione dell'utente root. Le credenziali per l'utente root devono essere rigorosamente controllate e utilizzate solo per poche attività specifiche.
Puoi utilizzare le policy per concedere esplicitamente autorizzazioni collegate a IAM o a entità di risorse, ad esempio un ruolo IAM utilizzato da identità federate, macchine o risorse, come un bucket S3. Quando crei e colleghi una policy, puoi specificare le azioni del servizio, le risorse e le condizioni che devono essere vere affinché AWS consenta l'accesso. AWS supporta una varietà di condizioni che contribuiscono a ridurre l'accesso. Ad esempio, utilizzando PrincipalOrgID, una
chiave di condizione, l'identificatore di AWS Organizations viene verificato in modo che l'accesso possa essere concesso all'interno della tua organizzazione AWS.
Puoi anche controllare le richieste effettuate dai servizi AWS per tuo conto, ad esempio AWS CloudFormation per la creazione di una funzione AWS Lambda, utilizzando la chiave di condizione CalledVia
. Occorre suddividere in livelli i diversi tipi di policy per limitare efficacemente le autorizzazioni complessive di un account. Ad esempio, puoi consentire ai team dell'applicazione di creare le proprie policy IAM usando un limite delle autorizzazioni
Sono disponibili diverse funzionalità AWS per consentirti di applicare su vasta scala la gestione delle autorizzazioni e aderire al principio del privilegio minimo. Il controllo degli accessi basato su attributi
Un altro modo per accelerare la creazione di una policy con privilegi minimi consiste nel basare la policy sulle autorizzazioni CloudTrail dopo l'esecuzione di un'attività. Il Sistema di analisi degli accessi IAM può generare automaticamente una policy IAM basata su attività
Stabilisci una cadenza di revisione di questi dettagli e rimozione delle autorizzazioni non necessarie. Occorre impostare dei guardrail di autorizzazione all'interno della tua organizzazione AWS per controllare il numero massimo di autorizzazioni di qualsiasi account membro. I servizi come AWS Control Tower dispongono di controlli preventivi gestiti prescrittivi che ti permettono di definire i tuoi controlli.
Risorse
Documenti correlati:
-
Perfezionamento delle autorizzazioni in AWS utilizzando le informazioni sull'ultimo accesso
-
IAM policy types and when to use them (Tipi di policy IAM e quando utilizzarle)
-
Guardrails in AWS Control Tower (Guardrail in AWS Control Tower)
-
Zero Trust architectures: An AWS perspective (Architetture Zero Trust: una prospettiva AWS)
Video correlati:
Esempi correlati: