Come faccio a crittografare una cartella specifica nel mio bucket Amazon S3 utilizzando AWS KMS?

3 minuti di lettura
0

Voglio crittografare una cartella specifica nel mio bucket Amazon Simple Storage Service (Amazon S3) con una chiave del Servizio di gestione delle chiavi AWS (AWS KMS).

Risoluzione

Apri la console Amazon S3

  1. Apri la console Amazon S3.
  2. Accedi alla cartella che vuoi crittografare.
    Avvertenza: Se la cartella contiene un numero elevato di oggetti, è possibile che si verifichi un errore di limitazione. Per evitare errori di limitazione, aumenta i limiti di richieste Amazon S3 sul tuo bucket Amazon S3. Per ulteriori suggerimenti sulla risoluzione degli errori di limitazione, consulta Perché ricevo l'errore ThrottlingExceptions quando invio richieste ad AWS KMS?
  3. Seleziona la cartella, quindi scegli Azioni.
  4. Scegli Modifica crittografia lato server.
  5. Per Abilitare la crittografia lato server, scegli Abilita.
  6. Scegli Tipo di chiave di crittografia per la tua chiave Servizio di gestione delle chiavi AWS (SSE-KMS).
  7. Seleziona la chiave AWS KMS che vuoi utilizzare per la crittografia delle cartelle.
    Nota: La chiave denominata aws/s3 è una chiave predefinita gestita da AWS KMS. È possibile crittografare la cartella con la chiave predefinita o con una chiave personalizzata.
  8. Scegli Salva modifiche.

Usa AWS CLI

Non è possibile modificare la crittografia di una cartella esistente tramite un comando dell'Interfaccia della linea di comando AWS (AWS CLI). È possibile invece eseguire un comando che copia la cartella su se stessa con la crittografia AWS KMS abilitata.

Nota: Se ricevi messaggi di errore durante l'esecuzione dei comandi AWS CLI, assicurati di utilizzare la versione più recente di AWS CLI.

Per crittografare i file con la chiave AWS KMS predefinita (aws/s3), esegui il seguente comando:

aws s3 cp s3://awsexamplebucket/abc s3://awsexamplebucket/abc --recursive --sse aws:kms

Questa sintassi di comando copia la cartella su se stessa con la crittografia AWS KMS.

Per crittografare i file utilizzando una chiave AWS KMS personalizzata, esegui il seguente comando:

aws s3 cp s3://awsexamplebucket/abc s3://awsexamplebucket/abc --recursive --sse aws:kms --sse-kms-key-id a1b2c3d4-e5f6-7890-g1h2-123456789abc

Nota: Sostituisci --sse-kms-key-id con il tuo ID chiave.

Richiedi che i caricamenti futuri crittografino gli oggetti con AWS KMS

Dopo aver modificato la crittografia, vengono crittografati solo gli oggetti già presenti nella cartella. È possibile caricare oggetti dopo questa modifica senza crittografia. Per richiedere che i caricamenti futuri crittografino gli oggetti con AWS KMS, utilizza una bucket policy come nell'esempio seguente:

{
  "Version": "2012-10-17",
  "Id": "PutObjPolicy",
  "Statement": [
    {
      "Sid": "DenyIncorrectEncryptionHeader",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::awsexamplebucket/awsexamplefolder/*",
      "Condition": {
        "StringNotEquals": {
          "s3:x-amz-server-side-encryption": "aws:kms"
        }
      }
    },
    {
      "Sid": "DenyUnEncryptedObjectUploads",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::awsexamplebucket/awsexamplefolder/*",
      "Condition": {
        "Null": {
          "s3:x-amz-server-side-encryption": true
        }
      }
    }
  ]
}

Questa policy dei bucket nega l'accesso a s3:PutObject su docexamplebucket/docexamplefolder/* a meno che la richiesta non includa la crittografia lato server con AWS KMS.

Informazioni correlate

Usare la crittografia lato server con chiavi AWS KMS (SSE-KMS)

AWS UFFICIALE
AWS UFFICIALEAggiornata 6 mesi fa