Funzionalità di AWS Key Management Service
Panoramica
Il Servizio AWS di gestione delle chiavi (AWS KMS) offre funzionalità di controllo delle chiavi di crittografia utilizzate per proteggere i dati. AWS KMS fornisce un controllo centralizzato sul ciclo di vita e sulle autorizzazioni delle chiavi. È possibile creare nuove chiavi in base alle proprie esigenze e controllare chi può gestire le chiavi in modo separato rispetto a chi può utilizzarle. Il servizio è integrato in altri servizi AWS e questo facilita la crittografia dei dati archiviati in questi servizi e il controllo dell'accesso alle chiavi di decrittografia. AWS KMS è anche integrato con AWS CloudTrail e ciò consente di monitorare chi ha utilizzato quali chiavi, su quali risorse e quando. AWS KMS consente agli sviluppatori di aggiungere più facilmente la funzionalità di crittografia o firma digitale al codice dell'applicazione direttamente o utilizzando AWS SDK. SDK di crittografia AWS supporta AWS KMS come provider di chiavi per gli sviluppatori che devono crittografare/decrittografare i dati localmente all'interno delle loro applicazioni.
Funzionalità principali
Apri tuttoSe hai abilitato AWS CloudTrail per l'account AWS, ogni richiesta effettuata ad AWS KMS viene registrata in un file di log. Questo file di log viene consegnato al bucket Amazon Simple Storage Service (Amazon S3) specificato quando è stato abilitato AWS CloudTrail. Le informazioni registrate includono i dettagli relativi a utente, ora, data, operazione API e chiave utilizzata, laddove rilevante.
AWS KMS è un servizio completamente gestito. Se fai ampio uso della funzionalità di crittografia, il servizio ridimensiona automaticamente le risorse in base alle tue esigenze. Consente di gestire decine di migliaia di chiavi KMS nel tuo account e di usarle in qualsiasi momento. Stabilisce dei limiti predefiniti per il numero di chiavi e la frequenza di richieste, ma possono essere aumentati in caso di necessità.
Le chiavi KMS create o quelle create per conto tuo da altri servizi AWS non possono essere esportate dal servizio. AWS KMS si assume quindi la responsabilità della loro durabilità. Per garantire la costante disponibilità delle chiavi e dei dati, AWS KMS memorizza più copie delle versioni crittografate delle chiavi in sistemi caratterizzati da una durabilità pari al 99,999999999%.
Per dati crittografati o flussi di lavoro di firma digitale che si spostano tra le regioni (ripristino di emergenza, architetture ad alta disponibilità multi-regione, tabelle globali DynamoDB e firme digitali coerenti distribuite a livello globale), è possibile creare chiavi multi-regione KMS. Le chiavi multi-regione di KMS sono un insieme di chiavi interoperabili con lo stesso materiale chiave e gli stessi ID chiave che possono essere replicati in più regioni.
AWS KMS è progettato per essere un servizio a disponibilità elevata con un endpoint API regionale. Dal momento che la maggior parte dei servizi AWS utilizza AWS KMS per i servizi di crittografia e decrittografia, questo è strutturato in modo da fornire un livello di disponibilità. Questa disponibilità supporta il resto di AWS e si basa sull'Accordo sul livello di servizio (SLA) di AWS KMS.
AWS KMS è progettato in modo che nessuno, nemmeno i dipendenti di AWS, possa ottenere dal servizio le chiavi non crittografate. Il servizio utilizza moduli di sicurezza hardware che vengono continuamente convalidati nel Programma di convalida dei moduli crittografici FIPS 140-3 dell'U.S. National Institute of Standards and Technology per proteggere la riservatezza e l'integrità delle chiavi. Gli HSM di AWS KMS sono la radice crittografica della fiducia per proteggere le chiavi KMS. Creano un limite sicuro protetto dall'hardware per tutte le operazioni di crittografia che avvengono in KMS. Tutto il materiale chiave per le chiavi KMS generate negli HSM di AWS KMS e tutte le operazioni che richiedono materiale chiave KMS decrittografato avvengono rigorosamente entro i limiti del livello di sicurezza FIPS 140-3 di livello 3 di questi HSM. Gli aggiornamenti del firmware degli HSM di AWS KMS sono controllati da un sistema di controllo degli accessi multiparte che viene verificato e controllato da un gruppo indipendente all'interno di Amazon. Secondo i requisiti FIPS 140, tutte le modifiche al firmware vengono inviate a un laboratorio accreditato dal NIST per la convalida in conformità al livello di sicurezza 3 di FIPS 140-3.
Le chiavi non crittografate non vengono mai scritte su disco e vengono utilizzate solo nella memoria volatile dei moduli HSM per l'intervallo di tempo strettamente necessario per eseguire l'operazione di crittografia richiesta. Ciò è vero indipendentemente dal fatto che tu richieda a AWS KMS di creare chiavi per tuo conto, importarle nel servizio o crearle in un cluster AWS CloudHSM utilizzando la funzionalità di archivio delle chiavi personalizzate. Puoi scegliere se creare chiavi regionali singole o multiregionali. Le chiavi regionali singole non sono mai trasmesse al di fuori della Regione AWS in cui sono state create e possono essere utilizzate esclusivamente in tale regione.
Per ulteriori informazioni sulla struttura di AWS KMS e sulla crittografia utilizzata per proteggere le chiavi, consulta il whitepaper Dettagli di crittografia di AWS KMS.
* Nella regione AWS Cina (Pechino), gestita da Beijing Sinnet Technology Co., Ltd. ("Sinnet") Sinnet, e nella regione AWS Cina (Ningxia), gestita da Ningxia Western Cloud Data Technology Co., Ltd. ("NWCD") NWCD, gli HSM sono approvati dal governo cinese (non conformi allo standard FIPS 140-3) e il whitepaper sopra menzionato non è applicabile.
AWS KMS permette di creare e utilizzare chiavi KMS asimmetriche e coppie di chiavi di dati. È possibile definire una chiave KMS da utilizzare come coppia di chiavi di firma, come coppia di chiavi di crittografia o coppia di chiavi di negoziazione. La generazione di coppie di chiavi e le operazioni di crittografia asimmetrica che utilizzano queste chiavi KMS vengono eseguite all'interno degli HSM. Puoi richiedere la parte pubblica della chiave KMS asimmetrica per l'utilizzo nelle applicazioni locali, mentre la parte privata non esce mai il servizio. È possibile importare la parte privata di una chiave asimmetrica dalla propria infrastruttura di gestione delle chiavi.
È inoltre possibile richiedere al servizio di generare una coppia di chiavi dati asimmetriche. Questa operazione restituisce una copia in chiaro della chiave pubblica e della chiave privata, nonché una copia della chiave privata crittografata con una chiave KMS simmetrica specifica. È possibile utilizzare la chiave pubblica o privata in chiaro nell'applicazione locale e memorizzare la copia crittografata della chiave privata per un uso futuro.
* Le chiavi asimmetriche non sono supportate con gli archivi chiavi personalizzati.
Puoi generare e verificare il codice di autenticazione dei messaggi basato su hash (HMAC) dall'interno degli HSM con convalida FIPS 140-3 di AWS KMS. Gli HMAC sono un blocco crittografico che incorpora il materiale della chiave segreta all'interno di una funzione hash per creare un codice di autenticazione del messaggio con chiave univoco. Le chiavi KMS HMAC offrono un vantaggio rispetto alle HMAC del software applicativo perché il materiale delle chiavi viene generato e utilizzato interamente all'interno di AWS KMS. Sono inoltre soggette ai controlli di accesso impostati sulla chiave. Le chiavi KMS HMAC e gli algoritmi HMAC utilizzati da AWS KMS sono conformi agli standard di settore definiti in RFC 2104. Le chiavi KMS HMAC vengono generate nei moduli di sicurezza hardware di AWS KMS certificati nell'ambito del Programma di convalida dei moduli crittografici FIPS 140-3 e non lasciano mai AWS KMS non crittografate. Inoltre, puoi importare la chiave HMAC dall'infrastruttura di gestione delle chiavi.
*Le chiavi HMAC di AWS KMS non sono supportate negli archivi chiavi personalizzati.
**FIPS 140-3 non si applica al servizio AWS KMS nella regione AWS Cina (Pechino), gestita da Sinnet, e nella regione AWS Cina (Ningxia), gestita da NWCD. L'utilizzo degli HSM nelle regioni della Cina è invece approvato dal governo cinese.
- Report AWS System and Organization Controls (SOC) (SOC 1, SOC 2 e SOC 3). Puoi scaricare una copia di questi report da AWS Artifact.
- Cloud Computing Compliance Controls Catalog (C5). Scopri di più sullo schema di attestazione C5 sostenuto dal governo tedesco.
- Payment Card Industry Data Security Standard (PCI DSS) Livello 1. Scopri di più sui servizi conformi a PCI DSS in AWS con le domande frequenti su PCI DSS.
- Federal Information Processing Standards (FIPS) 140-3. Il modulo crittografico AWS KMS è convalidato secondo il livello di sicurezza FIPS 140-3 3 dall' U.S. National Institute of Standards and Technology (NIST). Scopri di più visualizzando il certificato FIPS 140-3 per gli HSM di AWS KMS e la relativa policy di sicurezza.
- Federal Risk and Authorization Management Program (FedRAMP). Scopri di più sulla conformità AWS FedRAMP consultando la pagina sulla conformità FedRAMP.
- Health Insurance Portability and Accountability Act (HIPAA). Scopri di più consultando la pagina Web sulla conformità HIPAA.
I controlli di sicurezza e qualità in AWS KMS sono stati convalidati e certificati in base ai seguenti standard di conformità:
AWS KMS viene convalidato e certificato rispetto ad altri standard di conformità riportati qui.
* FIPS 140-3 non si applica al servizio AWS KMS nella regione AWS Cina (Pechino), gestita da Sinnet, e nella regione AWS Cina (Ningxia), gestita da NWCD. L'utilizzo di moduli di sicurezza hardware (HSM, Hardware Security Module) nelle regioni della Cina è invece approvato dal governo cinese.
Gli archivi chiavi personalizzati combinano l'interfaccia di gestione delle chiavi comoda e completa di AWS KMS con la possibilità di possedere e controllare i dispositivi in cui si verificano le operazioni relative al materiale delle chiavi e alla crittografia. Di conseguenza, ti assumi maggiori responsabilità per la disponibilità e la durabilità delle chiavi crittografiche e per il funzionamento degli HSM. AWS KMS offre due tipi di archivi chiavi personalizzati:
Archivio chiavi supportato da CloudHSM
Puoi creare una chiave KMS in un archivio chiavi personalizzati di AWS CloudHSM, in cui tutte le chiavi sono generate e archiviate in un cluster AWS CloudHSM di tua proprietà e da te gestito. Quando utilizzi una chiave KMS in un archivio chiavi personalizzati, le operazioni di crittografia mediante quella chiave vengono effettuate esclusivamente nel cluster AWS CloudHSM.
L'utilizzo di un archivio chiavi personalizzati prevede il costo aggiuntivo del cluster AWS CloudHSM e ti rende responsabile della disponibilità del materiale della chiave in quel cluster. Per sapere se la funzionalità di archivi chiavi personalizzati può rappresentare una buona soluzione per i tuoi requisiti, puoi leggere questo blog.
Archivio chiavi esterno
Se hai la necessità normativa di archiviare e utilizzare le chiavi di crittografia on-premises o al di fuori del Cloud AWS, puoi creare una chiave KMS in un archivio chiavi esterno AWS KMS (XKS), in cui tutte le chiavi vengono generate e archiviate in un sistema di gestione esterno ad AWS, controllato e gestito direttamente da te. Quando si utilizza un XKS, il materiale delle chiavi non lascia mai l'HSM.
A differenza delle chiavi KMS standard o di una chiave in un archivio chiavi personalizzato CloudHSM, la responsabilità di durabilità, disponibilità, latenza, prestazioni e sicurezza del materiale delle chiavi e delle operazioni di crittografia delle chiavi esterne quando utilizzi un archivio chiavi esterno ricade su di te. Le prestazioni e la disponibilità delle operazioni KMS possono essere influenzate dall'hardware, dal software o dai componenti di rete dell'infrastruttura XKS che utilizzi. Per ulteriori informazioni su XKS, consulta questo blog di AWS News.
*Gli archivi chiavi personalizzati non sono disponibili nella regione AWS Cina (Pechino), gestita da Sinnet, e nella regione AWS Cina (Ningxia), gestita da NWCD.
**Gli archivi chiavi personalizzati non sono disponibili per chiavi KMS.
***CodeArtifact non supporta le chiavi KMS in un XKS.
- L'SDK di crittografia AWS è una libreria di crittografia generica per l'implementazione di operazioni di crittografia e decrittografia su tutti i tipi di dati.
- L'SDK per la crittografia del database AWS è una libreria di crittografia che aiuta a proteggere i dati sensibili archiviati nel database e fornisce funzionalità aggiuntive per la ricerca e l'interrogazione su dati crittografati.
- Il client di crittografia di Amazon S3 è una libreria di crittografia per crittografare e decrittografare gli oggetti archiviati nel bucket S3.
Puoi utilizzare AWS KMS con librerie di crittografia lato client per proteggere i dati direttamente all'interno della tua applicazione su AWS o in ambienti ibridi e multi-cloud. Puoi utilizzare queste librerie per crittografare i dati prima di archiviarli nei servizi AWS o in qualsiasi altro supporto di storage e servizi di terze parti che desideri. Queste librerie sono progettate per aiutarti a crittografare e decrittografare i dati utilizzando gli standard e le best practice di settore. Le librerie di crittografia permettono di concentrarsi sulle funzionalità di base dell'applicazione anziché su come crittografare e decrittografare i dati.
Per ulteriori informazioni, consulta la documentazione di AWS Crypto Tools.
Sebbene i computer quantistici su larga scala non siano ancora disponibili al pubblico, la creazione di un computer quantistico sufficientemente potente accelererebbe la risoluzione degli schemi che oggi utilizziamo negli algoritmi crittografici a chiave pubblica per proteggere i nostri dati. AWS è già al lavoro e si sta preparando per un mondo post-quantistico. Il Servizio AWS di gestione delle chiavi (AWS KMS) supporta la crittografia post-quantistica in due modi: connessioni TLS (Transport Layer Security) post-quantistiche per AWS KMS e firme post-quantistiche. Per proteggere le connessioni di endpoint TLS a KMS, viene utilizzato ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism), un meccanismo di incapsulamento della chiave. Per le firme digitali, AWS KMS supporta FIPS 204 ML-DSA (Module-Lattice Digital Signature Standard), un algoritmo di resistenza quantistica progettato per aiutare le organizzazioni a contrastare nuove minacce legate al calcolo quantistico delle firme digitali. Entrambi gli algoritmi sono standardizzati dal NIST per proteggere le informazioni sensibili anche in futuro prevedibile, compreso il periodo successivo all'avvento di computer quantistici in grado di compromettere la crittografia attuale.
Integrazione con i servizi AWS
AWS KMS si integra con i servizi AWS per crittografare i dati a riposo o per facilitare la firma e la verifica utilizzando una chiave AWS KMS. Per proteggere i dati a riposo, i servizi AWS integrati utilizzano la crittografia a busta, in cui una chiave di dati viene utilizzata per crittografare i dati ed è essa stessa crittografata in una chiave KMS archiviata in AWS KMS. Per la firma e la verifica, i servizi AWS integrati utilizzano le chiavi RSA o ECC KMS asimmetriche in AWS KMS. Per ulteriori informazioni su come un servizio integrato utilizza AWS KMS, consulta la documentazione del servizio AWS.
Tabella di integrazione dei servizi
|
|
Nomi dei servizi
|
Nomi dei servizi
|
Nomi dei servizi
|
Nomi dei servizi
|
Nomi dei servizi
|
|---|---|---|---|---|---|
|
Integrazione dei servizi
|
Alexa for Business[1]
|
Amazon EMR
|
Flusso di lavoro gestito da Amazon per Apache Airflow (Amazon MWAA)
|
Amazon WorkSpaces Secure Browser
|
AWS GameLift
|
- [1] Supporta solo chiavi gestite da AWS.
- [2] AWS KMS supporta archivi chiavi personalizzati gestiti da un cluster AWS CloudHSM.
- [3] Per un elenco dei servizi integrati con AWS KMS nella regione AWS Cina (Pechino), gestita da Sinnet, e nella regione AWS Cina (Ningxia), gestita da NWCD, visita la sezione Integrazione del servizio AWS KMS in Cina.
I servizi AWS non elencati sopra crittografano i dati degli utenti utilizzando chiavi che il rispettivo servizio possiede e gestisce.