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à.
Utilizzo della crittografia lato server con AWS KMS chiavi (SSE-KMS) nei bucket di directory
I controlli di sicurezza inclusi AWS KMS possono aiutarti a soddisfare i requisiti di conformità relativi alla crittografia. Puoi scegliere di configurare i bucket di directory per utilizzare la crittografia lato server con AWS Key Management Service (AWS KMS) chiavi (SSE-KMS) e utilizzare queste KMS chiavi per proteggere i dati nei bucket di directory Amazon S3. Per ulteriori informazioni su -, consulta. SSE KMS Utilizzo della crittografia lato server con chiavi (-) AWS KMS SSE KMS
Autorizzazioni
Per caricare o scaricare un oggetto crittografato con o AWS KMS key da Amazon S3, sono necessarie kms:GenerateDataKey
le kms:Decrypt
autorizzazioni sulla chiave. Per ulteriori informazioni, consulta Consentire agli utenti chiave di utilizzare una KMS chiave per operazioni crittografiche nella Guida per gli AWS Key Management Service sviluppatori. Per informazioni sulle AWS KMS autorizzazioni necessarie per i caricamenti in più parti, consulta. Caricamento API e autorizzazioni in più parti
Per ulteriori informazioni sui KMS tasti per SSE -KMS, consulta. Specificare la crittografia lato server con AWS KMS (-) SSE KMS
Argomenti
- AWS KMS keys
- Utilizzo di SSE - KMS per operazioni su più account
- Chiavi bucket Amazon S3
- Richiede - SSE KMS
- Contesto di crittografia
- Invio di richieste per oggetti AWS KMS crittografati
- ControlloSSE: KMS crittografia nei bucket di directory
- Specificazione della crittografia lato server con AWS KMS (SSE-KMS) per il caricamento di nuovi oggetti nei bucket di directory
AWS KMS keys
La tua SSE KMS configurazione può supportare solo 1 chiave gestita dal cliente per bucket di directory per tutta la durata del bucket. Il Chiave gestita da AWS(aws/s3
) non è supportato. Inoltre, dopo aver specificato una chiave gestita dal cliente per SSE -KMS, non è possibile sostituire la chiave gestita dal cliente per la configurazione del SSE bucket. KMS
È possibile identificare la chiave gestita dal cliente specificata per la KMS configurazione del bucket nel modo seguenteSSE:
Fai una richiesta
HeadObject
API operativa per trovare il valore dix-amz-server-side-encryption-aws-kms-key-id
nella tua risposta.
Per utilizzare una nuova chiave gestita dal cliente per i tuoi dati, ti consigliamo di copiare gli oggetti esistenti in un nuovo bucket di directory con una nuova chiave gestita dal cliente.
Quando specifichi una chiave gestita AWS KMS dal cliente per la crittografia nel tuo bucket di directory, usa solo l'ID o la chiave della chiave. ARN Il formato dell'alias della KMS chiave non è supportato.
Per ulteriori informazioni sulle KMS chiavi per SSE -KMS, consultaAWS KMS keys.
Utilizzo di SSE - KMS per operazioni su più account
Quando utilizzate la crittografia per le operazioni tra account nei bucket di directory, tenete presente quanto segue:
-
Se desideri concedere l'accesso a più account ai tuoi oggetti S3, configura una politica di chiave gestita dal cliente per consentire l'accesso da un altro account.
-
Per specificare una chiave gestita dal cliente, devi utilizzare una chiave completamente qualificataKMS. ARN
Chiavi bucket Amazon S3
Le chiavi S3 Bucket sono sempre abilitate per GET
PUT
tutte le operazioni in un bucket di directory e non possono essere disabilitate. Le S3 Bucket Keys non sono supportate, quando copiSSE: oggetti KMS crittografati da bucket generici a bucket di directory, da bucket di directory a bucket generici o tra bucket di directory, tramite CopyObject, UploadPartCopy, il Copy operazione in Batch Operations, oppure import lavori. In questo caso, Amazon S3 effettua una chiamata AWS KMS ogni volta che viene effettuata una richiesta di copia per un oggetto KMS crittografato.
Per le APIoperazioni sugli endpoint zonali (a livello di oggetto), ad eccezione di CopyObjecte UploadPartCopy, autentichi e autorizzi le richieste tramite CreateSessionper una bassa latenza. Si consiglia che la crittografia predefinita del bucket utilizzi la configurazione di crittografia desiderata e di non sovrascrivere la crittografia predefinita del bucket nelle richieste o nelle CreateSession
richieste di oggetti. PUT
Quindi, i nuovi oggetti vengono crittografati automaticamente con le impostazioni di crittografia desiderate. Per crittografare nuovi oggetti in un bucket di directory con SSE -KMS, è necessario specificare SSE - KMS come configurazione di crittografia predefinita del bucket di directory con una KMS chiave (in particolare, una chiave gestita dal cliente). Quindi, quando viene creata una sessione per API le operazioni degli endpoint zonali, i nuovi oggetti vengono automaticamente crittografati e decrittografati con SSE - KMS e S3 Bucket Keys durante la sessione. Per ulteriori informazioni sui comportamenti di sovrascrittura della crittografia nei bucket di directory, consulta Specificazione della crittografia lato server con per il caricamento di nuovi oggetti. AWS KMS
Le S3 Bucket Key vengono utilizzate per un periodo di tempo limitato all'interno di Amazon S3, riducendo ulteriormente la necessità per Amazon S3 di effettuare richieste per completare le operazioni di crittografia. AWS KMS Per ulteriori informazioni sull'uso di S3 Bucket Keys, consulta e. Chiavi bucket Amazon S3 Riduzione del costo di SSE - KMS con Amazon S3 Bucket Keys
Richiede - SSE KMS
Per richiedereSSE, KMS tra tutti gli oggetti in un particolare bucket di directory, puoi utilizzare una policy relativa ai bucket. Ad esempio, quando utilizzi l'CreateSession
APIoperazione per concedere l'autorizzazione a caricare un nuovo oggetto (PutObject
, eCreateMultipartUpload
)CopyObject
, la seguente politica del bucket nega l'autorizzazione di caricamento dell'oggetto (s3express:CreateSession
) a tutti se la CreateSession
richiesta non include un'x-amz-server-side-encryption-aws-kms-key-id
intestazione che richiede -. SSE KMS
{ "Version":"2012-10-17", "Id":"UploadObjectPolicy", "Statement":[{ "Sid":"DenyObjectsThatAreNotSSEKMS", "Effect":"Deny", "Principal":"*", "Action":"s3express:CreateSession", "Resource":"arn:aws:s3express:
region
:account-id
:bucket/bucket-base-name
--zone-id
--x-s3/*", "Condition":{ "Null":{ "s3express:x-amz-server-side-encryption-aws-kms-key-id":"true" } } } ] }
Per richiedere che un particolare AWS KMS key venga utilizzato per crittografare gli oggetti in un bucket, puoi usare la chiave condition. s3express:x-amz-server-side-encryption-aws-kms-key-id
Per specificare la KMS chiave, devi utilizzare una chiave Amazon Resource Name (ARN) nel arn:aws:kms:
formato. AWS Identity and Access Management non convalida se la stringa for region
:acct-id
:key/key-id
s3express:x-amz-server-side-encryption-aws-kms-key-id
esiste. L'ID della AWS KMS chiave utilizzato da Amazon S3 per la crittografia degli oggetti deve corrispondere all'ID della AWS KMS chiave nella policy, altrimenti Amazon S3 nega la richiesta.
Per ulteriori informazioni sull'usoSSE, per il caricamento di nuovi oggetti, consulta. KMS Specificazione della crittografia lato server con AWS KMS (SSE-KMS) per il caricamento di nuovi oggetti nei bucket di directory
Per un elenco completo delle chiavi di condizione specifiche per i bucket di directory, consulta. Autorizzazione dell'endpoint APIs regionale con IAM
Contesto di crittografia
Per i bucket di directory, un contesto di crittografia è un insieme di coppie chiave-valore che contiene informazioni contestuali sui dati. Un valore di contesto di crittografia aggiuntivo non è supportato. Per ulteriori informazioni sul contesto di crittografia, consulta Contesto di crittografia.
Per impostazione predefinita, se utilizzi SSE - KMS su un bucket di directory, Amazon S3 utilizza il bucket Amazon Resource Name ARN () come coppia di contesti di crittografia:
arn:aws:s3express:
region
:account-id
:bucket/bucket-base-name
--zone-id
--x-s3
Assicurati che IAM le tue policy o le tue policy AWS KMS chiave utilizzino il bucket ARN come contesto di crittografia.
Facoltativamente, puoi fornire una coppia di contesti di crittografia esplicita utilizzando l'x-amz-server-side-encryption-context
intestazione in una richiesta di endpoint API Zonal, ad esempio. CreateSession Il valore di questa intestazione è una stringa con codifica Base64 con codifica UTF -8, che contiene il contesto di crittografia come coppie chiave-valore. JSON Per i bucket di directory, il contesto di crittografia deve corrispondere al contesto di crittografia predefinito, il bucket Amazon Resource Name ()ARN. Inoltre, poiché il contesto di crittografia non è crittografato, assicurati che non includa informazioni sensibili.
È possibile utilizzare il contesto di crittografia per identificare e categorizzare le operazioni di crittografia. È inoltre possibile utilizzare il ARN valore del contesto di crittografia predefinito per tenere traccia delle richieste pertinenti AWS CloudTrail visualizzando quale bucket di directory ARN è stato utilizzato con quale chiave di crittografia.
Nel requestParameters
campo di un file di CloudTrail registro, se si utilizza SSE - KMS su un bucket di directory, il valore del contesto di crittografia è il valore ARN del bucket.
"encryptionContext": { "aws:s3express:arn": "arn:aws:s3:::
arn:aws:s3express:
" }region
:account-id
:bucket/bucket-base-name
--zone-id
--x-s3
Inoltre, per la crittografia degli oggetti con SSE - KMS in un bucket di directory, AWS KMS CloudTrail gli eventi registrano il bucket ARN anziché l'oggetto. ARN
Invio di richieste per oggetti AWS KMS crittografati
È possibile accedere ai bucket di directory solo tramite HTTPS (TLS). Inoltre, i bucket di directory firmano le richieste utilizzando AWS Signature Version 4 (SigV4). Per ulteriori informazioni sull'invio di richieste di oggetti AWS KMS crittografati, vedere. Invio di richieste per oggetti crittografati AWS KMS
Se l'oggetto utilizza SSE -KMS, non inviare intestazioni di richieste di crittografia per GET
richieste e HEAD
richieste. Altrimenti, riceverai un errore HTTP400 Bad Request
.
ControlloSSE: KMS crittografia nei bucket di directory
Per verificare l'utilizzo delle AWS KMS chiavi per i dati KMS crittografati, è possibile utilizzare AWS CloudTrail i log. SSE Puoi ottenere informazioni dettagliate sulle tue operazioni crittografiche, ad esempio GenerateDataKey e Decrypt. CloudTrail supporta numerosi valori di attributo per filtrare la ricerca, tra cui il nome dell'evento, il nome utente e l'origine dell'evento.