View a markdown version of this page

Crittografia delle risorse Neptune inattive - Amazon Neptune

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à.

Crittografia delle risorse Neptune inattive

Data-at-rest la crittografia è la raccomandazione. AWS Per ulteriori informazioni, vedere Data-at-Rest and Data-in-Transit encryption. La crittografia viene applicata nella AWS console quando si crea un nuovo Neptune DB Cluster o un nuovo Neptune Global DB. Ciò fornisce un ulteriore livello di protezione dei dati. Protegge i dati dall'accesso non autorizzato allo storage sottostante e aiuta a soddisfare i requisiti di conformità per la crittografia dei dati inattivi.

Per gestire le chiavi utilizzate per crittografare e decrittografare le tue risorse Neptune, usi (). AWS Key Management ServiceAWS KMS AWS KMS combina hardware e software sicuri e ad alta disponibilità per fornire un sistema di gestione delle chiavi scalabile per il cloud. Utilizzando AWS KMS, è possibile creare chiavi di crittografia e definire le politiche che controllano il modo in cui queste chiavi possono essere utilizzate. AWS KMS supporta AWS CloudTrail, in modo da poter controllare l'utilizzo delle chiavi per verificare che le chiavi vengano utilizzate in modo appropriato.

A riposo, tutti i log, i backup e le istantanee correlati sono crittografati per qualsiasi cluster Neptune DB crittografato. La crittografia Neptune non si applica ai log esportati in Amazon. CloudWatch

Crittografia delle risorse Neptune

Quando crei un Neptune DB Cluster o un Neptune Global DB, puoi fornire l'identificatore della chiave per la tua AWS KMS chiave di crittografia. Se non specifichi un identificatore di AWS KMS chiave, Neptune utilizza la chiave di crittografia Amazon RDS predefinita () nella regione. aws/rds AWS KMS crea una chiave di crittografia predefinita per ogni regione del tuo account. AWS Per un cluster Neptune Global, ci saranno tante AWS KMS chiavi quante sono le regioni.

Dopo aver creato una risorsa Neptune, non puoi modificare la chiave di crittografia per quella risorsa. Quindi, assicuratevi di determinare i requisiti della chiave di crittografia prima di creare la risorsa Neptune. Se è richiesta una AWS KMS chiave diversa, puoi utilizzare un'istantanea del cluster Neptune DB esistente per crearne una nuova con una chiave diversa AWS KMS (vedi). Ripristino da una snapshot del cluster di database

Puoi utilizzare l'Amazon Resource Name (ARN) di una chiave di un altro account per crittografare una risorsa Neptune. Se crei una risorsa Neptune con lo stesso AWS account che possiede la chiave di AWS KMS crittografia, l'ID della chiave che passi può essere l' AWS KMS alias della chiave anziché l'ARN della AWS KMS chiave.

Importante

Se Neptune perde l'accesso alla chiave di crittografia per un Neptune DB Cluster, ad esempio quando viene revocato l'accesso di Neptune a una chiave, il cluster crittografato viene collocato in uno stato terminale e può essere ripristinato solo da un backup. Ti consigliamo vivamente di abilitare sempre i backup per i cluster Neptune DB crittografati per evitare la perdita di dati crittografati nei tuoi database.

Autorizzazioni chiave necessarie per abilitare la crittografia

L'utente o il ruolo IAM che crea un Neptune DB Cluster deve disporre almeno delle seguenti autorizzazioni per la chiave KMS:

  • "kms:Encrypt"

  • "kms:Decrypt"

  • "kms:GenerateDataKey"

  • "kms:ReEncryptTo"

  • "kms:GenerateDataKeyWithoutPlaintext"

  • "kms:CreateGrant"

  • "kms:ReEncryptFrom"

  • "kms:DescribeKey"

Ecco un esempio (per us-east-1 regione) di una policy chiave che include le autorizzazioni necessarie:

JSON
{ "Version":"2012-10-17", "Id": "key-consolepolicy-3", "Statement": [ { "Sid": "Enable Permissions for root principal", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:root" }, "Action": "kms:*", "Resource": "*" }, { "Sid": "Allow use of the key for Neptune", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/NeptuneFullAccess" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:GenerateDataKey", "kms:ReEncryptTo", "kms:GenerateDataKeyWithoutPlaintext", "kms:CreateGrant", "kms:ReEncryptFrom", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:ViaService": "rds.us-east-1.amazonaws.com" } } }, { "Sid": "Deny use of the key for non Neptune", "Effect": "Deny", "Principal": { "AWS": "arn:aws:iam::123456789012:role/NeptuneFullAccess" }, "Action": [ "kms:*" ], "Resource": "*", "Condition": { "StringNotEquals": { "kms:ViaService": "rds.us-east-1.amazonaws.com" } } } ] }
  • La prima istruzione di questa policy è facoltativa. Fornisce accesso al principale root dell'utente.

  • La seconda dichiarazione fornisce l'accesso a tutte le AWS KMS API richieste per questo ruolo, limitate all'RDS Service Principal.

  • La terza dichiarazione rafforza ulteriormente la sicurezza affermando che questa chiave non è utilizzabile da questo ruolo per nessun altro servizio. AWS

È anche possibile ridurre ulteriormente l'ambito delle autorizzazioni createGrant aggiungendo:

"Condition": { "Bool": { "kms:GrantIsForAWSResource": true } }

Limitazioni della crittografia Neptune

Esistono le seguenti limitazioni per Neptune Encryption:

  • Non è possibile convertire un cluster Neptune DB non crittografato in uno crittografato. È possibile abilitare la crittografia per un cluster Neptune DB solo quando viene creato. Tuttavia, è possibile ripristinare uno snapshot non crittografato di Neptune DB Cluster in un cluster Neptune DB crittografato. A tale scopo, specificate una chiave di crittografia KMS quando eseguite il ripristino dallo snapshot non crittografato di Neptune DB Cluster.

  • Per motivi di compatibilità, è ancora possibile creare un cluster Neptune DB non crittografato tramite la CLI e gli SDK. AWS La console consente solo la creazione di cluster Neptune DB crittografati.

  • Non è possibile combinare cluster Neptune DB crittografati e non crittografati nello stesso Neptune Global DB. O tutti i cluster sono crittografati o tutti i cluster non sono crittografati. Questo viene applicato nella configurazione Neptune Global DB.