Comment AWS CloudTrail utilise AWS KMS - AWS Key Management Service

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.

Comment AWS CloudTrail utilise AWS KMS

Vous pouvez utiliser AWS CloudTrail pour enregistrer les appels d'API AWS et d'autres activités pour votre Compte AWS et pour enregistrer les informations enregistrées dans des fichiers journaux, dans un compartiment Amazon Simple Storage Service (Amazon S3) de votre choix. Par défaut, les fichiers journaux placés dans votre compartiment S3 sont chiffrés à l'aide du chiffrement côté serveur avec des clés de chiffrement gérées par Amazon S3 (SSE-S3). CloudTrail Mais vous pouvez choisir à la place d'utiliser un chiffrement côté serveur avec une clé gérée KMS (SSE-KMS). Pour savoir comment chiffrer vos fichiers CloudTrail journaux avecAWS KMS, consultez la section Chiffrement des fichiers CloudTrail journaux avec AWS KMS keys (SSE-KMS) dans le guide de l'utilisateur. AWS CloudTrail

Important

AWS CloudTrail et Amazon S3 prennent uniquement en charge les AWS KMS keys symétriques. Vous ne pouvez pas utiliser de clé KMS asymétrique pour chiffrer vos CloudTrail journaux. Pour obtenir de l'aide sur la détermination de la symétrie ou de l'asymétrie d'une clé KMS, consultez Identification des clés KMS asymétriques.

Vous ne payez pas de frais d'utilisation des clés lorsque vous lisez CloudTrail ou écrivez des fichiers journaux chiffrés avec une clé SSE-KMS. Toutefois, vous payez des frais d'utilisation des clés lorsque vous accédez à des fichiers CloudTrail journaux chiffrés avec une clé SSE-KMS. Pour plus d'informations sur la tarification AWS KMS, consultez Tarification AWS Key Management Service. Pour plus d'informations sur la CloudTrail tarification, consultez AWS CloudTrailles sections Tarification et Gestion des coûts dans le Guide de AWS CloudTrail l'utilisateur.

Comprendre quand votre clé KMS est utilisée

Chiffrement des fichiers CloudTrail journaux à l'aide de AWS KMS versions basées sur la fonctionnalité Amazon S3 appelée chiffrement côté serveur avec un AWS KMS key (SSE-KMS). Pour en savoir plus sur SSE-KMS, veuillez consulter Comment Amazon Simple Storage Service (Amazon S3) utilise AWS KMS dans ce guide ou Protection des données grâce au chiffrement côté serveur avec des clés KMS (SSE-KMS) dans le guide du développeur Amazon Simple Storage Service.

Lorsque vous configurez AWS CloudTrail pour utiliser SSE-KMS pour chiffrer vos fichiers journaux, Amazon CloudTrail S3 utilise les vôtres AWS KMS keys lorsque vous effectuez certaines actions avec ces services. Les sections suivantes expliquent quand et comment ces services peuvent utiliser votre clé KMS, et fournissent des informations supplémentaires que vous pouvez utiliser pour valider cette explication.

Vous configurez CloudTrail pour crypter les fichiers journaux avec votre AWS KMS key

Lorsque vous mettez à jour votre CloudTrail configuration pour utiliser votre clé KMS, CloudTrail envoie une GenerateDataKeydemande AWS KMS pour vérifier que la clé KMS existe et que CloudTrail vous êtes autorisé à l'utiliser pour le chiffrement. CloudTrail n'utilise pas la clé de données obtenue.

La demande GenerateDataKey inclut les informations suivantes pour le contexte de chiffrement :

  • Le nom de ressource Amazon (ARN) du CloudTrail parcours

  • L'ARN du compartiment S3 et le chemin où les fichiers CloudTrail journaux sont livrés

La GenerateDataKey demande entraîne une entrée dans vos CloudTrail journaux, comme dans l'exemple suivant. Lorsque vous voyez une entrée de journal comme celle-ci, vous pouvez déterminer que CloudTrail ( ) a appelé l'AWS KMSGenerateDataKeyopération ( ) pour un suivi spécifique ( ). AWS KMSa créé la clé de données sous une clé KMS spécifique ( ).

Note

Vous devrez peut-être faire défiler l'affichage vers la droite pour voir certaines des alertes dans l'exemple suivant d'entrée de journal.

{ "eventVersion": "1.02", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::086441151436:user/AWSCloudTrail", "accountId": "086441151436", "accessKeyId": "AKIAI44QH8DHBEXAMPLE", "userName": "AWSCloudTrail", "sessionContext": {"attributes": { "mfaAuthenticated": "false", "creationDate": "2015-11-11T21:15:33Z" }}, "invokedBy": "internal.amazonaws.com" }, "eventTime": "2015-11-11T21:15:33Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-west-2:111122223333:alias/ExampleAliasForCloudTrailKMS key", "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-west-2:111122223333:trail/Default", "aws:s3:arn": "arn:aws:s3:::example-bucket-for-CT-logs/AWSLogs/111122223333/" }, "keySpec": "AES_256" }, "responseElements": null, "requestID": "581f1f11-88b9-11e5-9c9c-595a1fb59ac0", "eventID": "3cdb2457-c035-4890-93b6-181832b9e766", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsServiceEvent", "recipientAccountId": "111122223333" }

