Configurazione di una chiave bucket S3 a livello di oggetto utilizzando REST API, gli SDK AWS o AWS CLI
Quando esegui un'operazione PUT o COPY utilizzando REST API, gli SDK AWS o AWS CLI, puoi abilitare o disabilitare una chiave bucket S3 a livello di oggetto. Le chiavi bucket S3 riducono il costo della crittografia lato server utilizzando AWS Key Management Service (AWS KMS) (SSE-KMS) riducendo il traffico delle richieste da Amazon S3 a AWS KMS. Per ulteriori informazioni, consulta Riduzione del costo di SSE-KMS con le chiavi bucket Amazon S3.
Quando configuri una chiave bucket S3 per un oggetto utilizzando un'operazione PUT o COPY, Amazon S3 aggiorna le impostazioni solo per quell'oggetto. Le impostazioni della chiave bucket S3 per il bucket di destinazione non cambiano. Se non specifichi una chiave bucket S3 per il tuo oggetto, Amazon S3 applica le impostazioni della chiave bucket S3 per il bucket di destinazione all'oggetto.
Prerequisito
Prima di configurare l'oggetto per utilizzare una chiave bucket S3, consulta Modifiche alla nota prima dell'abilitazione di una chiave bucket S3.
Argomenti
Operazioni in Batch Amazon S3
Per crittografare gli oggetti Amazon S3 esistenti, puoi utilizzare le operazioni in batch di Amazon S3. Fornisci alle operazioni in batch S3 un elenco di oggetti da utilizzare e le operazioni in batch chiamano la rispettiva API per eseguire l'operazione specifica. Puoi utilizzare l'operazione di copia delle operazioni in batch S3 per copiare gli oggetti non crittografati esistenti e scriverli nello stesso bucket degli oggetti crittografati. Un solo processo di operazioni in batch può eseguire l'operazione specificata su miliardi di oggetti. Per ulteriori informazioni, consulta Esecuzione di operazioni in batch su larga scala su oggetti Amazon S3 e Crittografia di oggetti con le operazioni in batch di Amazon S3
Utilizzo di REST API
Quando utilizzi SSE-KMS, puoi abilitare una chiave bucket S3 per un oggetto utilizzando le seguenti API:
-
PutObject: quando carichi un oggetto, puoi specificare l'intestazione della richiesta
x-amz-server-side-encryption-bucket-key-enabled
in modo da abilitare o disabilitare una chiave bucket S3 a livello di oggetto. -
CopyObject: quando copi un oggetto e configuri SSE-KMS, puoi specificare l'intestazione della richiesta
x-amz-server-side-encryption-bucket-key-enabled
in modo da abilitare o disabilitare una chiave bucket S3 per l'oggetto. -
PostObject: quando esegui un'operazione POST per caricare un oggetto e configurare SSE-KMS, puoi utilizzare il campo del modulo
x-amz-server-side-encryption-bucket-key-enabled
per abilitare o disabilitare una chiave bucket S3 per l'oggetto. CreateMutliPartUpload: quando carichi oggetti di grandi dimensioni tramite l'API di caricamento in più parti e configuri SSE-KMS, puoi utilizzare l'intestazione della richiesta
x-amz-server-side-encryption-bucket-key-enabled
per abilitare o disabilitare una chiave del bucket S3 per l'oggetto.
Per abilitare una chiave bucket S3 a livello di oggetto, dovrai includere l'intestazione della richiesta x-amz-server-side-encryption-bucket-key-enabled
. Per ulteriori informazioni su SSE-KMS e REST API, consulta la sezione Utilizzo di REST API.
Utilizzo dell'SDK AWS per Java (PutObject)
Il seguente esempio può essere utilizzato per configurare una chiave bucket S3 a livello di oggetto utilizzando AWS SDK for Java.
Utilizzo della AWS CLI (PutObject)
Puoi utilizzare il seguente esempio sulla AWS CLI per configurare una chiave bucket S3 a livello di oggetto come parte di una richiesta PutObject
.
aws s3api put-object --bucket <bucket name> --key <object key name> --server-side-encryption aws:kms --bucket-key-enabled --body <filepath>