

# SEC08-BP04 Applicazione del controllo degli accessi
<a name="sec_protect_data_rest_access_control"></a>

 Per proteggere i dati a riposo, applica il controllo degli accessi utilizzando meccanismi come l'isolamento e il controllo delle versioni. Applica i controlli in base al privilegio minimo e all'accesso condizionale. Impedisci che venga consentito l'accesso pubblico ai dati. 

 **Risultato desiderato:** puoi verificare che l'accesso ai dati sia consentito solo agli utenti autorizzati, in base alle necessità. La protezione dei dati è assicurata da backup regolari e dal controllo delle versioni, per evitare che la modifica dei dati o la loro eliminazione intenzionale o non voluta. L'isolamento dei dati critici dagli altri dati ne protegge la riservatezza e l'integrità. 

**Anti-pattern comuni:**
+  Archiviazione dei dati con requisiti di sensibilità o classificazione diversi. 
+  Utilizzo di autorizzazioni troppo permissive sulle chiavi di decrittografia. 
+  Classificazione impropria dei dati. 
+  Nessun mantenimento di backup dettagliati dei dati importanti. 
+  Accesso persistente ai dati di produzione. 
+  Nessun audit dell'accesso ai dati o revisione periodica delle autorizzazioni.

**Livello di rischio associato se questa best practice non fosse adottata:** elevato 

## Guida all'implementazione
<a name="implementation-guidance"></a>

 La protezione dei dati a riposo è importante per mantenere l'integrità, la riservatezza e la conformità dei dati ai requisiti normativi. Per ottenere tale risultato puoi implementare più controlli, inclusi controllo degli accessi, isolamento, accesso condizionale e controllo delle versioni. 

 Puoi applicare il controllo degli accessi con il principio del privilegio minimo, che fornisce solo le autorizzazioni necessarie agli utenti e ai servizi per eseguire le varie attività. È incluso l'accesso alle chiavi di crittografia. Rivedi le [policy AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html) per verificare che il livello di accesso concesso sia appropriato e che si applichino le condizioni pertinenti. 

 Puoi separare i dati in base a diversi livelli di classificazione utilizzando Account AWS distinti per ogni livello e gestire tali account con [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html). Tale isolamento può aiutare a prevenire l'accesso non autorizzato e a ridurre al minimo il rischio di esposizione dei dati. 

 Rivedi periodicamente il livello di accesso concesso nelle policy dei bucket Amazon S3. Evita di utilizzare bucket leggibili o scrivibili pubblicamente a meno che ciò non sia assolutamente necessario. Valuta la possibilità di utilizzare [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) per rilevare i bucket disponibili pubblicamente e Amazon CloudFront per distribuire i contenuti da Amazon S3. Verifica che i bucket che non devono consentire l'accesso pubblico siano configurati correttamente a tale scopo. 

 Implementa meccanismi di controllo delle versioni e Object Lock per i dati critici archiviati in Amazon S3. Il [controllo delle versioni di Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html) preserva le versioni precedenti degli oggetti per recuperare i dati in caso di cancellazioni o sovrascritture accidentali. [Amazon S3 Object Lock](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html) fornisce un controllo degli accessi obbligatorio per gli oggetti, che impedisce che questi ultimi vengano eliminati o sovrascritti, anche dall'utente root, fino alla scadenza del blocco. Inoltre, [Amazon Glacier Vault Lock](https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html) offre una funzionalità simile per gli archivi memorizzati in Amazon Glacier. 

### Passaggi dell'implementazione
<a name="implementation-steps"></a>

1.  **Implementa il controllo degli accessi con il principio del privilegio minimo**: 
   +  Verifica le autorizzazioni di accesso concesse a utenti e servizi e verifica che dispongano solo delle autorizzazioni necessarie per svolgere le rispettive attività. 
   +  Verifica l'accesso alle chiavi di crittografia controllando le policy [AWS Key Management Service (AWS KMS)](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html). 

1.  **Separa i dati in base a diversi livelli di classificazione**: 
   +  Utilizza Account AWS distinti per ogni livello di classificazione dei dati. 
   +  Gestisci questi account utilizzando [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html). 

