

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.

# Travailler avec AWS KMS keys
<a name="kms-keys"></a>

An AWS KMS key fait référence à une clé logique qui peut faire référence à une ou plusieurs clés de sauvegarde du module de sécurité matériel (HSM) (HBKs). Cette rubrique explique comment créer une clé KMS, importer des éléments d'une clé, et comment activer, désactiver, effectuer une rotation et supprimer des clés KMS.

**Note**  
AWS KMS remplace le terme *clé principale du client (CMK)* par *AWS KMS key**clé KMS*. Le concept n'a pas changé. Pour éviter des modifications AWS KMS intempestives, certaines variantes de ce terme sont conservées.

Ce chapitre traite du cycle de vie d'une clé KMS, de sa création à sa suppression, comme illustré dans l'image suivante.

![\[Cycle de vie des clés KMS.\]](http://docs.aws.amazon.com/fr_fr/kms/latest/cryptographic-details/images/keystate.png)


**Topics**
+ [Appel CreateKey](create-key.md)
+ [Importation des éléments de clé](importing-key-material.md)
+ [Activation et désactivation de clés](enable-and-disable-key.md)
+ [Suppression de clés](key-deletion.md)
+ [Rotation des éléments de clé](rotate-customer-master-key.md)

# Appel CreateKey
<a name="create-key"></a>

Un AWS KMS key est généré à la suite d'un appel à l'appel [https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)d'API.

Les éléments suivants sont un sous-ensemble de la [`CreateKey` syntaxe de demande](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html#API_CreateKey_RequestSyntax).

```
{
  "Description": "string",
  "KeySpec": "string",
  "KeyUsage": "string",
  "Origin": "string";
  "Policy": "string"
}
```

Cette demande accepte les données suivantes au format JSON.

**Description**  
(Facultatif) Description de la clé. Nous vous recommandons de choisir une description qui vous aide à déterminer si la clé est appropriée pour une tâche donnée.

**KeySpec**  
Spécifie le type de clé KMS à créer. La valeur par défaut, SYMMETRIC\$1DEFAULT, crée une clé KMS de chiffrement symétrique. Ce paramètre est facultatif pour les clés de chiffrement symétriques et obligatoire pour toutes les autres spécifications de clé.

**KeyUsage**  
Spécifie l'utilisation de la clé. Les valeurs valides sont `ENCRYPT_DECRYPT`, `SIGN_VERIFY` ou `GENERATE_VERIFY_MAC`. La valeur par défaut est `ENCRYPT_DECRYPT`. Ce paramètre est facultatif pour les clés de chiffrement symétriques et obligatoire pour toutes les autres spécifications de clé.

** Origin**  
(Facultatif) Spécifie la source du matériel de clé pour la clé KMS. La valeur par défaut est`AWS_KMS`, ce qui indique que le matériel clé de la clé KMS est AWS KMS généré et géré. Les autres valeurs valides incluent`EXTERNAL`, qui représente une clé KMS créée sans matériel clé pour le [matériel clé importé](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html), et `AWS_CLOUDHSM` qui crée une clé KMS dans un [magasin de clés personnalisé](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html) soutenu par un AWS CloudHSM cluster que vous contrôlez.

**Politique**  
(Facultatif) Politique à associer à la clé. Si la politique est omise, la clé sera créée avec la politique par défaut (suivante) qui autorise le compte racine et les principaux IAM disposant des AWS KMS autorisations pour la gérer.

Pour de plus amples informations sur la stratégie, consultez [Stratégies de clé dans AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) et [Stratégie de clé par défaut](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-default.html) dans le *Guide du développeur AWS Key Management Service *.

La demande `CreateKey` renvoie une [réponse](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html#API_CreateKey_ResponseSyntax) qui inclut un ARN de clé.

```
arn:<partition>:kms:<region>:<account-id>:key/<key-id>
```

Si l'`Origin` est `AWS_KMS`, après la création de l'ARN, une demande à une clé AWS KMS HSM sera effectuée sur une session authentifiée aux fins de provisionner une clé de sauvegarde (HBK) du module de sécurité matériel (HSM). La clé HBK est une clé de 256 bits associée à cet ID de clé de la clé KMS. Elle peut uniquement être générée sur une clé HSM et conçue pour ne jamais être exportée en dehors de la limite de la clé HSM en texte clair. La clé HBK est chiffrée sous la clé de domaine actuelle, DK0. Ces jetons chiffrés HBKs sont appelés jetons clés chiffrés (EKTs). Bien qu'elle HSMs puisse être configurée pour utiliser diverses méthodes d'encapsulation de clés, l'implémentation actuelle utilise l'AES-256 en mode compteur Galois (GCM), un schéma de cryptage authentifié. Ce mode de chiffrement authentifié nous permet de protéger certaines métadonnées de jeton de clé exportées en texte clair.

Cette valeur est représentée comme :

```
EKT = Encrypt(DK0, HBK)
```

Deux formes fondamentales de protection sont fournies à vos clés KMS et aux suivantes HBKs : les politiques d'autorisation définies sur vos clés KMS et les protections cryptographiques sur les clés associées HBKs. Les sections restantes décrivent les protections cryptographiques et la sécurité des fonctions de gestion dans AWS KMS. 

En plus de l'ARN, vous pouvez créer un nom convivial et l'associer à la clé KMS en créant un *alias* pour la clé. Après avoir associé un alias à une clé KMS, l'alias pourra être utilisé pour identifier la clé KMS dans les opérations cryptographiques. Pour plus d'informations, consultez la rubrique [Utilisation d'alias](https://docs.aws.amazon.com/kms/latest/developerguide/kms-alias.html) dans le *AWS Key Management Service Guide du développeur*.

Plusieurs niveaux d'autorisation entourent l'utilisation des clés KMS. AWS KMS active des politiques d'autorisation distinctes entre le contenu chiffré et la clé KMS. Par exemple, un AWS KMS objet Amazon Simple Storage Service (Amazon S3) chiffré sous enveloppe hérite de la politique sur le compartiment Amazon S3. Toutefois, l'accès à la clé de chiffrement nécessaire est déterminé par la politique d'accès sur la clé KMS. Pour plus d'informations sur l'autorisation des clés KMS, consultez [Authentification et contrôle d'accès pour AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/control-access.html) dans le *AWS Key Management Service Guide du développeur*.

# Importation des éléments de clé
<a name="importing-key-material"></a>

AWS KMS fournit un mécanisme pour importer le matériel cryptographique utilisé pour un HBK. Comme décrit dans[Appel CreateKey](create-key.md), lorsque la CreateKey commande est utilisée avec `Origin` set to`EXTERNAL`, une clé KMS logique est créée qui ne contient aucun HBK sous-jacent. Les éléments cryptographiques doivent être importés à l'aide d'un [https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html)Appel d'API. Vous pouvez utiliser cette fonction pour contrôler la création de clés et la durabilité des éléments cryptographiques. Si vous utilisez cette fonctionnalité, nous vous recommandons de faire preuve d'une grande prudence dans la manipulation et la durabilité de ces clés dans votre environnement. Pour obtenir des détails complets et des recommandations sur l'importation des éléments de clé, consultez [Importation des éléments de clé](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) dans le *AWS Key Management Service guide du développeur*.

## Appel ImportKeyMaterial
<a name="importkeymaterial"></a>

La `ImportKeyMaterial` demande importe les éléments cryptographiques nécessaires pour la clé HBK. Les éléments cryptographiques doivent être une clé symétrique de 256 bits. Elle doit être chiffrée à l'aide de l'algorithme indiqué dans `WrappingAlgorithm` sous la clé publique retournée à partir d'un récente [https://docs.aws.amazon.com/kms/latest/APIReference/API_GetParametersForImport.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_GetParametersForImport.html) demande.

[Une `ImportKeyMaterial` demande](https://docs.aws.amazon.com/kms/latest/APIReference/API_ImportKeyMaterial.html#API_ImportKeyMaterial_RequestSyntax) accepte les arguments suivants :

```
{
  "EncryptedKeyMaterial": blob,
  "ExpirationModel": "string",
  "ImportToken": blob,
  "KeyId": "string",
  "ValidTo": number
}
```

**EncryptedKeyMaterial**  
Le matériel de clé importé chiffré avec la clé publique renvoyée dans une demande `GetParametersForImport` à l'aide de l'algorithme d'encapsulation spécifié dans cette demande. 

**ExpirationModel**  
Indique si les éléments de clé arrivent à expiration. Lorsque cette valeur est `KEY_MATERIAL_EXPIRES`, le `ValidTo` paramètre doit contenir une date d'expiration. Lorsque cette valeur est `KEY_MATERIAL_DOES_NOT_EXPIRE`, n'incluez pas les éléments du `ValidTo` paramètre. Les valeurs valides sont `"KEY_MATERIAL_EXPIRES"` et `"KEY_MATERIAL_DOES_NOT_EXPIRE"`.

**ImportToken**  
Le jeton d'importation renvoyé par le même demande `GetParametersForImport` qui a fourni la clé publique.

**KeyId**  
La clé KMS qui sera associée au matériau de clé importé. La `Origin` de la clé KMS doit être `EXTERNAL`.  
Vous pouvez supprimer et réimporter le *même* matériel de clé importé dans la clé KMS spécifiée, mais vous ne pouvez pas importer ou associer la clé KMS à un autre matériel de clé.

**ValidTo**  
(Facultatif) L'heure à laquelle les éléments de clé importés arrivent à expiration. Lorsque les éléments de clé expirent, AWS KMS supprime les éléments de clé et la clé KMS devient inutilisable. Ce paramètre est obligatoire lorsque la valeur de `ExpirationModel` est `KEY_MATERIAL_EXPIRES`. Sinon, elle n'est pas valide.

Lorsque la demande aboutit, la clé KMS peut être utilisée AWS KMS jusqu'à la date d'expiration spécifiée, si elle est fournie. Une fois le matériel clé importé expiré, l'EKT est supprimé de la couche de AWS KMS stockage. 

# Activation et désactivation de clés
<a name="enable-and-disable-key"></a>

La désactivation d'une clé KMS empêche la clé d'être utilisée dans des opérations de chiffrement. Cela suspend la possibilité d'utiliser tout HBKs ce qui est associé à la clé KMS. L'activation rétablit l'utilisation de la clé HBKs et de la clé KMS. [Activer](https://docs.aws.amazon.com/kms/latest/APIReference/API_Enable.html) et [Désactiver](https://docs.aws.amazon.com/kms/latest/APIReference/API_Disable.html) sont de simples demandes qui acceptent uniquement l'ID de clé ou l'ARN de clé de la clé KMS.

# Suppression de clés
<a name="key-deletion"></a>

Les utilisateurs autorisés peuvent utiliser l'[https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html)API pour planifier la suppression d'une clé KMS et de toutes les clés associées HBKs. Il s'agit d'une opération intrinsèquement destructrice, et vous devez faire preuve de prudence lorsque vous supprimez des clés de AWS KMS. AWS KMS impose un délai d'attente minimal de sept jours lors de la suppression des clés KMS. Pendant la période d'attente, la clé est placée dans un état désactivé avec un état de clé** Suppression en attente**. Tous les appels à utiliser la clé pour des opérations cryptographiques échoueront. ScheduleKeyDeletion prend les arguments suivants.

```
{
  "KeyId": "string",
  "PendingWindowInDays": number
}
```

**KeyId**  
L'identifiant unique de la clé KMS à supprimer. Pour préciser cette valeur, utilisez l'ID de clé unique ou l'ARN de clé de la clé KMS. 

** PendingWindowInDays**  
(Facultatif) La période d'attente en nombre de jours. Cette valeur est facultative. La plage est comprise entre 7 et 30 jours et la valeur par défaut est de 30 jours. Une fois la période d'attente terminée, AWS KMS supprime la clé KMS et toutes les clés associées HBKs.

# Rotation des éléments de clé
<a name="rotate-customer-master-key"></a>

Les utilisateurs autorisés peuvent activer la rotation annuelle automatique de leurs clés KMS gérées par le client. les Clés gérées par AWS sont toujours soumises à rotation chaque année. 

En cas de rotation d'une clé KMS, une nouvelle clé HBK sera créée et signalée comme la version actuelle du matériel de la clé pour toutes les nouvelles demandes de chiffrement. Toutes les versions précédentes de la clé HBK restent disponibles pour être utilisées à perpétuité pour déchiffrer les textes chiffrés qui ont été chiffrés à l'aide de cette version de clé HBK. Étant donné qu'il AWS KMS ne stocke aucun texte chiffré sous une clé KMS, les textes chiffrés sous une ancienne clé HBK pivotée nécessitent que celle-ci soit déchiffrée. Vous pouvez utiliser l'API [https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html) pour rechiffrer tout texte chiffré sous la nouvelle clé HBK pour la clé KMS ou sous une autre clé KMS sans exposer le texte en clair.

Pour plus d'informations sur l'activation et la désactivation de la rotation de clés, consultez la section [Rotation des clés KMS AWS](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) dans le *AWS Key Management Service Guide du développeur*.