CloudTrail place un fichier journal dans votre compartiment S3

Chaque fois CloudTrail qu'un fichier journal est placé dans votre compartiment S3, Amazon S3 envoie une GenerateDataKeydemande AWS KMS au nom de CloudTrail. En réponse à cette demande, AWS KMS génère une clé de données unique, puis envoie à Amazon S3 deux copies de la clé de données : l'une en texte brut et l'autre chiffrée avec la clé KMS spécifiée. Amazon S3 utilise la clé de données en texte brut pour chiffrer le fichier CloudTrail journal, puis la supprime de la mémoire dès que possible après utilisation. Amazon S3 stocke la clé de données chiffrée sous forme de métadonnées dans le fichier CloudTrail journal chiffré.

La demande GenerateDataKey inclut les informations suivantes pour le contexte de chiffrement :

Chaque GenerateDataKey demande entraîne une entrée dans vos CloudTrail journaux, comme dans l'exemple suivant. Lorsque vous voyez une entrée de journal comme celle-ci, vous pouvez déterminer que CloudTrail ( ) a appelé l'AWS KMSGenerateDataKeyopération ( ) pour un suivi spécifique ( ) afin de protéger un fichier journal spécifique ( ). AWS KMSa créé la clé de données sous la clé KMS spécifiée ( ), affichée deux fois dans la même entrée de journal.

Note

Vous devrez peut-être faire défiler l'affichage vers la droite pour voir certaines des alertes dans l'exemple suivant d'entrée de journal.

{ "eventVersion": "1.02", "userIdentity": { "type": "AssumedRole", "principalId": "AROACKCEVSQ6C2EXAMPLE:i-34755b85", "arn": "arn:aws:sts::086441151436:assumed-role/AWSCloudTrail/i-34755b85", "accountId": "086441151436", "accessKeyId": "AKIAI44QH8DHBEXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2015-11-11T20:45:25Z" }, "sessionIssuer": { "type": "Role", "principalId": "AROACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::086441151436:role/AWSCloudTrail", "accountId": "086441151436", "userName": "AWSCloudTrail" } }, "invokedBy": "internal.amazonaws.com" }, "eventTime": "2015-11-11T21:15:58Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-west-2:111122223333:trail/Default", "aws:s3:arn": "arn:aws:s3:::example-bucket-for-CT-logs/AWSLogs/111122223333/CloudTrail/us-west-2/2015/11/11/111122223333_CloudTrail_us-west-2_20151111T2115Z_7JREEBimdK8d2nC9.json.gz" }, "keyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "keySpec": "AES_256" }, "responseElements": null, "requestID": "66f3f74a-88b9-11e5-b7fb-63d925c72ffe", "eventID": "7738554f-92ab-4e27-83e3-03354b1aa898", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsServiceEvent", "recipientAccountId": "111122223333" }

Vous obtenez un fichier journal chiffré à partir de votre compartiment S3

Chaque fois que vous recevez un fichier CloudTrail journal chiffré depuis votre compartiment S3, Amazon S3 envoie une Decryptdemande à en votre AWS KMS nom pour déchiffrer la clé de données chiffrée du fichier journal. En réponse à cette demande, AWS KMS utilise votre clé KMS pour déchiffrer la clé de données, puis envoie la clé de données en texte brut à Amazon S3. Amazon S3 utilise la clé de données en texte brut pour déchiffrer le fichier CloudTrail journal, puis la supprime de la mémoire dès que possible après utilisation.

La demande Decrypt inclut les informations suivantes pour le contexte de chiffrement :

Chaque Decrypt demande entraîne une entrée dans vos CloudTrail journaux, comme dans l'exemple suivant. Lorsque vous voyez une entrée de journal comme celle-ci, vous pouvez déterminer qu'un utilisateur de votre Compte AWS ( ) a appelé l'opération AWS KMS ( ) Decrypt ( ) pour obtenir un journal de suivi spécifique ( ) et un fichier journal spécifique ( ). AWS KMS a déchiffré la clé de données sous une clé KMS spécifique ( ).

Note

Vous devrez peut-être faire défiler l'affichage vers la droite pour voir certaines des alertes dans l'exemple suivant d'entrée de journal.

{ "eventVersion": "1.02", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:role/cloudtrail-admin", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "cloudtrail-admin", "sessionContext": {"attributes": { "mfaAuthenticated": "false", "creationDate": "2015-11-11T20:48:04Z" }}, "invokedBy": "signin.amazonaws.com" }, "eventTime": "2015-11-11T21:20:52Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-west-2", "sourceIPAddress": "internal.amazonaws.com", "userAgent": "internal.amazonaws.com", "requestParameters": { "encryptionContext": { "aws:cloudtrail:arn": "arn:aws:cloudtrail:us-west-2:111122223333:trail/Default", "aws:s3:arn": "arn:aws:s3:::example-bucket-for-CT-logs/AWSLogs/111122223333/CloudTrail/us-west-2/2015/11/11/111122223333_CloudTrail_us-west-2_20151111T2115Z_7JREEBimdK8d2nC9.json.gz" } }, "responseElements": null, "requestID": "16a0590a-88ba-11e5-b406-436f15c3ac01", "eventID": "9525bee7-5145-42b0-bed5-ab7196a16daa", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333" }], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }