SEC08-BP01 Implementare una gestione sicura delle chiavi - AWS Well-Architected Framework

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

SEC08-BP01 Implementare una gestione sicura delle chiavi

La gestione sicura delle chiavi include l'archiviazione, la rotazione, il controllo degli accessi e il monitoraggio del materiale relativo alla chiave necessario per proteggere i dati a riposo per il carico di lavoro.

Risultato desiderato: un meccanismo di gestione delle chiavi scalabile, ripetibile e automatizzato. Il meccanismo dovrebbe fornire la possibilità di applicare l'accesso con il privilegio minimo al materiale relativo alla chiave e offrire il giusto equilibrio tra disponibilità, riservatezza e integrità delle chiavi. L'accesso alle chiavi va monitorato e occorre ruotare il materiale relativo alla chiave mediante un processo automatizzato. Il materiale relativo alla chiave non dovrebbe mai essere accessibile alle identità umane.

Anti-pattern comuni:

  • Accesso umano a materiale relativo alla chiave non crittografato.

  • Creazione di algoritmi crittografici personalizzati.

  • Autorizzazioni di accesso al materiale relativo alla chiave di accesso troppo ampie.

Vantaggi dell'adozione di questa best practice: predisponendo un meccanismo di gestione delle chiavi sicuro per il tuo carico di lavoro, puoi contribuire a proteggere i contenuti dagli accessi non autorizzati. Inoltre, la crittografia dei dati potrebbe essere prevista da requisiti normativi per la tua organizzazione. Una soluzione efficace di gestione delle chiavi può fornire meccanismi tecnici finalizzati alla protezione del materiale relativo alle chiavi in linea con tali normative.

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

Guida all'implementazione

Molti requisiti normativi e best practice includono la crittografia dei dati a riposo come controllo di sicurezza fondamentale. Per garantire la conformità a questo controllo, il carico di lavoro necessita di un meccanismo per archiviare e gestire in modo sicuro il materiale relativo alla chiave utilizzato per crittografare i dati a riposo.

AWS offre AWS Key Management Service (AWS KMS) per fornire uno spazio di archiviazione durevole, sicuro e ridondante per le chiavi. AWS KMS Molti AWS servizi si integrano con AWS KMS per supportare la crittografia dei dati. AWS KMS utilizza moduli di sicurezza hardware convalidati FIPS 140-2 di livello 3 per proteggere le chiavi. Non esiste alcun meccanismo per esportare AWS KMS le chiavi in testo semplice.

Quando si distribuiscono carichi di lavoro utilizzando una strategia multi-account, è consigliabile conservare AWS KMS le chiavi nello stesso account del carico di lavoro che le utilizza. In questo modello distribuito, la responsabilità della gestione delle AWS KMS chiavi spetta al team dell'applicazione. In altri casi d'uso, le organizzazioni possono scegliere di archiviare AWS KMS le chiavi in un account centralizzato. Questa struttura centralizzata richiede policy aggiuntive per consentire l'accesso multi-account richiesto affinché l'account del carico di lavoro possa accedere alle chiavi di accesso archiviate nell'account centralizzato, ma può essere più applicabile nei casi d'uso in cui una singola chiave è condivisa tra Account AWS multipli.

Indipendentemente dal luogo in cui è archiviato il materiale chiave, l'accesso alla chiave deve essere strettamente controllato mediante l'uso di politiche e IAM politiche chiave. Le politiche chiave sono il modo principale per controllare l'accesso a una AWS KMS chiave. Inoltre, le concessioni di AWS KMS chiavi possono fornire l'accesso ai AWS servizi per crittografare e decrittografare i dati per conto dell'utente. Prenditi del tempo per esaminare le migliori pratiche per il controllo degli accessi alle tue chiavi. AWS KMS

