Suppression de AWS KMS keys - AWS Key Management Service

Suppression de AWS KMS keys

La suppression d'une AWS KMS key est destructrice et potentiellement dangereuse. Elle supprime les éléments de clé et toutes les métadonnées associées à la clé KMS, et elle est irréversible. Après la suppression d'une clé KMS, vous ne pouvez plus déchiffrer les données chiffrées sous cette clé, ce qui signifie que les données deviennent irrécupérables. Vous devez supprimer une clé KMS seulement lorsque vous êtes sûr de ne plus avoir besoin de l'utiliser. Si vous n'en êtes pas sûr, envisagez de désactiver la clé KMS au lieu de la supprimer. Vous pouvez réactiver une clé KMS désactivée si vous avez besoin de l'utiliser ultérieurement, mais vous ne pouvez pas récupérer une clé KMS supprimée.

Vous ne pouvez pas planifier la suppression d'une clé gérée par le client. Vous ne pouvez pas supprimer des Clés gérées par AWS ou Clés détenues par AWS.

Avant de supprimer une clé KMS, vous pouvez découvrir combien de textes chiffrés ont été chiffrés sous cette clé. AWS KMS ne stocke pas ces informations et ne stocke aucun texte chiffré. Pour obtenir ces informations, vous devez déterminer l'utilisation passée d'une clé KMS. Pour obtenir de l'aide, rendez-vous sur Déterminer l'utilisation passée d'une clé KMS.

AWS KMS ne supprime jamais vos clés KMS, sauf si vous les planifiez explicitement pour suppression et que la période d'attente obligatoire expire.

Toutefois, vous pouvez choisir de supprimer une clé KMS pour une ou plusieurs des raisons suivantes :

  • Pour terminer le cycle de vie de clés KMS dont vous n'avez plus besoin

  • Pour éviter les frais généraux et les coûts de gestion associés à la maintenance des clés KMS inutilisées

  • Pour réduire le nombre de clés KMS qui comptent par rapport à votre quota de ressources de clés KMS

Note

Si vous fermez ou supprimez votre Compte AWS, vos clés KMS deviennent inaccessibles et ne vous sont plus facturées. Vous n'avez pas besoin de planifier la suppression de vos clés KMS distinctement de la fermeture de votre compte.

AWS KMS enregistre une entrée dans votre journal AWS CloudTrail lorsque vous planifiez la suppression de la clé KMS et lorsque la clé KMS est réellement supprimée.

Pour plus d'informations sur la suppression de clés principales et de réplica multi-région, veuillez consulter Suppression de clés multi-régions.

À propos de la période d'attente

Étant donné que la suppression d'une clé KMS est une action destructrice et potentiellement dangereuse, AWS KMS vous oblige à définir un délai d'attente de 7 à 30 jours. La période d'attente par défaut est de 30 jours.

Cependant, la période d'attente réelle peut être jusqu'à 24 heures plus longue celle que vous avez planifiée. Pour obtenir la date et l'heure réelles de suppression de la clé KMS, utilisez l'opération DescribeKey. Ou, dans la console AWS KMS, dans la page de détails de la clé KMS, dans la section General configuration (Configuration générale), veuillez consulter la Scheduled deletion date (Date de suppression planifiée). Assurez-vous de noter le fuseau horaire.

Pendant la période d'attente, l'état de la clé KMS est Pending deletion (Suppression en attente).

Après la fin du délai d'attente, AWS KMS supprime la clé KMS, ses alias et toutes les métadonnées AWS KMS associées.

Utilisez la période d'attente pour vous assurer de ne pas avoir besoin de la clé KMS maintenant ni par la suite. Vous pouvez configurer une alarme Amazon CloudWatch pour être averti si une personne ou une application tente d'utiliser la clé KMS pendant la période d'attente. Pour récupérer la clé KMS, vous pouvez annuler la suppression de clé avant la fin de la période d'attente. Une fois la période d'attente terminée, vous ne pouvez pas annuler la suppression de la clé et AWS KMS supprime la clé KMS.

