

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.

# Utilisation du AWS KMS chiffrement avec les AWS services
<a name="service-integration"></a>

Avec AWS Key Management Service, vous pouvez fournir des clés de chiffrement pour protéger les données dans d'autres AWS services. L'utilisation du AWS KMS chiffrement avec les AWS services fait référence au processus d'intégration AWS KMS à d'autres AWS services pour chiffrer et déchiffrer les données au repos ou en transit. Les développeurs, les administrateurs système et les professionnels de la sécurité peuvent être intéressés par cette rubrique pour sécuriser les données sensibles stockées ou transmises par le biais de AWS services, répondre aux exigences de conformité réglementaire ou mettre en œuvre les meilleures pratiques de chiffrement. Les cas d'utilisation courants incluent le chiffrement de volumes Amazon EBS, de compartiments Amazon S3 et de bases de données Amazon RDS. Les sections suivantes décrivent les étapes de configuration et de gestion des clés de AWS KMS chiffrement pour des AWS services spécifiques, afin de garantir la confidentialité et l'intégrité des données dans votre AWS environnement. Pour la liste complète des AWS services intégrés AWS KMS, voir Intégration des [AWS services](https://aws.amazon.com/kms/features/#AWS_Service_Integration).

Les rubriques suivantes traitent en détail de l'utilisation de certains services AWS KMS, notamment des clés KMS qu'ils prennent en charge, de la manière dont ils gèrent les clés de données, des autorisations dont ils ont besoin et de la manière de suivre l'utilisation des clés KMS par chaque service dans votre compte.

**Important**  
[AWS les services intégrés AWS KMS utilisent uniquement des](https://aws.amazon.com/kms/features/#AWS_Service_Integration) clés KMS de chiffrement symétriques pour chiffrer vos données. Ces services ne prennent pas en charge le chiffrement avec des clés KMS asymétriques. Pour obtenir de l'aide sur la détermination de la symétrie ou de l'asymétrie d'une clé KMS, veuillez consulter [Identifier les différents types de clés](identify-key-types.md).

**Topics**
+ [Amazon Elastic Block Store (Amazon EBS)](services-ebs.md)
+ [Amazon EMR](services-emr.md)
+ [Amazon Redshift](services-redshift.md)

# Comment Amazon Elastic Block Store (Amazon EBS) utilise AWS KMS
<a name="services-ebs"></a>

Cette rubrique décrit en détail comment [Amazon Elastic Block Store (Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonEBS.html)) AWS KMS utilise pour chiffrer les volumes et les instantanés. Pour obtenir des instructions de base sur le chiffrement de volumes Amazon EBS, veuillez consulter [Chiffrement Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html).

**Topics**
+ [Chiffrement Amazon EBS](#ebs-encrypt)
+ [Utilisation des clés KMS et des clés de données](#ebs-cmk)
+ [Contexte du chiffrement Amazon EBS](#ebs-encryption-context)
+ [Détection des défaillances Amazon EBS](#ebs-failures)
+ [Utilisation AWS CloudFormation pour créer des volumes Amazon EBS chiffrés](#ebs-encryption-using-cloudformation)

## Chiffrement Amazon EBS
<a name="ebs-encrypt"></a>

Lorsque vous attachez un volume Amazon EBS chiffré à [un type d'instance Amazon Elastic Compute Cloud (Amazon EC2) pris en charge](https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances), les données stockées au repos sur le volume, les I/O de disque et les instantanés créés à partir du volume sont tous chiffrés. Le chiffrement intervient sur les serveurs qui hébergent les instances Amazon EC2.

Cette fonction est prise en charge sur tous les [types de volume Amazon EBS](https://docs.aws.amazon.com/ebs-encryption-requirements.html#ebs-encryption-volume-types). Vous pouvez accéder aux volumes chiffrés de la même façon que vous accédez aux autres volumes. Le chiffrement et le déchiffrement sont gérés de façon transparente et ne nécessitent aucune action supplémentaire de votre part, de votre instance EC2 ou de votre application. Les instantanés de volumes chiffrés sont automatiquement chiffrés et les volumes créés à partir d'instantanés chiffrés sont également automatiquement chiffrés.

Le statut de chiffrement d'un volume EBS est déterminé lorsque vous créez le volume. Vous ne pouvez pas modifier le statut de chiffrement d'un volume existant. Par contre, vous pouvez [migrer les données](https://docs.aws.amazon.com//ebs/latest/userguide/how-ebs-encryption-works.html) entre des volumes chiffrés et des volumes non chiffrés, et appliquer un nouveau statut de chiffrement lors de la copie d'un instantané.

Amazon EBS prend en charge le chiffrement facultatif par défaut. Vous pouvez activer le chiffrement automatiquement sur tous les nouveaux volumes EBS et les copies instantanées de votre Compte AWS région. Ce paramètre de configuration n'affecte pas les volumes ou instantanés existants. Pour plus de détails, consultez la section relative au [chiffrement Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#encryption-by-default) dans le guide de l'*utilisateur Amazon EBS*.

## Utilisation des clés KMS et des clés de données
<a name="ebs-cmk"></a>

Lorsque vous [créez un volume Amazon EBS.](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-volume.html), vous spécifiez un AWS KMS key. Par défaut, Amazon EBS utilise la [Clé gérée par AWS](concepts.md#aws-managed-key) pour Amazon EBS dans votre compte (`aws/ebs`). Toutefois, vous pouvez spécifier une [clé gérée par le client](concepts.md#customer-mgn-key) que vous créez et gérez. 

Pour utiliser une clé gérée par le client, vous devez autoriser Amazon EBS à utiliser la clé KMS en votre nom. Pour plus d'informations, consultez [Comment fonctionne le chiffrement Amazon EBS](https://docs.aws.amazon.com//ebs/latest/userguide/how-ebs-encryption-works.html) dans le guide de *l'utilisateur Amazon EBS*.

**Important**  
Amazon EBS prend uniquement en charge les [clés KMS symétriques](symm-asymm-choose-key-spec.md#symmetric-cmks). Vous ne pouvez pas utiliser une [clé KMS asymétrique](symmetric-asymmetric.md) pour chiffrer un volume Amazon EBS. Pour obtenir de l'aide sur la détermination de la symétrie ou de l'asymétrie d'une clé KMS, veuillez consulter [Identifier les différents types de clés](identify-key-types.md).

Pour chaque volume, Amazon EBS demande de AWS KMS générer une clé de données unique chiffrée sous la clé KMS que vous spécifiez. Amazon EBS stocke la clé de données chiffrée avec le volume. Ensuite, lorsque vous attachez le volume à une instance Amazon EC2, Amazon EBS appelle AWS KMS pour déchiffrer la clé de données. Amazon EBS utilise la clé de données en texte brut de la mémoire de l'hyperviseur pour chiffrer tous les disques du I/O volume. Pour plus de détails, consultez *Comment fonctionne le chiffrement EBS* dans le guide de l'utilisateur [Amazon EC2 ou le guide de l'utilisateur](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html#how-ebs-encryption-works) [Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/EBSEncryption.html#how-ebs-encryption-works).

## Contexte du chiffrement Amazon EBS
<a name="ebs-encryption-context"></a>

Dans ses demandes [GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext)et [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) à AWS KMS, Amazon EBS utilise un contexte de chiffrement avec une paire nom-valeur qui identifie le volume ou le snapshot inclus dans la demande. Le nom du contexte de chiffrement ne varie pas.

Un [contexte de chiffrement](encrypt_context.md) est un ensemble de paires clé-valeur qui contiennent des données non secrètes arbitraires. Lorsque vous incluez un contexte de chiffrement dans une demande de chiffrement de données, lie AWS KMS cryptographiquement le contexte de chiffrement aux données chiffrées. Pour déchiffrer les données, vous devez transmettre le même contexte de chiffrement.

Pour tous les volumes et pour les instantanés chiffrés créés avec l'[CreateSnapshot](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSnapshot.html)opération Amazon EBS, Amazon EBS utilise l'ID du volume comme valeur de contexte de chiffrement. Dans le champ `requestParameters` d'une entrée de journal CloudTrail, le contexte de chiffrement ressemble à ce qui suit :

```
"encryptionContext": {
  "aws:ebs:id": "vol-0cfb133e847d28be9"
}
```

Pour les instantanés chiffrés créés avec l'opération Amazon [CopySnapshot](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CopySnapshot.html)EC2, Amazon EBS utilise l'ID du snapshot comme valeur de contexte de chiffrement. Dans le champ `requestParameters` d'une entrée de journal CloudTrail, le contexte de chiffrement ressemble à ce qui suit :

```
"encryptionContext": {
  "aws:ebs:id": "snap-069a655b568de654f"
}
```

## Détection des défaillances Amazon EBS
<a name="ebs-failures"></a>

Pour créer un volume EBS chiffré ou attacher le volume à une instance EC2, Amazon EBS et l'infrastructure Amazon EC2 doivent être en mesure d'utiliser la clé KMS que vous avez spécifiée pour le chiffrement des volumes EBS. Lorsque la clé KMS n'est pas utilisable, par exemple lorsque son [état de clé](key-state.md) n'est pas `Enabled`, la création ou l'attachement du volume échoue.

 Dans ce cas, Amazon EBS envoie un *événement* à Amazon EventBridge (anciennement CloudWatch Events) pour vous informer de l'échec. Dans EventBridge, vous pouvez établir des règles qui déclenchent des actions automatiques en réponse à ces événements. Pour plus d'informations, consultez [Amazon CloudWatch Events pour Amazon EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-cloud-watch-events.html) dans le *guide de l'utilisateur d'Amazon EBS*, en particulier les sections suivantes :
+ [Clé de chiffrement non valide pour l'attachement ou le réattachement du volume](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-cloud-watch-events.html#attach-fail-key)
+ [Clé de chiffrement non valide pour la création du volume](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-cloud-watch-events.html#create-fail-key)

Pour résoudre ces problèmes, veillez à ce que la clé KMS spécifiée pour le chiffrement des volumes EBS soit activée. **Pour ce faire, [consultez d'abord la clé KMS](viewing-keys.md) afin de déterminer son état actuel (colonne État dans le AWS Management Console).** Ensuite, consultez les informations à l'aide de l'un des liens suivants :
+ Si la clé KMS est désactivée, [activez-la](enabling-keys.md).
+ Si la clé KMS est en attente d'importation, [importez-la](importing-keys.md).
+ Si la clé KMS est en attente de suppression, [annulez cette suppression](deleting-keys-scheduling-key-deletion.md).

## Utilisation AWS CloudFormation pour créer des volumes Amazon EBS chiffrés
<a name="ebs-encryption-using-cloudformation"></a>

Vous pouvez utiliser [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/) pour créer des volumes Amazon EBS chiffrés. Pour plus d’informations, consultez [AWS::EC2::Volume](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html) dans le *Guide de l’utilisateur AWS CloudFormation *.

# Comment Amazon EMR utilise AWS KMS
<a name="services-emr"></a>

Lorsque vous utilisez un cluster [Amazon EMR](https://aws.amazon.com/emr/), vous pouvez le configurer pour chiffrer les données *au repos* avant de les enregistrer dans un emplacement de stockage permanent. Vous pouvez chiffrer des données au repos dans le système de fichiers EMR (EMRFS), sur les volumes de stockage de nœuds de cluster, ou les deux. Pour chiffrer les données au repos, vous pouvez utiliser une AWS KMS key. Les rubriques suivantes expliquent comment un cluster Amazon EMR utilise une clé KMS pour chiffrer des données au repos.

**Important**  
Amazon EMR prend uniquement en charge les [clés KMS symétriques](symm-asymm-choose-key-spec.md#symmetric-cmks). Vous ne pouvez pas utiliser une [clé KMS asymétrique](symmetric-asymmetric.md) pour chiffrer les données au repos dans un cluster Amazon EMR. Pour obtenir de l'aide sur la détermination de la symétrie ou de l'asymétrie d'une clé KMS, veuillez consulter [Identifier les différents types de clés](identify-key-types.md).

Les clusters Amazon EMR chiffrent également les données *en transit*, ce qui signifie que le cluster chiffre les données avant de les envoyer via le réseau. Vous ne pouvez pas utiliser une clé KMS pour chiffrer des données en transit. Pour de plus amples informations, veuillez consulter [Chiffrement des données en transit](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html#emr-encryption-intransit) dans le *guide de gestion Amazon EMR*.

Pour plus d'informations sur toutes les options de chiffrement disponibles dans Amazon EMR, veuillez consulter [Options de chiffrement](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html) dans le *guide de gestion Amazon EMR*.

**Topics**
+ [Chiffrement des données dans le système de fichiers EMR (EMRFS)](#emrfs-encryption)
+ [Chiffrement des données sur les volumes de stockage de nœuds de Cluster](#emr-local-disk-encryption)
+ [Contexte de chiffrement](#emr-encryption-context)

## Chiffrement des données dans le système de fichiers EMR (EMRFS)
<a name="emrfs-encryption"></a>

Les clusters Amazon EMR utilisent deux systèmes de fichiers distribués :
+ Le système de fichiers distribué Hadoop (HDFS). Le chiffrement HDFS n'utilise pas une clé KMS dans AWS KMS.
+ Le système de fichiers EMR (EMRFS). EMRFS est une implémentation de HDFS, qui permet aux clusters Amazon EMR de stocker des données dans Amazon Simple Storage Service (Amazon S3). EMRFS prend en charge quatre options de chiffrement, dont deux utilisent une clé KMS dans AWS KMS. Pour plus d'informations sur les quatre options de chiffrement EMRFS, veuillez consulter [Options de chiffrement](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-data-encryption-options.html) dans le *guide de gestion Amazon EMR*.

Les deux options de chiffrement EMRFS qui utilisent une clé KMS font appel aux fonctions de chiffrement suivantes proposées par Amazon S3 :
+ [Protection des données à l'aide du chiffrement côté serveur avec AWS Key Management Service (SSE-KMS](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html)). Le cluster Amazon EMR envoie les données à Simple Storage Service (Amazon S3). Simple Storage Service (Amazon S3) utilise une clé KMS pour chiffrer les données avant de les enregistrer dans un compartiment S3. Pour en savoir plus sur la façon dont cela fonctionne, veuillez consulter [Processus de chiffrement des données sur EMRFS avec SSE-KMS](#emrfs-encryption-sse-kms).
+ [Protection des données via le chiffrement côté client](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingClientSideEncryption.html) (CSE-KMS). Les données d'un Amazon EMR sont chiffrées sous une AWS KMS key avant d'être envoyées à Simple Storage Service (Amazon S3) pour y être stockées. Pour en savoir plus sur la façon dont cela fonctionne, veuillez consulter [Processus de chiffrement des données sur EMRFS avec CSE-KMS](#emrfs-encryption-cse-kms).

Lorsque vous configurez un cluster Amazon EMR pour chiffrer les données sur EMRFS avec une clé KMS, vous choisissez la clé KMS que vous voulez que le cluster Amazon EMR ou Simple Storage Service (Amazon S3) utilise. Avec SSE-KMS, vous pouvez choisir la Clé gérée par AWS pour Amazon S3 avec l'alias **aws/s3**, ou une clé symétrique gérée par le client que vous créez. Avec le chiffrement côté client, vous devez choisir une clé symétrique gérée par le client que vous créez. Lorsque vous choisissez une clé gérée par le client, vous devez vous assurer que votre cluster Amazon EMR est autorisé à utiliser la clé KMS. Pour plus d'informations, consultez la section [Utilisation à AWS KMS keys des fins de chiffrement](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-encryption-enable.html#emr-awskms-keys) dans le *guide de gestion Amazon EMR.*

Pour le chiffrement côté serveur et côté client, la clé KMS que vous choisissez est la clé racine dans un flux de [chiffrement d'enveloppe](kms-cryptography.md#enveloping). Les données sont chiffrées à l'aide d'une [clé de données](data-keys.md) unique cryptée sous la clé KMS dans AWS KMS. Les données chiffrées et une copie chiffrée de leur clé de données sont stockées ensemble en tant qu'objet chiffré unique dans un compartiment S3. Pour plus d'informations sur la façon dont cela fonctionne, consultez les rubriques suivantes.

**Topics**
+ [Processus de chiffrement des données sur EMRFS avec SSE-KMS](#emrfs-encryption-sse-kms)
+ [Processus de chiffrement des données sur EMRFS avec CSE-KMS](#emrfs-encryption-cse-kms)

### Processus de chiffrement des données sur EMRFS avec SSE-KMS
<a name="emrfs-encryption-sse-kms"></a>

Lorsque vous configurez un cluster Amazon EMR pour utiliser SSE-KMS, le processus de chiffrement fonctionne comme suit :

1. Le cluster envoie les données à Amazon S3 pour leur stockage dans un compartiment S3.

1. Amazon S3 envoie une [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)demande à AWS KMS, en spécifiant l'ID de clé KMS que vous avez choisi lorsque vous avez configuré le cluster pour utiliser SSE-KMS. La demande inclut le contexte de chiffrement. Pour plus d'informations, veuillez consulter [Contexte de chiffrement](#emr-encryption-context).

1. AWS KMS génère une clé de chiffrement de données unique (clé de données), puis envoie deux copies de cette clé de données à Amazon S3. Une copie est non chiffrée (texte brut) et l'autre copie est chiffrée sous la clé KMS.

1. Amazon S3 utilise la clé de données en texte brut pour chiffrer les données reçues à l'étape 1, puis supprime la clé de données en texte brut de la mémoire dès que possible après usage.

1. Amazon S3 stocke ensemble les données chiffrées et la copie chiffrée de la clé de données en tant qu'objet chiffré unique dans un compartiment S3.

Le processus de déchiffrement fonctionne comme suit :

1. Le cluster demande un objet de données chiffré depuis un compartiment S3.

1. Amazon S3 extrait la clé de données chiffrée de l'objet S3, puis envoie la clé de données chiffrée à AWS KMS avec une demande de [déchiffrement](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html). La demande comprend un [contexte de chiffrement](encrypt_context.md).

1. AWS KMS déchiffre la clé de données chiffrée à l'aide de la même clé KMS que celle utilisée pour la chiffrer, puis envoie la clé de données déchiffrée (texte brut) à Amazon S3.

1. Amazon S3 utilise la clé de données en texte brut pour déchiffrer les données chiffrées, puis supprime la clé de données en texte brut de la mémoire dès que possible après usage.

1. Amazon S3 envoie les données déchiffrées au cluster.

### Processus de chiffrement des données sur EMRFS avec CSE-KMS
<a name="emrfs-encryption-cse-kms"></a>

Lorsque vous configurez un cluster Amazon EMR pour utiliser CSE-KMS, le processus de chiffrement fonctionne comme suit :

1. Lorsqu'il est prêt à stocker des données dans Amazon S3, le cluster envoie une [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)demande à AWS KMS, en spécifiant l'ID de clé KMS que vous avez choisi lorsque vous avez configuré le cluster pour utiliser CSE-KMS. La demande inclut le contexte de chiffrement. Pour plus d'informations, veuillez consulter [Contexte de chiffrement](#emr-encryption-context).

1. AWS KMS génère une clé de chiffrement de données unique (clé de données), puis envoie deux copies de cette clé de données au cluster. Une copie est non chiffrée (texte brut) et l'autre copie est chiffrée sous la clé KMS.

1. Le cluster utilise la clé de données en texte brut pour chiffrer les données, puis supprime la clé de données en texte brut de la mémoire dès que possible après usage.

1. Le cluster combine les données chiffrées et la copie chiffrée de la clé de données en un objet chiffré unique.

1. Le cluster envoie l'objet chiffré à Amazon S3 pour stockage.

Le processus de déchiffrement fonctionne comme suit :

1. Le cluster demande l'objet de données chiffré depuis un compartiment S3.

1. Amazon S3 envoie l'objet chiffré au cluster.

1. Le cluster extrait la clé de données chiffrée de l'objet chiffré, puis envoie la clé de données chiffrée AWS KMS à une demande de [déchiffrement](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html). La demande inclut le [contexte de chiffrement](encrypt_context.md).

1. AWS KMS déchiffre la clé de données chiffrée à l'aide de la même clé KMS que celle utilisée pour la chiffrer, puis envoie la clé de données déchiffrée (texte brut) au cluster.

1. Le cluster utilise la clé de données en texte brut pour déchiffrer les données chiffrées, puis supprime la clé de données en texte brut de la mémoire dès que possible après usage.

## Chiffrement des données sur les volumes de stockage de nœuds de Cluster
<a name="emr-local-disk-encryption"></a>

Un cluster Amazon EMR est une collection d'instances Amazon Elastic Compute Cloud (Amazon EC2). Chaque instance du cluster est appelée *nœud de cluster* ou *nœud*. Chaque nœud peut avoir deux types de volumes de stockage : des volumes de stockage d'instance et des volumes Amazon Elastic Block Store (Amazon EBS). Vous pouvez configurer le cluster pour utiliser [Linux Unified Key Setup (LUKS)](https://gitlab.com/cryptsetup/cryptsetup/blob/master/README.md) pour chiffrer les deux types de volumes de stockage sur les nœuds (mais pas le volume de démarrage de chaque nœud). Il s'agit du *chiffrement de disque local*.

Lorsque vous activez le chiffrement de disque local pour un cluster, vous pouvez choisir de chiffrer la clé LUKS avec une clé KMS dans AWS KMS. Vous devez choisir une [clé gérée par le client](concepts.md#customer-mgn-key) que vous créez ; vous ne pouvez pas utiliser une [Clé gérée par AWS](concepts.md#aws-managed-key). Si vous choisissez une clé gérée par le client, vous devez vous assurer que votre cluster Amazon EMR est autorisé à utiliser la clé KMS. Pour plus d'informations, consultez la section [Utilisation à AWS KMS keys des fins de chiffrement](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-encryption-enable.html#emr-awskms-keys) dans le *guide de gestion Amazon EMR.*

Lorsque vous activez le chiffrement de disque local à l'aide d'une clé KMS, le processus de chiffrement fonctionne comme ceci :

1. Lorsque chaque nœud de cluster est lancé, il envoie une [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)demande à AWS KMS, spécifiant l'ID de clé KMS que vous avez choisi lorsque vous avez activé le chiffrement de disque local pour le cluster.

1. AWS KMS génère une clé de chiffrement de données unique (clé de données), puis envoie deux copies de cette clé de données au nœud. Une copie est non chiffrée (texte brut) et l'autre copie est chiffrée sous la clé KMS.

1. Le nœud utilise une version encodée en base 64 de la clé de données en texte brut comme mot de passe qui protège la clé LUKS. Le nœud enregistre la copie chiffrée de la clé de données sur le volume de démarrage.

1. [Si le nœud redémarre, le nœud redémarré envoie la clé de données chiffrée à AWS KMS avec une demande de déchiffrement.](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)

1. AWS KMS déchiffre la clé de données chiffrée à l'aide de la même clé KMS que celle utilisée pour la chiffrer, puis envoie la clé de données déchiffrée (texte brut) au nœud.

1. Le nœud utilise la version encodée en base 64 de la clé de données en texte brut comme mot de passe pour déverrouiller la clé LUKS.

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

Chaque AWS service intégré AWS KMS peut spécifier un [contexte de chiffrement](encrypt_context.md) lorsque le service est utilisé AWS KMS pour générer des clés de données ou pour chiffrer ou déchiffrer des données. Le contexte de chiffrement est une information authentifiée supplémentaire AWS KMS utilisée pour vérifier l'intégrité des données. Quand service spécifie un contexte de chiffrement pour une opération de chiffrement, il doit spécifier le même contexte de chiffrement pour l'opération de déchiffrement correspondante, sinon le déchiffrement échouera. Le contexte de chiffrement est également écrit dans les fichiers AWS CloudTrail journaux, ce qui peut vous aider à comprendre pourquoi une clé KMS spécifique a été utilisée. 

La section suivante décrit le contexte de chiffrement utilisé dans chaque scénario de chiffrement Amazon EMR qui utilise une clé KMS.

### Contexte de chiffrement pour le chiffrement EMRFS avec SSE-KMS
<a name="emr-encryption-context-sse-kms"></a>

Avec SSE-KMS, le cluster Amazon EMR envoie les données à Amazon S3, puis Amazon S3 utilise une clé KMS pour chiffrer les données avant de les enregistrer dans un compartiment S3. Dans ce cas, Amazon S3 utilise le nom de ressource Amazon (ARN) de l'objet S3 comme contexte de chiffrement pour chaque demande [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)de [déchiffrement](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) à AWS KMS laquelle il envoie. L'exemple suivant montre une représentation JSON du contexte de chiffrement qu'Amazon S3 utilise.

```
{ "aws:s3:arn" : "arn:aws:s3:::S3_bucket_name/S3_object_key" }
```

### Contexte de chiffrement pour le chiffrement EMRFS avec CSE-KMS
<a name="emr-encryption-context-cse-kms"></a>

Avec CSE-KMS, le cluster Amazon EMR utilise une clé KMS pour chiffrer les données avant de les envoyer à Amazon S3 pour stockage. Dans ce cas, le cluster utilise l'Amazon Resource Name (ARN) de la clé KMS comme contexte de chiffrement pour chaque [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)demande de [déchiffrement](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) à AWS KMS laquelle il envoie. L'exemple suivant montre une représentation JSON du contexte de chiffrement que le cluster utilise.

```
{ "kms_cmk_id" : "arn:aws:kms:us-east-2:111122223333:key/0987ab65-43cd-21ef-09ab-87654321cdef" }
```

### Contexte de chiffrement pour le chiffrement de disque Local avec LUKS
<a name="emr-encryption-context-luks"></a>

Lorsqu'un cluster Amazon EMR utilise le chiffrement de disque local avec LUKS, les nœuds du cluster ne spécifient pas le contexte de chiffrement des demandes [GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)et de [déchiffrement auxquelles](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) ils envoient. AWS KMS

# Comment Amazon Redshift utilise AWS KMS
<a name="services-redshift"></a>

Cette rubrique explique comment Amazon Redshift crypte AWS KMS les données.

**Topics**
+ [Chiffrement Amazon Redshift](#rs-encryption)
+ [Contexte de chiffrement](#rs-encryptioncontext)

## Chiffrement Amazon Redshift
<a name="rs-encryption"></a>

Un entrepôt des données Amazon Redshift est un ensemble de ressources informatiques appelées nœuds, qui sont organisées en un groupe appelé cluster. Chaque cluster exécute un moteur Amazon Redshift et contient une ou plusieurs bases de données. 

Amazon Redshift utilise une architecture à quatre niveaux de clés pour le chiffrement. Cette architecture se compose de clés de chiffrement des données, d'une clé de base de données, d'une clé de cluster et d'une clé racine. Vous pouvez utiliser un AWS KMS key comme clé racine.

Les clés de chiffrement de données chiffrent les blocs de données contenus dans le cluster. Chaque bloc de données se voit attribuer une clé AES-256 générée de façon aléatoire. Ces clés sont chiffrées à l'aide de la clé de base de données du cluster. 

La clé de base de données chiffre les clés de chiffrement de données contenues dans le cluster. La clé de base de données est une clé AES-256 générée de façon aléatoire. Elle est stockée sur disque dans un autre réseau que celui du cluster Amazon Redshift et transmise au cluster via un canal sécurisé. 

La clé de cluster chiffre la clé de base de données du cluster Amazon Redshift. Vous pouvez utiliser AWS KMS AWS CloudHSM, ou un module de sécurité matérielle (HSM) externe pour gérer la clé de cluster. Consultez la documentation relative au [chiffrement de base de données Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-db-encryption.html) pour plus d'informations. 

Vous pouvez demander le chiffrement en cochant la case appropriée dans la console Amazon Redshift. Vous pouvez spécifier une [clé gérée par le client](concepts.md#customer-mgn-key) en la choisissant dans la liste qui s'affiche sous la zone de chiffrement. Si vous ne spécifiez pas de clé gérée par le client, Amazon Redshift utilise la [Clé gérée par AWS](concepts.md#aws-managed-key) pour Amazon Redshift sous votre compte. 

**Important**  
Amazon Redshift prend uniquement en charge les clés KMS de chiffrement symétriques. Vous ne pouvez pas utiliser une clé KMS asymétrique dans un flux de travail de chiffrement Amazon Redshift. Pour obtenir de l'aide sur la détermination de la symétrie ou de l'asymétrie d'une clé KMS, consultez [Identifier les différents types de clés](identify-key-types.md).

## Contexte de chiffrement
<a name="rs-encryptioncontext"></a>

Chaque service intégré AWS KMS spécifie un [contexte de chiffrement](encrypt_context.md) lors de la demande de clés de données, du chiffrement et du déchiffrement. Le contexte de chiffrement est constitué de données authentifiées supplémentaires (AAD) AWS KMS utilisées pour vérifier l'intégrité des données. Autrement dit, lorsqu'un contexte de chiffrement est spécifié pour une opération de chiffrement, le service le spécifie également pour l'opération de déchiffrement, ou le déchiffrement échoue. Amazon Redshift utilise l'ID de cluster et le temps de création du contexte de chiffrement. Dans le `requestParameters` champ d'un fichier CloudTrail journal, le contexte de chiffrement sera similaire à celui-ci. 

```
"encryptionContext": {
    "aws:redshift:arn": "arn:aws:redshift:region:account_ID:cluster:cluster_name",
    "aws:redshift:createtime": "20150206T1832Z"
},
```

 Vous pouvez effectuer une recherche sur le nom du cluster dans vos CloudTrail journaux pour comprendre quelles opérations ont été effectuées à l'aide d'une AWS KMS key (clé KMS). Les opérations incluent le chiffrement du cluster, le déchiffrement du cluster et la génération de clés de données. 