

# SEC03-BP02 Concessione dell'accesso con privilegio minimo
<a name="sec_permissions_least_privileges"></a>

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
<a name="implementation-guidance"></a>

Stabilire un principio di [privilegio minimo](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) 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](https://docs.aws.amazon.com/general/latest/gr/aws_tasks-that-require-root.html). 

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](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html), 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](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) per contenere il numero massimo di autorizzazioni che possono concedere. 

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](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/) ti consente di limitare le autorizzazioni in base al *[tag](https://docs.aws.amazon.com/whitepapers/latest/tagging-best-practices/tagging-best-practices.html)* di una risorsa, per prendere le decisioni di autorizzazione in base ai tag applicati alla risorsa e al principale IAM chiamante. Ti consente di combinare nella tua policy tag e autorizzazioni per ottenere l'accesso granulare alle risorse senza la necessità di creare molte policy personalizzate.

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à](https://aws.amazon.com/blogs/security/delegate-permission-management-to-developers-using-iam-permissions-boundaries/). È inoltre possibile utilizzare IAM Access Advisor a livello di organizzazione o singolo account per [monitorare le ultime informazioni a cui si accede per una determinata policy](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html).

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](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html) che ti permettono di definire i tuoi controlli. 

## Risorse
<a name="resources"></a>

 **Documenti correlati:** 
+  [Limiti delle autorizzazioni per le entità IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html) 
+  [Techniques for writing least privilege IAM policies (Tecniche per la scrittura di policy IAM con privilegio minimo)](https://aws.amazon.com/blogs/security/techniques-for-writing-least-privilege-iam-policies/) 
+  [IAM Access Analyzer makes it easier to implement least privilege permissions by generating IAM policies based on access activity (IAM Access Analyzer semplifica l'implementazione delle autorizzazioni con privilegio minimo generando policy IAM basate sull'attività di accesso)](https://aws.amazon.com/blogs/security/iam-access-analyzer-makes-it-easier-to-implement-least-privilege-permissions-by-generating-iam-policies-based-on-access-activity/) 
+  [Perfezionamento delle autorizzazioni in AWS utilizzando le informazioni sull'ultimo accesso](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_access-advisor.html) 
+  [IAM policy types and when to use them (Tipi di policy IAM e quando utilizzarle)](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html) 
+  [Test delle policy IAM con il simulatore di policy IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_testing-policies.html) 
+  [Guardrails in AWS Control Tower (Guardrail in AWS Control Tower)](https://docs.aws.amazon.com/controltower/latest/userguide/guardrails.html) 
+  [Zero Trust architectures: An AWS perspective (Architetture Zero Trust: una prospettiva AWS)](https://aws.amazon.com/blogs/security/zero-trust-architectures-an-aws-perspective/) 
+  [How to implement the principle of least privilege with CloudFormation StackSets (Come implementare il principio del privilegio minimo con CloudFormation StackSets)](https://aws.amazon.com/blogs/security/how-to-implement-the-principle-of-least-privilege-with-cloudformation-stacksets/) 

 **Video correlati:** 
+  [Next-generation permissions management (Gestione delle autorizzazioni di ultima generazione)](https://www.youtube.com/watch?v=8vsD_aTtuTo) 
+  [Zero Trust: An AWS perspective (Zero Trust: una prospettiva AWS)](https://www.youtube.com/watch?v=1p5G1-4s1r0) 
+  [How can I use permissions boundaries to limit IAM users and roles to prevent privilege escalation? (Come utilizzare i limiti delle autorizzazioni per limitare utenti e ruoli IAM e impedire l'escalation dei privilegi?)](https://www.youtube.com/watch?v=omwq3r7poek) 

 **Esempi correlati:** 
+  [Laboratorio: limiti delle autorizzazioni IAM per delegare la creazione di ruoli](https://wellarchitectedlabs.com/Security/300_IAM_Permission_Boundaries_Delegating_Role_Creation/README.html) 