

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Protection et chiffrement des données
<a name="s3-express-data-protection"></a>

 Pour plus d’informations sur la façon de configurer le chiffrement des compartiments de répertoires, consultez les rubriques suivantes.

**Topics**
+ [Chiffrement côté serveur](#s3-express-ecnryption)
+ [Configuration et surveillance du chiffrement par défaut pour les compartiments de répertoires](s3-express-bucket-encryption.md)
+ [Utilisation du chiffrement côté serveur avec des AWS KMS clés (SSE-KMS) dans des compartiments de répertoire](s3-express-UsingKMSEncryption.md)
+ [Chiffrement en transit](#s3-express-ecnryption-transit)
+ [Suppression de données](#s3-express-data-deletion)

## Chiffrement côté serveur
<a name="s3-express-ecnryption"></a>

Le chiffrement est configuré par défaut pour tous les compartiments de répertoires, et tous les nouveaux objets qui sont chargés dans les compartiments de répertoires sont automatiquement chiffrés au repos. Le chiffrement côté serveur avec des clés gérées par Amazon S3 (SSE-S3) est la configuration de chiffrement par défaut pour chaque compartiment de répertoires. Si vous souhaitez spécifier un autre type de chiffrement, vous pouvez utiliser le chiffrement côté serveur avec des clés AWS Key Management Service (AWS KMS) (SSE-KMS), en définissant la configuration de chiffrement par défaut du compartiment. Pour plus d’informations sur le chiffrement SSE-KMS dans les compartiments de répertoires, consultez [Utilisation du chiffrement côté serveur avec des AWS KMS clés (SSE-KMS) dans des compartiments de répertoire](s3-express-UsingKMSEncryption.md).

Nous recommandons que le chiffrement par défaut du compartiment utilise la configuration de chiffrement souhaitée et que vous ne remplaciez pas le chiffrement par défaut du compartiment dans vos demandes `CreateSession` ni dans vos demandes d’objets `PUT`. Les nouveaux objets seront ensuite automatiquement chiffrés avec les paramètres de chiffrement souhaités. Pour plus d'informations sur les comportements de remplacement du chiffrement dans les compartiments de répertoire, voir [Spécifier le chiffrement côté serveur avec AWS KMS pour](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html) les téléchargements de nouveaux objets.

Le chiffrement SSE-KMS avec les compartiments de répertoires diffère du chiffrement SSE-KMS dans les compartiments à usage général sur les points suivants.
+ Votre configuration SSE-KMS ne peut prendre en charge qu’une seule [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) par compartiment de répertoires pendant toute la durée de vie du compartiment. La [https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (`aws/s3`) n’est pas prise en charge. De même, après avoir spécifié une clé gérée par le client pour SSE-KMS, vous ne pouvez pas remplacer la clé gérée par le client pour la configuration SSE-KMS du compartiment.

  Vous pouvez identifier la clé gérée par le client que vous avez spécifiée pour la configuration SSE-KMS du compartiment de la manière suivante :
  + Effectuez une demande d’opération d’API `HeadObject` pour trouver la valeur de `x-amz-server-side-encryption-aws-kms-key-id` dans la réponse.

  Pour utiliser une nouvelle clé gérée par le client pour vos données, nous vous recommandons de copier vos objets existants dans un nouveau compartiment de répertoires avec une nouvelle clé gérée par le client.
+ Pour les [opérations d'API du point de terminaison zonal (au niveau de l'objet)](s3-express-differences.md#s3-express-differences-api-operations), à l'exception de [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), vous authentifiez et autorisez les demandes pour une faible latence. [CreateSession](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) Nous recommandons que le chiffrement par défaut du compartiment utilise la configuration de chiffrement souhaitée et que vous ne remplaciez pas le chiffrement par défaut du compartiment dans vos demandes `CreateSession` ni dans vos demandes d’objets `PUT`. Les nouveaux objets seront ensuite automatiquement chiffrés avec les paramètres de chiffrement souhaités. Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)). Ensuite, lorsqu’une session sera créée pour les opérations de l’API de point de terminaison zonal, les nouveaux objets seront automatiquement chiffrés et déchiffrés avec les clés SSE-KMS et les clés de compartiment S3 pendant la session. Pour plus d'informations sur les comportements de remplacement du chiffrement dans les compartiments de répertoire, voir [Spécifier le chiffrement côté serveur avec AWS KMS pour](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html) les téléchargements de nouveaux objets.

  Dans les appels d'API du point de terminaison zonal (sauf [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)), vous ne pouvez pas remplacer les valeurs des paramètres de chiffrement (`x-amz-server-side-encryption`, `x-amz-server-side-encryption-aws-kms-key-id``x-amz-server-side-encryption-context`, et`x-amz-server-side-encryption-bucket-key-enabled`) de la `CreateSession` demande. Il n’est pas nécessaire de spécifier explicitement les valeurs de ces paramètres de chiffrement dans les appels d’API de point de terminaison zonal. Amazon S3 utilisera les valeurs des paramètres de chiffrement de la demande `CreateSession` pour protéger les nouveaux objets dans le compartiment de répertoires. 
**Note**  
Lorsque vous utilisez le AWS CLI ou le AWS SDKs, pour`CreateSession`, le jeton de session est automatiquement actualisé pour éviter les interruptions de service à l'expiration d'une session. AWS CLI Ou AWS SDKs utilisez la configuration de chiffrement par défaut du compartiment pour la `CreateSession` demande. Il n’est pas possible de remplacer les valeurs des paramètres de chiffrement dans la demande `CreateSession`. De plus, dans les appels d'API du point de terminaison zonal (sauf [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)), il n'est pas possible de remplacer les valeurs des paramètres de chiffrement de la `CreateSession` demande. 
+ [En effet [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), pour chiffrer de nouvelles copies d'objets dans un compartiment d'annuaire avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut du compartiment d'annuaire avec une clé KMS (en particulier, une clé gérée par le client).](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) Ensuite, lorsque vous spécifierez les paramètres de chiffrement côté serveur pour les nouvelles copies d’objets avec SSE-KMS, vous devrez vous assurer que la clé de chiffrement est la clé gérée par le client que vous avez spécifiée pour la configuration de chiffrement par défaut du compartiment de répertoires. [En effet [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), pour chiffrer de nouvelles copies partielles d'objets dans un compartiment d'annuaire avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut du compartiment d'annuaire avec une clé KMS (en particulier, une clé gérée par le client).](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) Vous ne pouvez pas spécifier de paramètres de chiffrement côté serveur pour les nouvelles copies partielles d'objets avec SSE-KMS dans les en-têtes de demande. [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) En outre, les paramètres de chiffrement que vous fournissez dans la [CreateMultipartUpload](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)demande doivent correspondre à la configuration de chiffrement par défaut du compartiment de destination. 
+ Les clés de compartiment S3 sont toujours activées pour les opérations `GET` et `PUT` dans un compartiment de répertoires et ne peuvent pas être désactivées. Les clés de compartiment S3 ne sont pas prises en charge lorsque vous copiez des objets chiffrés avec SSE-KMS depuis des compartiments à usage général vers des compartiments de répertoires, depuis des compartiments de répertoires vers des compartiments à usage général ou entre des compartiments de répertoires, par le biais de [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), d’[https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), de l’[opération Copy dans les opérations par lot](directory-buckets-objects-Batch-Ops.md) ou des [tâches import](create-import-job.md). Dans ce cas, Amazon S3 effectue un appel à AWS KMS chaque fois qu'une demande de copie est faite pour un objet chiffré par KMS.
+ Lorsque vous spécifiez une [cléAWS KMS gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) pour le chiffrement dans votre compartiment de répertoires, utilisez uniquement l’ID ou l’ARN de la clé. Le format de l’alias de la clé KMS n’est pas pris en charge.

Les compartiments d'annuaire ne prennent pas en charge le chiffrement double couche côté serveur avec des clés AWS Key Management Service (AWS KMS) (DSSE-KMS), ni le chiffrement côté serveur avec des clés de chiffrement fournies par le client (SSE-C).

# Configuration et surveillance du chiffrement par défaut pour les compartiments de répertoires
<a name="s3-express-bucket-encryption"></a>

Les compartiments Amazon S3 ont le chiffrement des compartiments activé par défaut et les nouveaux objets sont automatiquement chiffrés à l’aide du chiffrement côté serveur avec les clés gérées par Amazon S3 (SSE-S3). Ce chiffrement s’applique à tous les nouveaux objets de vos compartiments Amazon S3, sans frais.

Si vous avez besoin d'un contrôle accru sur vos clés de chiffrement, par exemple pour gérer la rotation des clés et l'attribution des politiques d'accès, vous pouvez choisir d'utiliser le chiffrement côté serveur avec des clés AWS Key Management Service (AWS KMS) (SSE-KMS).

**Note**  
Nous recommandons que le chiffrement par défaut du compartiment utilise la configuration de chiffrement souhaitée et que vous ne remplaciez pas le chiffrement par défaut du compartiment dans vos demandes `CreateSession` ni dans vos demandes d’objets `PUT`. Les nouveaux objets seront ensuite automatiquement chiffrés avec les paramètres de chiffrement souhaités. Pour plus d'informations sur les comportements de remplacement du chiffrement dans les compartiments de répertoire, voir [Spécifier le chiffrement côté serveur avec AWS KMS pour](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html) les téléchargements de nouveaux objets.
Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une clé gérée par le client). Ensuite, lorsqu’une session sera créée pour les opérations de l’API de point de terminaison zonal, les nouveaux objets seront automatiquement chiffrés et déchiffrés avec les clés SSE-KMS et les clés de compartiment S3 pendant la session.
Lorsque vous définissez le chiffrement SSE-KMS par défaut pour les compartiments, les clés de compartiment S3 sont toujours activées pour les opérations `GET` et `PUT` dans un compartiment de répertoires et ne peuvent pas être désactivées. Les clés de compartiment S3 ne sont pas prises en charge lorsque vous copiez des objets chiffrés avec SSE-KMS depuis des compartiments à usage général vers des compartiments de répertoires, depuis des compartiments de répertoires vers des compartiments à usage général ou entre des compartiments de répertoires, par le biais de [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), d’[https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), de l’[opération Copy dans les opérations par lot](directory-buckets-objects-Batch-Ops.md) ou des [tâches import](create-import-job.md). Dans ce cas, Amazon S3 effectue un appel à AWS KMS chaque fois qu'une demande de copie est faite pour un objet chiffré par KMS. Pour plus d'informations sur la façon dont les clés de compartiment S3 réduisent les coûts de vos AWS KMS demandes, consultez[Réduction du coût du SSE-KMS avec les clés de compartiment Amazon S3](bucket-key.md). 
Lorsque vous spécifiez une [cléAWS KMS gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) pour le chiffrement dans votre compartiment de répertoires, utilisez uniquement l’ID ou l’ARN de la clé. Le format de l’alias de la clé KMS n’est pas pris en charge.
Le chiffrement double couche côté serveur avec AWS KMS clés (DSSE-KMS) et le chiffrement côté serveur avec clés fournies par le client (SSE-C) ne sont pas pris en charge pour le chiffrement par défaut dans les compartiments d'annuaire.

Pour plus d’informations sur la configuration du chiffrement par défaut, consultez [Configuration du chiffrement par défaut](default-bucket-encryption.md).

Pour en savoir plus sur les autorisations nécessaires pour le chiffrement par défaut, consultez [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html) dans la *documentation de référence de l’API Amazon Simple Storage Service*.

Vous pouvez configurer le chiffrement par défaut d'Amazon S3 pour un compartiment S3 à l'aide de la console Amazon S3 AWS SDKs, de l'API REST Amazon S3 et du AWS Command Line Interface (AWS CLI).

## Utilisation de la console S3
<a name="s3-express-bucket-encryption-how-to-set-up-console"></a>

**Pour configurer le chiffrement par défaut sur un compartiment Amazon S3**

1. Connectez-vous à la console Amazon S3 AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Dans le panneau de navigation de gauche, choisissez **Compartiments**.

1. Dans la liste **Compartiments**, choisissez le nom du compartiment que vous souhaitez utiliser. 

1. Choisissez l’onglet **Propriétés**.

1. Dans **Paramètres de chiffrement côté serveur**, les compartiments de répertoires utilisent le chiffrement côté serveur avec des **clés gérées par Amazon S3 (SSE-S3)**.

1. Sélectionnez **Enregistrer les modifications**.

## En utilisant le AWS CLI
<a name="s3-express-default-bucket-encryption-cli"></a>

Ces exemples montrent comment configurer le chiffrement par défaut en utilisant SSE-S3 ou SSE-KMS avec une clé de compartiment S3.

Pour plus d’informations sur le chiffrement par défaut, consultez [Définition du comportement de chiffrement côté serveur par défaut pour les compartiments Amazon S3](bucket-encryption.md). Pour plus d'informations sur l'utilisation du AWS CLI pour configurer le chiffrement par défaut, consultez [put-bucket-encryption](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3api/put-bucket-encryption.html).

**Example — Chiffrement par défaut avec SSE-S3**  
Cet exemple montre comment configurer le chiffrement du compartiment par défaut avec les clés gérées par Amazon S3. Pour utiliser ces commandes, remplacez les *user input placeholders* par vos propres informations.  

```
aws s3api put-bucket-encryption --bucket bucket-base-name--zone-id--x-s3 --server-side-encryption-configuration '{
    "Rules": [
        {
            "ApplyServerSideEncryptionByDefault": {
                "SSEAlgorithm": "AES256"
            }
        }
    ]
}'
```

**Example — Chiffrement par défaut avec SSE-KMS à l’aide d’une clé de compartiment S3**  
Cet exemple configure le chiffrement du compartiment par défaut avec SSE-KMS à l’aide d’une clé de compartiment S3. Pour utiliser ces commandes, remplacez les *user input placeholders* par vos propres informations.  

```
aws s3api put-bucket-encryption --bucket bucket-base-name--zone-id--x-s3 --server-side-encryption-configuration '{
    "Rules": [
            {
                "ApplyServerSideEncryptionByDefault": {
                    "SSEAlgorithm": "aws:kms",
                    "KMSMasterKeyID": "KMS-Key-ARN"
                },
                "BucketKeyEnabled": true
            }
        ]
    }'
```

## Utilisation de l'API REST
<a name="s3-express-bucket-encryption-how-to-set-up-api"></a>

Utilisez l’opération `PutBucketEncryption` de l’API REST pour définir le chiffrement par défaut avec un type de chiffrement côté serveur à utiliser : SSE-S3 ou SSE-KMS. 

Pour plus d’informations, consultez [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html) dans la *Référence d’API Amazon Simple Storage Service*.

## À l'aide du AWS SDKs
<a name="s3-express-kms-put-bucket-encryption-using-sdks"></a>

Lors de l'utilisation AWS SDKs, vous pouvez demander à Amazon S3 de l'utiliser AWS KMS keys pour le chiffrement côté serveur. Les exemples suivants AWS SDKs pour Java et .NET configurent la configuration de chiffrement par défaut pour un compartiment de répertoire avec SSE-KMS et une clé de compartiment S3. Pour plus d'informations sur les autres SDKs, consultez la section [Exemples de code et de bibliothèques](https://aws.amazon.com/code) sur le AWS Developer Center.

**Important**  
Lorsque vous utilisez un AWS KMS key pour le chiffrement côté serveur dans Amazon S3, vous devez choisir une clé KMS de chiffrement symétrique. Amazon S3 ne prend en charge que les clés KMS à chiffrement symétrique. Pour plus d’informations sur ces clés, consultez [Clés KMS de chiffrement symétriques](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#symmetric-cmks) dans le *Guide du développeur AWS Key Management Service *.

------
#### [ Java ]

Avec le AWS SDK for Java 2.x, vous pouvez demander à Amazon S3 d'utiliser un AWS KMS key en utilisant la `applyServerSideEncryptionByDefault` méthode pour spécifier la configuration de chiffrement par défaut de votre compartiment d'annuaire pour le chiffrement des données avec SSE-KMS. Vous créez une clé KMS symétrique de chiffrement et la spécifier dans la demande.

```
import software.amazon.awssdk.services.s3.S3Client;
import software.amazon.awssdk.services.s3.model.PutBucketEncryptionRequest;
import software.amazon.awssdk.services.s3.model.ServerSideEncryption;
import software.amazon.awssdk.services.s3.model.ServerSideEncryptionByDefault;
import software.amazon.awssdk.services.s3.model.ServerSideEncryptionConfiguration;
import software.amazon.awssdk.services.s3.model.ServerSideEncryptionRule;

public class Main {
    public static void main(String[] args) {
        S3Client s3 = S3Client.create();
        String bucketName = "bucket-base-name--zoneid--x-s3";
        String kmsKeyId = "your-kms-customer-managed-key-id";

        // AWS managed KMS keys aren't supported. Only customer-managed keys are supported.
        ServerSideEncryptionByDefault serverSideEncryptionByDefault = ServerSideEncryptionByDefault.builder()
                .sseAlgorithm(ServerSideEncryption.AWS_KMS)
                .kmsMasterKeyID(kmsKeyId)
                .build();

        // The bucketKeyEnabled field is enforced to be true.
        ServerSideEncryptionRule rule = ServerSideEncryptionRule.builder()
                .bucketKeyEnabled(true)
                .applyServerSideEncryptionByDefault(serverSideEncryptionByDefault)
                .build();
  
        ServerSideEncryptionConfiguration serverSideEncryptionConfiguration = ServerSideEncryptionConfiguration.builder()
                .rules(rule)
                .build();

        PutBucketEncryptionRequest putRequest = PutBucketEncryptionRequest.builder()
                .bucket(bucketName)
                .serverSideEncryptionConfiguration(serverSideEncryptionConfiguration)
                .build();

        s3.putBucketEncryption(putRequest);
        
    }
}
```

Pour plus d'informations sur la création de clés gérées par le client, consultez la section [Programmation de l' AWS KMS API](https://docs.aws.amazon.com/kms/latest/developerguide/programming-top.html) dans le *Guide du AWS Key Management Service développeur*.

Pour obtenir des exemples de code utilisables pour charger un objet, consultez les rubriques suivantes. Pour utiliser ces exemples, vous devez mettre à jour les exemples de code et fournir des informations de chiffrement comme illustré dans le fragment de code précédent.
+ Pour charger un objet en une seule opération, consultez [Chargement d’objets dans un compartiment de répertoires](directory-buckets-objects-upload.md).
+ Pour les opérations d’API de chargement partitionné, consultez [Utilisation du chargement partitionné avec les compartiments de répertoires](s3-express-using-multipart-upload.md). 

------
#### [ .NET ]

Avec le AWS SDK pour .NET, vous pouvez demander à Amazon S3 d'utiliser un AWS KMS key en utilisant la `ServerSideEncryptionByDefault` propriété pour spécifier la configuration de chiffrement par défaut de votre compartiment d'annuaire pour le chiffrement des données avec SSE-KMS. Vous créez une clé symétrique de chiffrement gérée par le client et la spécifier dans la demande.

```
    // Set the bucket server side encryption to use AWSKMS with a customer-managed key id.
    // bucketName: Name of the directory bucket. "bucket-base-name--zonsid--x-s3"
    // kmsKeyId: The Id of the customer managed KMS Key. "your-kms-customer-managed-key-id"
    // Returns True if successful.
    public static async Task<bool> SetBucketServerSideEncryption(string bucketName, string kmsKeyId)
    {
        var serverSideEncryptionByDefault = new ServerSideEncryptionConfiguration
        {
            ServerSideEncryptionRules = new List<ServerSideEncryptionRule>
            {
                new ServerSideEncryptionRule
                {
                    ServerSideEncryptionByDefault = new ServerSideEncryptionByDefault
                    {
                        ServerSideEncryptionAlgorithm = ServerSideEncryptionMethod.AWSKMS,
                        ServerSideEncryptionKeyManagementServiceKeyId = kmsKeyId
                    }
                }
            }
        };
        try
        {
            var encryptionResponse =await _s3Client.PutBucketEncryptionAsync(new PutBucketEncryptionRequest
            {
                BucketName = bucketName,
                ServerSideEncryptionConfiguration = serverSideEncryptionByDefault,
            });
            
            return encryptionResponse.HttpStatusCode == HttpStatusCode.OK;
        }
        catch (AmazonS3Exception ex)
        {
            Console.WriteLine(ex.ErrorCode == "AccessDenied"
                ? $"This account does not have permission to set encryption on {bucketName}, please try again."
                : $"Unable to set bucket encryption for bucket {bucketName}, {ex.Message}");
        }
        return false;
    }
```

Pour plus d'informations sur la création de clés gérées par le client, consultez la section [Programmation de l' AWS KMS API](https://docs.aws.amazon.com/kms/latest/developerguide/programming-top.html) dans le *Guide du AWS Key Management Service développeur*. 

Pour obtenir des exemples de code utilisables pour charger un objet, consultez les rubriques suivantes. Pour utiliser ces exemples, vous devez mettre à jour les exemples de code et fournir des informations de chiffrement comme illustré dans le fragment de code précédent.
+ Pour charger un objet en une seule opération, consultez [Chargement d’objets dans un compartiment de répertoires](directory-buckets-objects-upload.md).
+ Pour les opérations d’API de chargement partitionné, consultez [Utilisation du chargement partitionné avec les compartiments de répertoires](s3-express-using-multipart-upload.md). 

------

## Surveillance du chiffrement par défaut pour les compartiments de répertoire avec AWS CloudTrail
<a name="s3-express-bucket-encryption-tracking"></a>

Vous pouvez suivre les demandes de configuration de chiffrement par défaut pour les compartiments Amazon S3 à l’aide d’événements AWS CloudTrail . Les noms d'événements d'API suivants sont utilisés dans CloudTrail les journaux :
+ `PutBucketEncryption`
+ `GetBucketEncryption`
+ `DeleteBucketEncryption`

**Note**  
EventBridge n'est pas pris en charge dans les compartiments de répertoire.
Le chiffrement double couche côté serveur avec des clés AWS Key Management Service (AWS KMS) (DSSE-KMS) ou le chiffrement côté serveur avec des clés de chiffrement fournies par le client (SSE-C) ne sont pas pris en charge dans les compartiments d'annuaire.

Pour plus d’informations sur la surveillance du chiffrement par défaut avec AWS CloudTrail, consultez [Surveillance du chiffrement par défaut avec Amazon AWS CloudTrail et Amazon EventBridge](bucket-encryption-tracking.md).

# Utilisation du chiffrement côté serveur avec des AWS KMS clés (SSE-KMS) dans des compartiments de répertoire
<a name="s3-express-UsingKMSEncryption"></a>

 Les contrôles de sécurité intégrés AWS KMS peuvent vous aider à respecter les exigences de conformité liées au chiffrement. Vous pouvez choisir de configurer les compartiments de répertoire pour utiliser le chiffrement côté serveur avec des clés AWS Key Management Service (AWS KMS) (SSE-KMS) et d'utiliser ces clés KMS pour protéger vos données dans les compartiments d'annuaire Amazon S3. Pour en savoir plus sur SSE-KMS, consultez [Utilisation du chiffrement côté serveur à l'aide de AWS KMS clés (SSE-KMS)](UsingKMSEncryption.md).

**Permissions**  
Pour charger ou télécharger un objet chiffré AWS KMS key à destination ou en provenance d'Amazon S3, vous avez besoin `kms:GenerateDataKey` d'`kms:Decrypt`autorisations sur la clé. Pour plus d’informations, consultez [Permettre aux utilisateurs de clés d’utiliser une clé KMS pour les opérations de chiffrement](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html#key-policy-users-crypto) dans le *Guide de l’utilisateur AWS Key Management Service *. Pour plus d'informations sur les AWS KMS autorisations requises pour les téléchargements partitionnés, consultez. [API de chargement partitionné et autorisations](mpuoverview.md#mpuAndPermissions)

Pour plus d’informations sur les clés KMS pour SSE-KMS, consultez [Spécification du chiffrement côté serveur avec AWS KMS (SSE-KMS)](specifying-kms-encryption.md).

**Topics**
+ [AWS KMS keys](#s3-express-aws-managed-customer-managed-keys)
+ [Utilisation de SSE-KMS pour les opérations intercomptes](#s3-express-bucket-encryption-update-bucket-policy)
+ [Clés de compartiment Amazon S3](#s3-express-sse-kms-bucket-keys)
+ [Chiffrement SSE-KMS requis](#s3-express-require-sse-kms)
+ [Contexte de chiffrement](#s3-express-encryption-context)
+ [Envoi de demandes pour des objets AWS KMS chiffrés](#s3-express-aws-signature-version-4-sse-kms)
+ [Audit du chiffrement SSE-KMS dans les compartiments de répertoires](#s3-express-bucket-encryption-sse-auditing)
+ [Spécification du chiffrement côté serveur avec AWS KMS (SSE-KMS) pour les téléchargements de nouveaux objets dans des compartiments de répertoires](s3-express-specifying-kms-encryption.md)

## AWS KMS keys
<a name="s3-express-aws-managed-customer-managed-keys"></a>

Votre configuration SSE-KMS ne peut prendre en charge qu’une seule [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) par compartiment de répertoires pendant toute la durée de vie du compartiment. La [https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (`aws/s3`) n’est pas prise en charge. De même, après avoir spécifié une clé gérée par le client pour SSE-KMS, vous ne pouvez pas remplacer la clé gérée par le client pour la configuration SSE-KMS du compartiment.

Vous pouvez identifier la clé gérée par le client que vous avez spécifiée pour la configuration SSE-KMS du compartiment de la manière suivante :
+ Effectuez une demande d’opération d’API `HeadObject` pour trouver la valeur de `x-amz-server-side-encryption-aws-kms-key-id` dans la réponse.

Pour utiliser une nouvelle clé gérée par le client pour vos données, nous vous recommandons de copier vos objets existants dans un nouveau compartiment de répertoires avec une nouvelle clé gérée par le client.

Lorsque vous spécifiez une [cléAWS KMS gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) pour le chiffrement dans votre compartiment de répertoires, utilisez uniquement l’ID ou l’ARN de la clé. Le format de l’alias de la clé KMS n’est pas pris en charge.

Pour plus d’informations sur les clés KMS pour SSE-KMS, consultez [AWS KMS keys](UsingKMSEncryption.md#aws-managed-customer-managed-keys).

## Utilisation de SSE-KMS pour les opérations intercomptes
<a name="s3-express-bucket-encryption-update-bucket-policy"></a>

Lors de l’utilisation du chiffrement pour les opérations intercomptes, tenez compte des éléments suivants :
+ Si vous souhaitez accorder un accès intercompte à vos objets S3, configurez une politique de clé gérée par le client pour autoriser l’accès à partir d’un autre compte.
+ Pour spécifier une clé gérée par le client, vous devez utiliser un ARN de clé KMS complet.

## Clés de compartiment Amazon S3
<a name="s3-express-sse-kms-bucket-keys"></a>

Les clés de compartiment S3 sont toujours activées pour les opérations `GET` et `PUT` dans un compartiment de répertoires et ne peuvent pas être désactivées. Les clés de compartiment S3 ne sont pas prises en charge lorsque vous copiez des objets chiffrés avec SSE-KMS depuis des compartiments à usage général vers des compartiments de répertoires, depuis des compartiments de répertoires vers des compartiments à usage général ou entre des compartiments de répertoires, par le biais de [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), d’[https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), de l’[opération Copy dans les opérations par lot](directory-buckets-objects-Batch-Ops.md) ou des [tâches import](create-import-job.md). Dans ce cas, Amazon S3 effectue un appel à AWS KMS chaque fois qu'une demande de copie est faite pour un objet chiffré par KMS.

Pour les [opérations d'API du point de terminaison zonal (au niveau de l'objet)](s3-express-differences.md#s3-express-differences-api-operations), à l'exception de [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), vous authentifiez et autorisez les demandes pour une faible latence. [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) Nous recommandons que le chiffrement par défaut du compartiment utilise la configuration de chiffrement souhaitée et que vous ne remplaciez pas le chiffrement par défaut du compartiment dans vos demandes `CreateSession` ni dans vos demandes d’objets `PUT`. Les nouveaux objets seront ensuite automatiquement chiffrés avec les paramètres de chiffrement souhaités. Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)). Ensuite, lorsqu’une session sera créée pour les opérations de l’API de point de terminaison zonal, les nouveaux objets seront automatiquement chiffrés et déchiffrés avec les clés SSE-KMS et les clés de compartiment S3 pendant la session. Pour plus d'informations sur les comportements de remplacement du chiffrement dans les compartiments de répertoire, voir [Spécifier le chiffrement côté serveur avec AWS KMS pour](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html) les téléchargements de nouveaux objets.

Les clés de compartiment S3 sont utilisées pendant une période limitée dans le temps dans Amazon S3, ce qui réduit encore la nécessité pour Amazon S3 de faire des demandes AWS KMS pour effectuer des opérations de chiffrement. Pour plus d’informations sur l’utilisation des clés de compartiment S3, consultez [Clés de compartiment Amazon S3](UsingKMSEncryption.md#sse-kms-bucket-keys) et [Réduction du coût du SSE-KMS avec les clés de compartiment Amazon S3](bucket-key.md).

## Chiffrement SSE-KMS requis
<a name="s3-express-require-sse-kms"></a>

Pour exiger le chiffrement SSE-C de tous les objets figurant dans un compartiment de répertoires particulier, vous pouvez utiliser une stratégie de compartiment. Par exemple, lorsque vous utilisez l’opération d’API `CreateSession` pour autoriser le chargement d’un nouvel objet (`PutObject`, `CopyObject` et `CreateMultipartUpload`), la stratégie de compartiment suivante refuse l’autorisation de chargement de l’objet (`s3express:CreateSession`) à tout le monde si la demande `CreateSession` ne contient pas d’en-tête `x-amz-server-side-encryption-aws-kms-key-id` demandant le chiffrement SSE-KMS.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Id":"UploadObjectPolicy",
   "Statement":[{
         "Sid":"DenyObjectsThatAreNotSSEKMS",
         "Effect":"Deny",
         "Principal":"*",
         "Action":"s3express:CreateSession",
         "Resource":"arn:aws:s3express:us-east-1:111122223333:bucket/amzn-s3-demo-bucket--usw2-az1--x-s3",
         "Condition":{
            "Null":{
               "s3express:x-amz-server-side-encryption-aws-kms-key-id":"true"
            }
         }
      }
   ]
}
```

------

Pour exiger qu'une donnée AWS KMS key soit utilisée pour chiffrer les objets d'un compartiment, vous pouvez utiliser la clé de `s3express:x-amz-server-side-encryption-aws-kms-key-id` condition. Pour spécifier la clé KMS, vous devez utiliser une clé Amazon Resource Name (ARN) au `arn:aws:kms:region:acct-id:key/key-id` format suivant. Gestion des identités et des accès AWS ne valide pas si la chaîne pour `s3express:x-amz-server-side-encryption-aws-kms-key-id` existe. L'ID de AWS KMS clé utilisé par Amazon S3 pour le chiffrement des objets doit correspondre à l'ID de AWS KMS clé indiqué dans la politique, sinon Amazon S3 refuse la demande.

Pour plus d’informations sur l’utilisation de SSE-KMS pour les chargements de nouveaux objets, consultez [Spécification du chiffrement côté serveur avec AWS KMS (SSE-KMS) pour les téléchargements de nouveaux objets dans des compartiments de répertoires](s3-express-specifying-kms-encryption.md).

Pour obtenir la liste complète des clés de condition spécifiques aux compartiments de répertoires, consultez [Autorisation des opérations d’API de point de terminaison régional avec IAM](s3-express-security-iam.md).

## Contexte de chiffrement
<a name="s3-express-encryption-context"></a>

Pour les compartiments de répertoires, un *contexte de chiffrement* est un ensemble de paires clé-valeur qui contient des informations contextuelles supplémentaires sur les données. Aucune valeur supplémentaire de contexte de chiffrement n’est prise en charge. Pour plus d’informations sur le contexte de chiffrement, consultez la rubrique [Contexte de chiffrement](UsingKMSEncryption.md#encryption-context). 



Par défaut, si vous utilisez SSE-KMS sur un compartiment de répertoires, Amazon S3 utilise l’Amazon Resource Name (ARN) de ce compartiment comme paire de contexte de chiffrement :

```
arn:aws:s3express:region:account-id:bucket/bucket-base-name--zone-id--x-s3
```

Assurez-vous que vos politiques IAM ou AWS KMS clés utilisent l'ARN de votre bucket comme contexte de chiffrement.

Vous pouvez éventuellement fournir une paire de contextes de chiffrement explicite en utilisant l'`x-amz-server-side-encryption-context`en-tête d'une demande d'API de point de terminaison zonal, telle que [ CreateSession](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html#API_CreateSession_RequestSyntax). La valeur de cet en-tête est une chaîne codée en base64 d’un fichier JSON codé en UTF-8, qui contient le contexte de chiffrement sous forme de paires clé-valeur. Pour les compartiments de répertoires, le contexte de chiffrement doit correspondre au contexte de chiffrement par défaut, à savoir l’Amazon Resource Name (ARN) du compartiment. De plus, étant donné que le contexte de chiffrement n’est pas chiffré, assurez-vous qu’il ne contienne pas d’informations sensibles.

Vous pouvez utiliser le contexte de chiffrement pour identifier et classer vos opérations cryptographiques par catégorie. Vous pouvez également utiliser la valeur ARN du contexte de chiffrement par défaut pour suivre les demandes pertinentes en AWS CloudTrail visualisant quel ARN de compartiment de répertoire a été utilisé avec quelle clé de chiffrement.

Dans le `requestParameters` champ d'un fichier CloudTrail journal, si vous utilisez SSE-KMS sur un bucket de répertoire, la valeur du contexte de chiffrement est l'ARN du bucket. 

```
"encryptionContext": {
    "aws:s3express:arn": "arn:aws:s3:::arn:aws:s3express:region:account-id:bucket/bucket-base-name--zone-id--x-s3"
}
```

En outre, pour le chiffrement d'objets avec SSE-KMS dans un bucket de répertoire, vos AWS KMS CloudTrail événements enregistrent l'ARN de votre bucket au lieu de celui de votre objet. 

## Envoi de demandes pour des objets AWS KMS chiffrés
<a name="s3-express-aws-signature-version-4-sse-kms"></a>

Les compartiments de répertoires sont accessibles uniquement via HTTPS (TLS). En outre, les compartiments d'annuaire signent les demandes à l'aide de AWS Signature Version 4 (SigV4). Pour plus d'informations sur l'envoi de demandes d'objets AWS KMS chiffrés, consultez[Envoi de demandes pour des objets AWS KMS chiffrés](UsingKMSEncryption.md#aws-signature-version-4-sse-kms).

Si votre objet utilise SSE-KMS, n’envoyez pas d’en-têtes de chiffrement pour les requêtes `GET` et `HEAD`. Sinon, vous obtiendrez une erreur HTTP 400 Bad Request (HTTP 400 Requête erronée).

## Audit du chiffrement SSE-KMS dans les compartiments de répertoires
<a name="s3-express-bucket-encryption-sse-auditing"></a>

Pour vérifier l'utilisation de vos AWS KMS clés pour vos données cryptées SSE-KMS, vous pouvez utiliser AWS CloudTrail des journaux. Vous pouvez obtenir un aperçu de vos [opérations cryptographiques](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#cryptographic-operations), telles que [https://docs.aws.amazon.com/kms/latest/developerguide/ct-generatedatakey.html](https://docs.aws.amazon.com/kms/latest/developerguide/ct-generatedatakey.html)et [https://docs.aws.amazon.com/kms/latest/developerguide/ct-decrypt.html](https://docs.aws.amazon.com/kms/latest/developerguide/ct-decrypt.html). CloudTrail prend en charge de nombreuses [valeurs d'attribut](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_LookupEvents.html) pour filtrer votre recherche, notamment le nom de l'événement, le nom d'utilisateur et la source de l'événement. 

**Topics**
+ [AWS KMS keys](#s3-express-aws-managed-customer-managed-keys)
+ [Utilisation de SSE-KMS pour les opérations intercomptes](#s3-express-bucket-encryption-update-bucket-policy)
+ [Clés de compartiment Amazon S3](#s3-express-sse-kms-bucket-keys)
+ [Chiffrement SSE-KMS requis](#s3-express-require-sse-kms)
+ [Contexte de chiffrement](#s3-express-encryption-context)
+ [Envoi de demandes pour des objets AWS KMS chiffrés](#s3-express-aws-signature-version-4-sse-kms)
+ [Audit du chiffrement SSE-KMS dans les compartiments de répertoires](#s3-express-bucket-encryption-sse-auditing)
+ [Spécification du chiffrement côté serveur avec AWS KMS (SSE-KMS) pour les téléchargements de nouveaux objets dans des compartiments de répertoires](s3-express-specifying-kms-encryption.md)

# Spécification du chiffrement côté serveur avec AWS KMS (SSE-KMS) pour les téléchargements de nouveaux objets dans des compartiments de répertoires
<a name="s3-express-specifying-kms-encryption"></a>

Pour les compartiments d'annuaire, pour chiffrer vos données à l'aide du chiffrement côté serveur, vous pouvez utiliser soit le chiffrement côté serveur avec des clés gérées Amazon S3 (SSE-S3) (par défaut), soit le chiffrement côté serveur avec des clés () (SSE-KMS). AWS Key Management Service AWS KMS Nous recommandons que le chiffrement par défaut du compartiment utilise la configuration de chiffrement souhaitée et que vous ne remplaciez pas le chiffrement par défaut du compartiment dans vos demandes `CreateSession` ni dans vos demandes d’objets `PUT`. Les nouveaux objets seront ensuite automatiquement chiffrés avec les paramètres de chiffrement souhaités. Pour plus d'informations sur les comportements de remplacement du chiffrement dans les compartiments de répertoire, voir [Spécifier le chiffrement côté serveur avec AWS KMS pour](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html) les téléchargements de nouveaux objets.

Le chiffrement est configuré par défaut pour tous les compartiments Amazon S3, et tous les nouveaux objets qui sont chargés dans un compartiment S3 sont automatiquement chiffrés au repos. Le chiffrement côté serveur avec des clés gérées par Amazon S3 (SSE-S3) est la configuration de chiffrement par défaut pour chaque compartiment dans Amazon S3. Si vous souhaitez spécifier un type de chiffrement différent pour un compartiment de répertoires, vous pouvez utiliser le chiffrement côté serveur avec des clés AWS Key Management Service (AWS KMS) (SSE-KMS). Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)). La [Clé gérée par AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (`aws/s3`) n’est pas prise en charge. Votre configuration SSE-KMS ne peut prendre en charge qu’une seule [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) par compartiment de répertoires pendant toute la durée de vie du compartiment. Après avoir spécifié une clé gérée par le client pour SSE-KMS, vous ne pouvez pas remplacer cette clé pour la configuration SSE-KMS du compartiment. Ensuite, lorsque vous spécifierez les paramètres de chiffrement côté serveur pour les nouveaux objets avec SSE-KMS, vous devrez vous assurer que la clé de chiffrement est la clé gérée par le client que vous avez spécifiée pour la configuration de chiffrement par défaut du compartiment de répertoires. Pour utiliser une nouvelle clé gérée par le client pour vos données, nous vous recommandons de copier vos objets existants dans un nouveau compartiment de répertoires avec une nouvelle clé gérée par le client.

Vous pouvez appliquer le chiffrement lorsque vous chargez un nouvel objet ou copiez un objet existant. Si vous modifiez le chiffrement d’un objet, un nouvel objet est créé pour remplacer l’ancien.

Vous pouvez spécifier SSE-KMS à l'aide des opérations de l'API REST AWS SDKs, et du AWS Command Line Interface ()AWS CLI. 

**Note**  
 Pour les compartiments de répertoires, les comportements de remplacement du chiffrement sont les suivants :   
Lorsque vous utilisez [CreateSession](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html)l'API REST pour authentifier et autoriser les demandes d'API de point de terminaison zonal, à l'exception de [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), vous pouvez remplacer les paramètres de chiffrement par SSE-S3 ou par SSE-KMS uniquement si vous avez précédemment spécifié le chiffrement par défaut du compartiment avec SSE-KMS.
Lorsque vous utilisez [CreateSession](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html)with the AWS CLI ou the AWS SDKs pour authentifier et autoriser des requêtes d'API de point de terminaison zonal, à l'exception de [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), vous ne pouvez pas du tout annuler les paramètres de chiffrement.
Lorsque vous faites des [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)demandes, vous pouvez remplacer les paramètres de chiffrement par SSE-S3 ou SSE-KMS uniquement si vous avez précédemment spécifié le chiffrement par défaut du compartiment avec SSE-KMS. Lorsque vous faites des [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)demandes, vous ne pouvez pas annuler les paramètres de chiffrement.
Vous pouvez utiliser plusieurs régions AWS KMS keys dans Amazon S3. Cependant, Amazon S3 traite actuellement les clés multi-régions comme s’il s’agissait de clés à région unique et n’utilise pas les fonctions multi-régions de la clé. Pour plus d’informations, consultez [Utilisation des clés multi-régions](https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html) dans le *Guide du développeur AWS Key Management Service *.
Si vous souhaitez utiliser une clé KMS qui appartient à un autre compte, vous devez avoir l’autorisation d’utiliser cette clé. Pour plus d’informations sur les autorisations intercomptes pour les clés KMS, consultez [Création de clés KMS que d’autres comptes peuvent utiliser](https://docs.aws.amazon.com//kms/latest/developerguide/key-policy-modifying-external-accounts.html#cross-account-console) dans le *Guide du développeur AWS Key Management Service *. 

## Utilisation de l'API REST
<a name="s3-express-KMSUsingRESTAPI"></a>

**Note**  
 Une seule [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) est prise en charge par compartiment de répertoires pendant toute la durée de vie de ce compartiment. La [https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (`aws/s3`) n’est pas prise en charge. Une fois que vous avez spécifié SSE-KMS comme configuration de chiffrement par défaut de votre compartiment avec une clé gérée par le client, vous ne pourrez plus modifier cette clé pour la configuration SSE-KMS du compartiment. 

Pour les [opérations d'API du point de terminaison zonal (au niveau de l'objet)](s3-express-differences.md#s3-express-differences-api-operations), à l'exception de [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), vous authentifiez et autorisez les demandes pour une faible latence. [CreateSession](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html) Nous recommandons que le chiffrement par défaut du compartiment utilise les configurations de chiffrement souhaitées et que vous ne remplaciez pas le chiffrement par défaut du compartiment dans vos demandes `CreateSession` ni dans vos demandes d’objets `PUT`. Les nouveaux objets seront ensuite automatiquement chiffrés avec les paramètres de chiffrement souhaités. Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk)). Ensuite, lorsqu’une session sera créée pour les opérations de l’API de point de terminaison zonal, les nouveaux objets seront automatiquement chiffrés et déchiffrés avec les clés SSE-KMS et les clés de compartiment S3 pendant la session. Pour plus d'informations sur les comportements de remplacement du chiffrement dans les compartiments de répertoire, voir [Spécifier le chiffrement côté serveur avec AWS KMS pour](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html) les téléchargements de nouveaux objets.

Dans les appels d'API de point de terminaison zonaux (sauf [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)) utilisant l'API REST, vous ne pouvez pas remplacer les valeurs des paramètres de chiffrement (`x-amz-server-side-encryption`, `x-amz-server-side-encryption-aws-kms-key-id``x-amz-server-side-encryption-context`, et`x-amz-server-side-encryption-bucket-key-enabled`) de la `CreateSession` demande. Il n’est pas nécessaire de spécifier explicitement les valeurs de ces paramètres de chiffrement dans les appels d’API de point de terminaison zonal. Amazon S3 utilisera les valeurs des paramètres de chiffrement de la demande `CreateSession` pour protéger les nouveaux objets dans le compartiment de répertoires. 

**Note**  
Lorsque vous utilisez le AWS CLI ou le AWS SDKs, pour`CreateSession`, le jeton de session est automatiquement actualisé pour éviter les interruptions de service à l'expiration d'une session. AWS CLI Ou AWS SDKs utilisez la configuration de chiffrement par défaut du compartiment pour la `CreateSession` demande. Il n’est pas possible de remplacer les valeurs des paramètres de chiffrement dans la demande `CreateSession`. De plus, dans les appels d'API du point de terminaison zonal (sauf [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)), il n'est pas possible de remplacer les valeurs des paramètres de chiffrement de la `CreateSession` demande. 

[En effet [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), pour chiffrer de nouvelles copies d'objets dans un compartiment d'annuaire avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut du compartiment d'annuaire avec une clé KMS (en particulier, une clé gérée par le client).](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) Ensuite, lorsque vous spécifierez les paramètres de chiffrement côté serveur pour les nouvelles copies d’objets avec SSE-KMS, vous devrez vous assurer que la clé de chiffrement est la clé gérée par le client que vous avez spécifiée pour la configuration de chiffrement par défaut du compartiment de répertoires. [En effet [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), pour chiffrer de nouvelles copies partielles d'objets dans un compartiment d'annuaire avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut du compartiment d'annuaire avec une clé KMS (en particulier, une clé gérée par le client).](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) Vous ne pouvez pas spécifier de paramètres de chiffrement côté serveur pour les nouvelles copies partielles d'objets avec SSE-KMS dans les en-têtes de demande. [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html) En outre, les paramètres de chiffrement que vous fournissez dans la [CreateMultipartUpload](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)demande doivent correspondre à la configuration de chiffrement par défaut du compartiment de destination. 



**Topics**
+ [Opérations d’API REST Amazon S3 prenant en charge SSE-KMS](#s3-express-sse-request-headers-kms)
+ [Contexte de chiffrement (`x-amz-server-side-encryption-context`)](#s3-express-s3-kms-encryption-context)
+ [AWS KMS ID de clé (`x-amz-server-side-encryption-aws-kms-key-id`)](#s3-express-s3-kms-key-id-api)
+ [Clés de compartiment S3 (`x-amz-server-side-encryption-aws-bucket-key-enabled`)](#s3-express-bucket-key-api)

### Opérations d’API REST Amazon S3 prenant en charge SSE-KMS
<a name="s3-express-sse-request-headers-kms"></a>

Les opérations d’API REST suivantes au niveau de l’objet dans les compartiments de répertoires acceptent les en-têtes de demande `x-amz-server-side-encryption`, `x-amz-server-side-encryption-aws-kms-key-id` et `x-amz-server-side-encryption-context`.
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html)— Lorsque vous utilisez les opérations d'API du point de terminaison zonal (au niveau de l'objet) (sauf CopyObject et UploadPartCopy), vous pouvez spécifier ces en-têtes de requête. 
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html) – Lorsque vous chargez des données avec l'opération d'API `PUT`, vous pouvez spécifier ces en-têtes de demande. 
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html) – Lorsque vous copiez un objet, vous disposez d'un objet source et d'un objet cible. Lorsque vous transmettez les en-têtes SSE-KMS avec l’opération `CopyObject`, ils sont appliqués uniquement à l’objet cible.
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html) : lorsque vous chargez des objets volumineux avec l’opération d’API de chargement partitionné, vous pouvez spécifier ces en-têtes. Vous spécifiez ces en-têtes dans la demande `CreateMultipartUpload`.

Les en-têtes de réponse des opérations d’API REST suivantes renvoient l’en-tête `x-amz-server-side-encryption` lorsqu’un objet est stocké grâce au chiffrement côté serveur.
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html)

**Important**  
Toutes les demandes `GET` et `PUT` pour un objet protégé par AWS KMS échouent si vous ne les faites pas en utilisant le protocole TLS (Transport Layer Security) ou Signature Version 4.
Si votre objet utilise le SSE-KMS, n'envoyez pas d'en-têtes de demande de chiffrement pour les `GET` requêtes et les `HEAD` requêtes, sinon vous obtiendrez une erreur HTTP 400. BadRequest

### Contexte de chiffrement (`x-amz-server-side-encryption-context`)
<a name="s3-express-s3-kms-encryption-context"></a>

Si vous spécifiez `x-amz-server-side-encryption:aws:kms`, l’API Amazon S3 vous permet de fournir un contexte de chiffrement explicite avec l’en-tête `x-amz-server-side-encryption-context`. Pour les compartiments de répertoires, un contexte de chiffrement est un ensemble de paires clé-valeur qui contient des informations contextuelles supplémentaires sur les données. La valeur doit correspondre au contexte de chiffrement par défaut, à savoir l’Amazon Resource Name (ARN) du compartiment. Aucune valeur supplémentaire de contexte de chiffrement n’est prise en charge. 

Pour plus d’informations sur le contexte de chiffrement dans les compartiments de répertoires, consultez [Contexte de chiffrement](s3-express-UsingKMSEncryption.md#s3-express-encryption-context). Pour des informations générales sur le contexte de chiffrement, consultez [Concepts AWS Key Management Service - Contexte de chiffrement](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) dans le *Guide du développeur AWS Key Management Service *. 

### AWS KMS ID de clé (`x-amz-server-side-encryption-aws-kms-key-id`)
<a name="s3-express-s3-kms-key-id-api"></a>

Vous pouvez utiliser l’en-tête `x-amz-server-side-encryption-aws-kms-key-id` pour spécifier l’ID de la clé gérée par le client utilisée pour protéger les données.

Votre configuration SSE-KMS ne peut prendre en charge qu’une seule [clé gérée par le client](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) par compartiment de répertoires pendant toute la durée de vie du compartiment. La [https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) (`aws/s3`) n’est pas prise en charge. De même, après avoir spécifié une clé gérée par le client pour SSE-KMS, vous ne pouvez pas remplacer la clé gérée par le client pour la configuration SSE-KMS du compartiment.

Vous pouvez identifier la clé gérée par le client que vous avez spécifiée pour la configuration SSE-KMS du compartiment de la manière suivante :
+ Effectuez une demande d’opération d’API `HeadObject` pour trouver la valeur de `x-amz-server-side-encryption-aws-kms-key-id` dans la réponse.

Pour utiliser une nouvelle clé gérée par le client pour vos données, nous vous recommandons de copier vos objets existants dans un nouveau compartiment de répertoires avec une nouvelle clé gérée par le client.

Pour plus d’informations sur le contexte de chiffrement dans les compartiments de répertoires, consultez [AWS KMS keys](s3-express-UsingKMSEncryption.md#s3-express-aws-managed-customer-managed-keys). 

### Clés de compartiment S3 (`x-amz-server-side-encryption-aws-bucket-key-enabled`)
<a name="s3-express-bucket-key-api"></a>

Les clés de compartiment S3 sont toujours activées pour les opérations `GET` et `PUT` dans un compartiment de répertoires et ne peuvent pas être désactivées. Les clés de compartiment S3 ne sont pas prises en charge lorsque vous copiez des objets chiffrés avec SSE-KMS depuis des compartiments à usage général vers des compartiments de répertoires, depuis des compartiments de répertoires vers des compartiments à usage général ou entre des compartiments de répertoires, par le biais de [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), d’[https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), de l’[opération Copy dans les opérations par lot](directory-buckets-objects-Batch-Ops.md) ou des [tâches import](create-import-job.md). Dans ce cas, Amazon S3 effectue un appel à AWS KMS chaque fois qu'une demande de copie est faite pour un objet chiffré par KMS. Pour plus d’informations sur les clés de compartiment S3 dans les compartiments de répertoires, consultez [Contexte de chiffrement](s3-express-UsingKMSEncryption.md#s3-express-encryption-context). 

## En utilisant le AWS CLI
<a name="s3-express-KMSUsingCLI"></a>

**Note**  
Lorsque vous utilisez le symbole AWS CLI, for`CreateSession`, le jeton de session est automatiquement actualisé pour éviter les interruptions de service lors de l'expiration d'une session. Il n’est pas possible de remplacer les valeurs des paramètres de chiffrement pour la demande `CreateSession`. De plus, dans les appels d'API du point de terminaison zonal (sauf [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)), il n'est pas possible de remplacer les valeurs des paramètres de chiffrement de la `CreateSession` demande.   
Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une clé gérée par le client). Ensuite, lorsqu’une session sera créée pour les opérations de l’API de point de terminaison zonal, les nouveaux objets seront automatiquement chiffrés et déchiffrés avec les clés SSE-KMS et les clés de compartiment S3 pendant la session.

Pour utiliser les exemples de AWS CLI commandes suivants, remplacez-les `user input placeholders` par vos propres informations.

Lorsque vous chargez un nouvel objet ou que vous copiez un objet existant, vous pouvez spécifier l'utilisation du chiffrement côté serveur avec des AWS KMS clés pour chiffrer vos données. Pour ce faire, utilisez la commande `put-bucket-encryption` afin de définir la configuration de chiffrement par défaut du compartiment de répertoires en tant que chiffrement SSE-KMS (`aws:kms`). Plus précisément, ajoutez l’en-tête `--server-side-encryption aws:kms` à la demande. Utilisez le `--ssekms-key-id example-key-id` pour ajouter la [AWS KMS clé gérée par le client](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#customer-cmk) que vous avez créée. Si vous le spécifiez`--server-side-encryption aws:kms`, vous devez fournir un identifiant de AWS KMS clé pour votre clé gérée par le client. Les compartiments de répertoire n'utilisent pas de clé AWS gérée. Pour obtenir un exemple de commande, consultez [En utilisant le AWS CLI](s3-express-bucket-encryption.md#s3-express-default-bucket-encryption-cli). 

Ensuite, lorsque vous chargez un nouvel objet à l’aide de la commande suivante, Amazon S3 utilise les paramètres du compartiment pour le chiffrement par défaut afin de chiffrer l’objet par défaut.

```
aws s3api put-object --bucket bucket-base-name--zone-id--x-s3 --key example-object-key --body filepath
```

Vous n’avez pas besoin d’ajouter `-\-bucket-key-enabled` explicitement dans les commandes d’opérations d’API de point de terminaison zonal. Les clés de compartiment S3 sont toujours activées pour les opérations `GET` et `PUT` dans un compartiment de répertoires et ne peuvent pas être désactivées. Les clés de compartiment S3 ne sont pas prises en charge lorsque vous copiez des objets chiffrés avec SSE-KMS depuis des compartiments à usage général vers des compartiments de répertoires, depuis des compartiments de répertoires vers des compartiments à usage général ou entre des compartiments de répertoires, par le biais de [https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html), d’[https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html), de l’[opération Copy dans les opérations par lot](directory-buckets-objects-Batch-Ops.md) ou des [tâches import](create-import-job.md). Dans ce cas, Amazon S3 effectue un appel à AWS KMS chaque fois qu'une demande de copie est faite pour un objet chiffré par KMS.

Vous pouvez copier un objet d’un compartiment source (par exemple, un compartiment à usage général) vers un nouveau compartiment (par exemple, un compartiment de répertoires) et utiliser le chiffrement SSE-KMS pour les objets de destination. Pour ce faire, utilisez la commande `put-bucket-encryption` afin de définir la configuration de chiffrement par défaut du compartiment de destination en tant que chiffrement SSE-KMS (`aws:kms`). Pour obtenir un exemple de commande, consultez [En utilisant le AWS CLI](s3-express-bucket-encryption.md#s3-express-default-bucket-encryption-cli). Ensuite, lorsque vous copiez un objet à l’aide de la commande suivante, Amazon S3 utilise les paramètres du compartiment pour le chiffrement par défaut afin de chiffrer l’objet par défaut.

```
aws s3api copy-object --copy-source amzn-s3-demo-bucket/example-object-key --bucket bucket-base-name--zone-id--x-s3 --key example-object-key  
```

## À l'aide du AWS SDKs
<a name="s3-express-kms-using-sdks"></a>

Lors de l'utilisation AWS SDKs, vous pouvez demander à Amazon S3 de l'utiliser AWS KMS keys pour le chiffrement côté serveur. Les exemples suivants montrent comment utiliser SSE-KMS avec AWS SDKs pour Java et .NET. Pour plus d'informations sur les autres SDKs, consultez la section [Exemples de code et de bibliothèques](https://aws.amazon.com/code) sur le AWS Developer Center.

**Note**  
Lorsque vous utilisez le symbole AWS SDKs, for`CreateSession`, le jeton de session est automatiquement actualisé pour éviter les interruptions de service lors de l'expiration d'une session. Il n’est pas possible de remplacer les valeurs des paramètres de chiffrement pour la demande `CreateSession`. De plus, dans les appels d'API du point de terminaison zonal (sauf [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)et [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)), il n'est pas possible de remplacer les valeurs des paramètres de chiffrement de la `CreateSession` demande.   
Pour chiffrer de nouveaux objets dans un compartiment de répertoires avec SSE-KMS, vous devez spécifier SSE-KMS comme configuration de chiffrement par défaut de ce compartiment avec une clé KMS (plus spécifiquement, une clé gérée par le client). Ensuite, lorsqu’une session sera créée pour les opérations de l’API de point de terminaison zonal, les nouveaux objets seront automatiquement chiffrés et déchiffrés avec les clés SSE-KMS et les clés de compartiment S3 pendant la session.  
Pour plus d'informations sur l'utilisation AWS SDKs de la configuration de chiffrement par défaut d'un bucket d'annuaire en tant que SSE-KMS, consultez. [À l'aide du AWS SDKs](s3-express-bucket-encryption.md#s3-express-kms-put-bucket-encryption-using-sdks)

**Important**  
Lorsque vous utilisez un AWS KMS key pour le chiffrement côté serveur dans Amazon S3, vous devez choisir une clé KMS de chiffrement symétrique. Amazon S3 ne prend en charge que les clés KMS à chiffrement symétrique. Pour plus d’informations sur ces clés, consultez [Clés KMS de chiffrement symétriques](https://docs.aws.amazon.com//kms/latest/developerguide/concepts.html#symmetric-cmks) dans le *Guide du développeur AWS Key Management Service *.

Pour plus d'informations sur la création de clés gérées par le client, consultez la section [Programmation de l' AWS KMS API](https://docs.aws.amazon.com/kms/latest/developerguide/programming-top.html) dans le *Guide du AWS Key Management Service développeur*.

## Chiffrement en transit
<a name="s3-express-ecnryption-transit"></a>

Les compartiments de répertoires utilisent des points de terminaison d’API régionaux et zonaux. Selon l’opération d’API Amazon S3 que vous utilisez, un point de terminaison régional ou zonal est requis. Vous pouvez accéder aux points de terminaison zonaux et régionaux via un point de terminaison de cloud privé virtuel (VPC) de passerelle. Il n’y a pas de frais supplémentaires pour l’utilisation de points de terminaison de passerelle. Pour en savoir plus sur les points de terminaison d’API régionaux et zonaux, consultez [Mise en réseau des compartiments de répertoires](s3-express-networking.md). 

## Suppression de données
<a name="s3-express-data-deletion"></a>

Vous pouvez supprimer un ou plusieurs objets directement depuis vos compartiments de répertoire à l'aide de la console Amazon S3 AWS SDKs, AWS Command Line Interface (AWS CLI) ou de l'API REST Amazon S3. Étant donné que tous les objets figurant dans les compartiments de répertoires entraînent des coûts de stockage, nous vous recommandons de supprimer les objets dont vous n’avez plus besoin.

La suppression d’un objet stocké dans un compartiment de répertoires supprime également de manière récursive tous les répertoires parents, si ces répertoires parents ne contiennent aucun objet autre que l’objet en cours de suppression.

**Note**  
La suppression par authentification multifactorielle (MFA) et la gestion des versions S3 ne sont pas prises en charge pour S3 Express One Zone. 