Questo tutorial spiega i vari meccanismi di crittografia DynamoDB che è possibile utilizzare nel servizio Web Amazon. Oltre alle opzioni di crittografia di cui discuteremo, ti forniremo anche una guida passo-passo sull'impostazione della crittografia in DynamoDB.
Come funziona la crittografia DynamoDB
La potente funzione di crittografia DynamoDB aggiunge un livello di sicurezza per garantire che i tuoi dati rimangono inaccessibili a terzi o al personale non autorizzato. Comprendere come funziona la crittografia DynamoDB inizia con la conoscenza del tipo di dati o contenuti che è possibile crittografare.
Per il record, la crittografia DynamoDB supporta i dati a riposo e i dati nelle opzioni di trascrizione in transito. Ciò implica che è possibile utilizzarlo per la crittografia sul lato client e per la crittografia dei dati a riposo. In entrambi i casi, è necessario crittografare e firmare i dati prima di memorizzarli nel database.
Questa funzione fornisce ai tuoi dati una protezione end-to-end contro l'accesso non autorizzato o le modifiche da parte di un uomo-in-middle. Qualsiasi tabella crittografata in DynamoDB protegge tutti i dati tra cui la chiave primaria, indici secondari locali, indici secondari globali, flussi, backup, tabelle globali, ecc.
Come abilitare i dati DynamoDB a Rest Cryption
È importante notare che è necessario integrare un servizio di gestione delle chiavi (AWS KMS) per gestire i tuoi crittografia. In DynamoDB, è possibile utilizzare tre tipi di chiavi per crittografare i dati a riposo:
Per utilizzare uno di questi tipi di chiave per crittografare i dati DynamODB a riposo, è necessario specificare il tipo di chiavi e l'identificatore chiave quando si crea o aggiorni la tabella DynamoDB. È possibile utilizzare la console di gestione DynamoDB, la CLI AWS o l'API DynamoDB per specificare il tipo di chiavi e l'identificatore chiave.
È possibile impostare i dati DynamoDB a Rest Cryption utilizzando la CLI AWS utilizzando i seguenti passaggi:
Passo 1 - Crea una chiave KMS (Amazon Key Management Service) o utilizza una chiave esistente per crittografare i dati nella tabella DynamoDB. La chiave KMS viene utilizzata per crittografare e decrittografare i dati a riposo nella tabella DynamoDB.
Passo 2 - Crea una tabella DynamoDB e specifica il tipo di crittografia e la chiave KMS per i dati a Rest Cryption.
Passaggio 3 - Carica i dati nella tabella DynamoDB. I dati vengono crittografati automaticamente quando vengono scritti nella tabella.
Ecco un esempio su come creare una tabella DynamoDB con i dati a Rest Cryption usando la CLI AWS:
AWS DynamoDB Crea-table \In questo esempio, il Mytablename La tabella viene creata con i dati abilitati a Rest Cryption utilizzando la chiave KMS specificata dal Kms_key_arn parametro. I dati nella tabella vengono crittografati utilizzando il tasto KMS quando vengono scritti nella tabella e decrittografato quando viene letto.
È inoltre possibile abilitare i dati a riposo crittografia per una tabella DynamoDB esistente utilizzando il Tabella di aggiornamento comando:
AWS DynamoDB Update Table \Il comando precedente abilita i dati a riposo crittografia per il Mytablename tabella usando la chiave KMS specificata dal Kms_key_arn parametro.
È inoltre possibile abilitare la crittografia per una tabella nuova o esistente specificando il BillingMode COME Pay_per_request e impostando il Sspecificazione parametro a ABILITATO Quando si crea o si aggiorna la tabella. Una volta che la crittografia è abilitata, il sistema crittografa tutti i dati nella tabella. Inoltre, crittografa anche tutti i trasferimenti di dati tra la tabella e il client.
In particolare, i dati a Rest Encryption si applicano solo ai nuovi dati scritti nella tabella dopo che è abilitata. Il sistema non crittografa i dati esistenti nella tabella a meno che non si eseguisca una tabella e riscrivi i dati.
Conclusione
È importante notare che mentre i dati a riposo sono crittografati per impostazione predefinita, i dati in transito tra client e DynamoDB non sono crittografati a meno che non si abilita specificamente SSL/TLS. Per abilitare SSL/TLS, è possibile utilizzare il Https protocollo durante la domanda del dinamo. Puoi anche usare il Console di gestione AWS, IL AWS CLI, o uno qualsiasi dei AWS SDKS Per abilitare la crittografia per le tabelle DynamoDB.