Suppression des clés KMS asymétriques

Les utilisateurs autorisés peuvent supprimer des clés KMS symétriques ou asymétriques. La procédure pour planifier la suppression de ces clés KMS est la même pour les deux types de clés. Cependant, comme la clé publique d'une clé KMS asymétrique peut être téléchargée et utilisée en dehors d'AWS KMS, l'opération présente des risques supplémentaires importants, en particulier pour les clés KMS asymétriques utilisées pour le chiffrement (l'utilisation de la clé est ENCRYPT_DECRYPT).

  • Lorsque vous planifiez la suppression d'une clé KMS, l'état de la clé KMS devient Pending deletion (Suppression en attente), et la clé ne peut pas être utilisée dans les opérations cryptographiques. Cependant, la suppression de la planification n'a aucun effet sur les clés publiques en dehors d'AWS KMS. Les utilisateurs disposant de la clé publique peuvent continuer à les utiliser pour chiffrer les messages. Ils ne reçoivent aucune notification indiquant que l'état de la clé est modifié. Sauf si la suppression est annulée, le texte chiffré créé avec la clé publique ne peut pas être déchiffré.

  • Les alarmes, les journaux et les autres politiques qui détectent les tentatives d'utilisation de la clé KMS en attente de suppression ne peuvent pas détecter l'utilisation de la clé publique en dehors d'AWS KMS.

  • Lorsque la clé KMS est supprimée, toutes les actions AWS KMS impliquant cette clé échouent. Toutefois, les utilisateurs disposant de la clé publique peuvent continuer à les utiliser pour chiffrer les messages. Ces textes chiffrés ne peuvent pas être déchiffrés.

Si vous devez supprimer une clé KMS asymétrique avec une utilisation de clé ENCRYPT_DECRYPT, utilisez vos entrées de journal CloudTrail pour déterminer si la clé publique a été téléchargée et partagée. Si c'est le cas, vérifiez que la clé publique n'est pas utilisée en dehors d'AWS KMS. Ensuite, pensez à désactiver la clé KMS au lieu de la supprimer.

Suppression de clés multi-région

Les utilisateurs qui sont autorisés peuvent planifier la suppression des clés principales et de réplica multi-région. Toutefois, AWS KMS ne supprimera pas une clé principale multi-région qui possède des clés de réplica. Aussi, tant que sa clé principale existe, vous pouvez recréer une clé de réplica multi-région supprimée. Pour plus de détails, veuillez consulter Suppression de clés multi-régions.

Planification et annulation d'une suppression de clé

Les procédures suivantes décrivent comment planifier une suppression de clé et annuler la suppression de AWS KMS keys (clés KMS) à région unique dans AWS KMS à l'aide de la AWS Management Console, de l'AWS CLI et de AWS SDK for Java.

Pour plus d'informations sur la planification de la suppression de clés multi-région, veuillez consulter Suppression de clés multi-régions.

Avertissement

La suppression d'une clé KMS est destructrice et potentiellement dangereuse. Vous devez y avoir recours seulement lorsque vous êtes sûr de ne plus avoir besoin d'utiliser la clé KMS maintenant ni par la suite. Si vous n'en êtes pas sûr, vous devriez désactiver la clé KMS au lieu de la supprimer.

Avant de pouvoir supprimer une clé KMS, vous devez avoir la permission de le faire. Si vous comptez sur la seule politique de clé pour spécifier des autorisations AWS KMS, vous pouvez avoir besoin d'ajouter des autorisations supplémentaires avant de pouvoir supprimer la clé KMS. Pour en savoir plus sur l'ajout de ces autorisations, consultez la rubrique Ajout d'une autorisation pour planifier et annuler une suppression de clé.

AWS KMS enregistre une entrée dans votre journal AWS CloudTrail lorsque vous planifiez la suppression de la clé KMS et lorsque la clé KMS est réellement supprimée.

Planification et annulation d'une suppression de clé (console)

Dans la AWS Management Console, vous pouvez planifier et annuler la suppression de plusieurs clés KMS à la fois.

Pour planifier une suppression de clé

  1. Connectez-vous à la AWS Management Console et ouvrez la console AWS Key Management Service (AWS KMS) à l'adresse https://console.aws.amazon.com/kms

  2. Pour changer de Région AWS, utilisez le sélecteur de région dans l'angle supérieur droit de la page.

  3. Dans le volet de navigation, choisissez Clés gérées par le client.

    Vous ne pouvez pas planifier la suppression deClés gérées par AWS ou de Clés détenues par AWS.

  4. Cochez la case en regard de la clé KMS que vous souhaitez supprimer.

  5. Choisissez Actions de clé, Planifier une suppression de clé.

  6. Lisez et tenez compte de l'avertissement et des informations sur l'annulation de la suppression pendant la période d'attente. Si vous décidez d'annuler la suppression, en bas de la page, sélectionnez Cancel (Annuler).

  7. Pour Période d'attente (en jours), tapez un nombre de jours compris entre 7 et 30.

  8. Vérifiez les clés KMS que vous supprimez.

  9. Activez la case à cocher en regard de Confirmez que cette clé doit être supprimée dans <nombre de jours> jours..

  10. Choisissez Schedule deletion (Planifier la suppression).

L'état de la clé KMS passe à Pending deletion (En attente de suppression).

Pour annuler une suppression de clé

  1. Ouvrez la console AWS KMS à l'adresse https://console.aws.amazon.com/kms.

  2. Pour changer de Région AWS, utilisez le sélecteur de Région dans l'angle supérieur droit de la page.

  3. Dans le volet de navigation, choisissez Clés gérées par le client.

  4. Cochez la case en regard de la clé KMS que vous souhaitez récupérer.

  5. Choisissez Actions de clé, Annuler la suppression de clé.

L'état de la clé KMS passe de Pending deletion (En attente de suppression) à Disabled (Désactivé). Pour utiliser la clé KMS, vous devez l'activer.

Planification et annulation d'une suppression de clé (AWS CLI)

Utilisez la commande aws kms schedule-key-deletion pour planifier une suppression de clé gérée par le client, comme illustré dans l'exemple suivant.

Vous ne pouvez pas planifier la suppression d'une Clé gérée par AWS ou d’une Clé détenue par AWS.

$ aws kms schedule-key-deletion --key-id 1234abcd-12ab-34cd-56ef-1234567890ab --pending-window-in-days 10

Lorsqu'elle est utilisée avec succès, l'AWS CLI renvoie une sortie similaire à celle affichée dans l'exemple suivant :

{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "DeletionDate": 1598304792.0, "KeyState": "PendingDeletion", "PendingWindowInDays": 10 }

Utilisez la commande aws kms cancel-key-deletion pour annuler une suppression de clé à partir de l'AWS CLI, comme illustré dans l'exemple suivant.

$ aws kms cancel-key-deletion --key-id 1234abcd-12ab-34cd-56ef-1234567890ab

Lorsqu'elle est utilisée avec succès, l'AWS CLI renvoie une sortie similaire à celle affichée dans l'exemple suivant :

{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }

L'état de la clé KMS passe de Pending Deletion (En attente de suppression) à Disabled (Désactivé). Pour utiliser la clé KMS, vous devez l'activer.

Planification et annulation d'une suppression de clé (AWS SDK for Java)

L'exemple suivant montre comment planifier la suppression d'une clé gérée par le client à l'aide de AWS SDK for Java. Cet exemple exige que vous instanciiez auparavant un client AWSKMSClient en tant que kms.

String KeyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; int PendingWindowInDays = 10; ScheduleKeyDeletionRequest scheduleKeyDeletionRequest = new ScheduleKeyDeletionRequest().withKeyId(KeyId).withPendingWindowInDays(PendingWindowInDays); kms.scheduleKeyDeletion(scheduleKeyDeletionRequest);

L'exemple suivant montre comment annuler la suppression d'une clé à l'aide du kit AWS SDK for Java. Cet exemple exige que vous instanciiez auparavant un client AWSKMSClient en tant que kms.

String KeyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; CancelKeyDeletionRequest cancelKeyDeletionRequest = new CancelKeyDeletionRequest().withKeyId(KeyId); kms.cancelKeyDeletion(cancelKeyDeletionRequest);

L'état de la clé KMS passe de Pending Deletion (En attente de suppression) à Disabled (Désactivé). Pour utiliser la clé KMS, vous devez l'activer.

Ajout d'une autorisation pour planifier et annuler une suppression de clé

Si vous utilisez des politiques IAM pour accorder des autorisations AWS KMS, tous les utilisateurs et les rôles IAM qui bénéficient d'un accès administrateur AWS ("Action": "*") ou d'un accès complet à AWS KMS ("Action": "kms:*") sont déjà autorisés à planifier et annuler une suppression de clé pour les clés KMS. Si vous comptez sur la seule politique de clé pour accorder des autorisations AWS KMS, vous pouvez avoir besoin d'ajouter des autorisations supplémentaires pour autoriser vos utilisateurs et rôles IAM à supprimer des clés KMS. Vous pouvez ajouter ces autorisations dans la console AWS KMS ou à l'aide de l'API AWS KMS.

Ajout d'une autorisation pour planifier et annuler une suppression de clé (console)

Vous pouvez utiliser AWS Management Console pour ajouter des autorisations pour la planification et l'annulation d'une suppression de clé.

  1. Connectez-vous à la AWS Management Console et ouvrez la console AWS Key Management Service (AWS KMS) à l'adresse https://console.aws.amazon.com/kms

  2. Pour changer de Région AWS, utilisez le sélecteur de région dans l'angle supérieur droit de la page.

  3. Dans le volet de navigation, choisissez Clés gérées par le client.

  4. Choisissez l'alias ou l'ID de clé de la clé KMS dont vous voulez modifier les autorisations.

  5. Choisissez l'onglet Politique de clé . Dans la section Key deletion (Suppression de clé), sélectionnez Allow key administrators to delete this key (Autoriser les administrateurs de clé à supprimer cette clé), puis choisissez Save changes (Enregistrer les modifications).

    Note

    Si vous ne voyez pas l'option Autoriser les administrateurs de clé à supprimer cette clé, cela signifie généralement que vous avez déjà modifié cette politique de clé à l'aide de l'API AWS KMS. Dans ce cas, vous devez mettre à jour manuellement le document de politique de clé. Ajoutez les autorisations kms:ScheduleKeyDeletion et kms:CancelKeyDeletion dans la déclaration des administrateurs de clé ("Sid": "Allow access for Key Administrators") dans la politique de clé, puis choisissez Enregistrer les modifications.

Ajout d'une autorisation pour planifier et annuler une suppression de clé (interface AWS CLI)

Vous pouvez utiliser AWS Command Line Interface pour ajouter des autorisations pour la planification et l'annulation d'une suppression de clé.

Pour ajouter une autorisation pour planifier et annuler une suppression de clé

  1. Utilisez la commande aws kms get-key-policy pour récupérer la politique de clé existante, puis enregistrez le document de politique dans un fichier.

  2. Ouvrez le document de politique dans votre éditeur de texte préféré, ajoutez les autorisations kms:ScheduleKeyDeletion et kms:CancelKeyDeletion à la déclaration de politique qui accorde des autorisations aux administrateurs de clé (par exemple, la déclaration de politique avec "Sid": "Allow access for Key Administrators"). Ensuite, enregistrez le fichier. L'exemple suivant montre une déclaration de politique avec les deux autorisations suivantes :

    { "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSKeyAdmin"}, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion" ], "Resource": "*" }
  3. Utilisez la commande aws kms put-key-policy pour appliquer la stratégie de clé à la clé KMS.