1.  **Verifica le autorizzazioni per bucket e oggetti Amazon S3**: 
   +  Rivedi periodicamente il livello di accesso concesso nelle policy dei bucket Amazon S3. 
   +  Evita di utilizzare bucket leggibili o scrivibili pubblicamente a meno che ciò non sia assolutamente necessario. 
   +  Valuta la possibilità di utilizzare [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) per rilevare i bucket pubblicamente disponibili. 
   +  Utilizza Amazon CloudFront per distribuire contenuti da Amazon S3. 
   +  Verifica che i bucket che non devono consentire l'accesso pubblico siano configurati correttamente a tale scopo. 
   +  Puoi applicare lo stesso processo di revisione per i database e qualsiasi altra origine dati che utilizzi l'autenticazione IAM, come SQS o datastore di terze parti. 

1.  **Utilizza il Sistema di analisi degli accessi AWS IAM**: 
   +  Puoi configurare [AWS IAM Access Analyzer](https://docs.aws.amazon.com/IAM/latest/UserGuide/what-is-access-analyzer.html) per analizzare i bucket Amazon S3 e generare esiti quando una policy S3 concede l'accesso a un'entità esterna. 

1.  **Implementa meccanismi di controllo delle versioni e Object Lock**: 
   +  Utilizza il [controllo delle versioni di Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html) per preservare le versioni precedenti degli oggetti, consentendo così il ripristino in caso di cancellazioni o sovrascritture accidentali. 
   +  Utilizza [Amazon S3 Object Lock](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html) per fornire un controllo degli accessi obbligatorio per gli oggetti, che impedisce che questi ultimi vengano eliminati o sovrascritti, anche dall'utente root, fino alla scadenza del blocco. 
   +  Utilizza [Amazon Glacier Vault Lock](https://docs.aws.amazon.com/amazonglacier/latest/dev/vault-lock.html) per gli archivi in Amazon Glacier. 

1.  **Utilizza l'Inventario Amazon S3**: 
   +  Puoi utilizzare l'[Inventario Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html) per eseguire audit e segnalare lo stato di replica e crittografia dei tuoi oggetti S3. 

1.  **Verifica le autorizzazioni di condivisione di Amazon EBS e AMI**: 
   +  Esamina le tue autorizzazioni di [condivisione di Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) e [AMI](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html) per verificare che le immagini e i volumi non vengano condivisi con Account AWS esterni al tuo carico di lavoro. 

1.  **Rivedi periodicamente le condivisioni di AWS Resource Access Manager**: 
   +  Puoi utilizzare [AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) per condividere risorse come le policy AWS Network Firewall, le regole del risolutore Amazon Route 53 e le sottoreti all'interno dei tuoi Amazon VPC. 
   +  Sottoponi regolarmente ad audit le risorse condivise e interrompi la condivisione delle risorse che non devono più essere condivise. 

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

 **Best practice correlate:** 
+ [SEC03-BP01 Definizione dei requisiti di accesso](sec_permissions_define.md) 
+  [SEC03-BP02 Concessione dell'accesso con privilegio minimo](sec_permissions_least_privileges.md) 

 **Documenti correlati:** 
+  [AWS KMS Cryptographic Details Whitepaper](https://docs.aws.amazon.com/kms/latest/cryptographic-details/intro.html) 
+  [Introduzione alla gestione delle autorizzazioni di accesso alle risorse di Amazon S](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-managing-access-s3-resources.html) 
+  [Panoramica della gestione dell'accesso alle risorse AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html) 
+  [Regole di AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) 
+  [Amazon S3 \$1 Amazon CloudFront: A Match Made in the Cloud](https://aws.amazon.com/blogs/networking-and-content-delivery/amazon-s3-amazon-cloudfront-a-match-made-in-the-cloud/) 
+  [Utilizzo del controllo delle versioni](https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html) 
+  [Blocco degli oggetti mediante Object Lock di Amazon S](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) 
+  [Sharing an Amazon EBS Snapshot](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-modifying-snapshot-permissions.html) 
+  [AMI condivise](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sharing-amis.html) 
+  [Ospitare un'applicazione a pagina singola su Amazon S3](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-a-react-based-single-page-application-to-amazon-s3-and-cloudfront.html) 
+  [AWS Global Condition Keys](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) 
+  [Building a Data Perimeter on AWS](https://docs.aws.amazon.com/whitepapers/latest/building-a-data-perimeter-on-aws/building-a-data-perimeter-on-aws.html) 

 **Video correlati:** 
+  [Securing Your Block Storage on AWS](https://youtu.be/Y1hE1Nkcxs8) 