Création d'une alarme qui détecte l'utilisation d'une clé KMS en attente de suppression - AWS Key Management Service

Création d'une alarme qui détecte l'utilisation d'une clé KMS en attente de suppression

Vous pouvez combiner les fonctions de AWS CloudTrail, d'Amazon CloudWatch Logs et d'Amazon Simple Notification Service (Amazon SNS) pour créer une alarme Amazon CloudWatch qui vous avertit lorsqu'un utilisateur de votre compte tente d'utiliser une clé KMS en attente de suppression. Si vous recevez cette notification, vous pouvez annuler la suppression de la clé KMS et reconsidérer votre décision de la supprimer.

Les procédures suivantes créent une alarme qui vous informe chaque fois que le message d'erreur « Key ARN is pending deletion » est consignée dans vos fichiers journaux CloudTrail. Ce message d'erreur indique qu'une personne ou une application tente d'utiliser la clé KMS dans une opération de chiffrement. Étant donné que la notification est liée au message d'erreur, elle n'est pas déclenchée lorsque vous utilisez des opérations d'API autorisées sur les clés KMS en attente de suppression, telles que ListKeys, CancelKeyDeletion et PutKeyPolicy. Pour afficher la liste des opérations d'API AWS KMS qui retournent ce message d'erreur, consultez Principaux états des clés AWS KMS.

L'e-mail de notification que vous recevez ne répertorie pas la clé KMS ou les opérations de chiffrement. Vous pouvez trouver ces informations dans votre journal CloudTrail. Au lieu de cela, l'e-mail indique que l'état de l'alarme est passé de OK à Alarme. Pour de plus amples informations sur les alarmes CloudWatch et les changements d'état, veuillez consulter Utilisation d'alarmes Amazon CloudWatch dans le Guide de l'utilisateur Amazon CloudWatch.

Avertissement

Cette alarme Amazon CloudWatch ne peut pas détecter l'utilisation de la clé publique d'une clé KMS asymétrique en dehors de AWS KMS. Pour plus de détails sur les risques particuliers liés à la suppression de clés KMS asymétriques utilisées pour le chiffrement de la clé publique, en particulier la création de textes chiffrés qui ne peuvent pas être déchiffrés, veuillez consulter Suppression des clés KMS asymétriques.

Exigences pour une alarme CloudWatch

Avant de créer une alarme CloudWatch, vous devez créer un journal d'activité AWS CloudTrail et configurer CloudTrail pour fournir des fichiers journaux CloudTrail à Amazon CloudWatch Logs. Vous avez également besoin d'une rubrique Amazon SNS pour la notification d'alarme.

  • Créer un journal de suivi CloudTrail.

    CloudTrail est activé automatiquement dans votre Compte AWS lors de la création de ce dernier. Toutefois, pour un enregistrement continu des événements dans votre compte, y compris les événements pour AWS KMS, créez un journal de suivi.

  • Configurer CloudTrail pour vous fournir des fichiers journaux CloudWatch Logs.

    Configurez la diffusion de vos fichiers journaux CloudTrail dans CloudWatch Logs. Cela permet à CloudWatch Logs de surveiller les journaux pour détecter les demandes d'API AWS KMS qui tentent d'utiliser une clé KMS en attente de suppression.

  • Créer une rubrique Amazon SNS.

    Lorsque votre alarme se déclenche, elle vous avertit en envoyant un message à une adresse e-mail figurant dans une rubrique Amazon Simple Notification Service (Amazon SNS).

Création de l'alarme CloudWatch

Dans cette procédure, vous créez un filtre métrique de groupe de journaux CloudWatch qui détecte les instances de l'exception de suppression en attente. Ensuite, vous créez une alarme CloudWatch basée sur la métrique de groupe de journaux. Pour plus d'informations sur les filtres de métriques de groupe de journaux, consultez Création de métriques à partir d'événements du journal à l'aide de filtres dans le Guide de l'utilisateur Amazon CloudWatch Logs.

  1. Créez un filtre métrique CloudWatch qui analyse les journaux CloudTrail.

    Suivez les instructions de la section Créer un filtre métrique pour un groupe de journaux à l'aide des valeurs obligatoires suivantes. Pour les autres champs, acceptez les valeurs par défaut et fournissez les noms demandés.

    Champ Valeur
    Modèle de filtre

    { $.eventSource = kms* && $.errorMessage = "* is pending deletion."}

    Valeur de la métrique 1
  2. Créez une alarme CloudWatch en fonction du filtre métrique que vous avez créé à l'étape 1.

    Suivez les instructions de la section Création d'une alerte CloudWatch basée sur un filtre de métrique d'un groupe de journaux à l'aide des valeurs obligatoires suivantes. Pour les autres champs, acceptez les valeurs par défaut et fournissez les noms demandés.

    Champ Valeur
    Filtre de métrique

    Le nom du filtre de métrique que vous avez créé à l'étape 1.

    Type de seuil Statique
    Conditions Chaque fois que le nom de la métrique est supérieur à 1
    Points de données à alarmer 1 sur 1
    Traitement de données manquantes Traiter les données manquantes comme correctes (seuil non dépassé)

Une fois que vous avez terminé cette procédure, vous recevez une notification chaque fois que votre nouvelle alarme CloudWatch passe à l'état ALARM. Si vous recevez une notification pour cette alarme, cela peut signifier qu'une clé KMS dont la suppression est planifiée est toujours nécessaire pour chiffrer ou déchiffrer les données. Dans ce cas, annulez la suppression de la clé KMS et reconsidérez votre décision de la supprimer.