Una best practice è quella di monitorare l'uso delle chiavi di crittografia per rilevare modelli di accesso insoliti. Le operazioni eseguite utilizzando chiavi AWS gestite e chiavi gestite dal cliente archiviate in AWS KMS possono essere registrate AWS CloudTrail e devono essere riviste periodicamente. Occorre prestare particolare attenzione al monitoraggio dei principali eventi di eliminazione delle chiavi. Per ridurre le probabilità di distruzione accidentale o dolosa del materiale relativo alla chiave, gli eventi di eliminazione delle chiavi non hanno efficacia immediata. I tentativi di eliminare le chiavi in AWS KMS ingresso sono soggetti a un periodo di attesa, che per impostazione predefinita è di 30 giorni, che offre agli amministratori il tempo di esaminare queste azioni e annullare la richiesta, se necessario.

La maggior parte dei AWS servizi utilizza AWS KMS in modo trasparente per l'utente: l'unico requisito è decidere se utilizzare una chiave AWS gestita o gestita dal cliente. Se il carico di lavoro richiede l'uso diretto di AWS KMS per crittografare o decrittografare i dati, la migliore pratica è utilizzare la crittografia a busta per proteggere i dati. The AWS Encryption SDK può fornire alle applicazioni primitive di crittografia lato client con cui implementare la crittografia in busta e con cui integrarsi. AWS KMS

Passaggi dell'implementazione

  1. Determinate le opzioni di gestione delle chiavi appropriate (AWS gestite o gestite dal cliente) per la chiave.

    • Per facilitare l'uso, AWS offre chiavi AWS possedute e AWS gestite per la maggior parte dei servizi, che forniscono encryption-at-rest funzionalità senza la necessità di gestire il materiale o le politiche chiave.

    • Quando utilizzi chiavi gestite dal cliente, prendi in considerazione il keystore predefinito per fornire il miglior equilibrio tra agilità, sicurezza, sovranità dei dati e disponibilità. Per altri casi d'uso può essere richiesto l'uso di archivi di chiavi personalizzati con AWS CloudHSM o l'archivio chiavi esterno.

  2. Consulta l'elenco dei servizi che stai utilizzando per il tuo carico di lavoro per capire come AWS KMS si integra con il servizio. Ad esempio, EC2 le istanze possono utilizzare EBS volumi crittografati, verificando che anche le EBS istantanee Amazon create da tali volumi siano crittografate utilizzando una chiave gestita dal cliente e mitigando la divulgazione accidentale di dati di snapshot non crittografati.

    • Come vengono utilizzati i servizi AWSAWS KMS

    • Per informazioni dettagliate sulle opzioni di crittografia offerte da un AWS servizio, consulta l'argomento Encryption at Rest nella guida per l'utente o la guida per sviluppatori del servizio.

  3. Implementazione AWS KMS: AWS KMS semplifica la creazione e la gestione delle chiavi e il controllo dell'uso della crittografia in un'ampia gamma di AWS servizi e nelle applicazioni.

  4. Considera AWS Encryption SDK: usa AWS Encryption SDK with AWS KMS integration quando la tua applicazione deve crittografare i dati lato client.

  5. Abilita IAMAccess Analyzer per esaminare e notificare automaticamente se esistono politiche chiave troppo ampie. AWS KMS

  6. Abilita Security Hub per ricevere notifiche in caso di policy della chiave configurate in modo errato, chiavi programmate per essere eliminate o chiavi senza la rotazione automatica abilitata.

  7. Determina il livello di registrazione appropriato per le tue chiavi. AWS KMS Poiché le chiamate a AWS KMS, compresi gli eventi di sola lettura, vengono registrate, i CloudTrail registri associati possono diventare voluminosi. AWS KMS

    • Alcune organizzazioni preferiscono separare l'attività di registrazione in un percorso separato. AWS KMS Per maggiori dettagli, consulta la CloudTrail sezione Registrazione delle AWS KMS API chiamate con della guida per gli sviluppatori. AWS KMS

Risorse

Documenti correlati:

Video correlati:

Esempi correlati: