使用启用和禁用 CloudTrail 日志文件加密 Amazon CLI - Amazon CloudTrail
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用启用和禁用 CloudTrail 日志文件加密 Amazon CLI

本主题介绍如何使用启用和禁用 SSE-KMS 日志文件加密。 CloudTrail Amazon CLI有关背景信息,请参阅使用密 Amazon KMS 钥加密 CloudTrail 日志文件 (SSE-KMS)

使用启用 CloudTrail 日志文件加密 Amazon CLI

为跟踪启用日志文件加密
  1. 使用 Amazon CLI创建密钥。您创建的密钥必须与接收您的 CloudTrail 日志文件的 S3 存储桶位于同一区域。在此步骤中,您可以使用 Amazon KMS create-key命令。

  2. 获取现有的密钥策略,以便您可以对其进行修改以供使用 CloudTrail。您可以使用 Amazon KMS get-key-policy命令检索密钥策略。

  3. 在密钥策略中添加必填部分,以便 CloudTrail 可以加密和用户可以解密您的日志文件。确保为需要阅读日志文件的所有用户授予解密权限。请勿更改策略的现有部分。有关要包含的策略部分的信息,请参阅 为以下各项配置 Amazon KMS 密钥策略 CloudTrail

  4. 使用 Amazon KMS put-key-policy命令将修改后的 JSON 策略文件附加到密钥。

  5. 使用--kms-key-id参数运行 CloudTrail create-trailupdate-trail命令。此命令将启用日志加密。

    aws cloudtrail update-trail --name Default --kms-key-id alias/MyKmsKey

    --kms-key-id参数指定您修改其策略的密钥 CloudTrail。它可以是以下格式中的任意一种:

    • 别名。例如:alias/MyAliasName

    • 别名 ARN。例如:arn:aws:kms:us-east-2:123456789012:alias/MyAliasName

    • 密钥 ARN。例如:arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012

    • 全局唯一密钥 ID。例如:12345678-1234-1234-1234-123456789012

    以下为响应示例:

    { "IncludeGlobalServiceEvents": true, "Name": "Default", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/Default", "LogFileValidationEnabled": false, "KmsKeyId": "arn:aws:kms:us-east-2:123456789012:key/12345678-1234-1234-1234-123456789012", "S3BucketName": "my-bucket-name" }

    如果存在 KmsKeyId 元素,则表示已启用日志文件加密功能。加密的日志文件应在 5 分钟左右出现在您的存储桶中。

为事件数据存储启用日志文件加密
  1. 使用 Amazon CLI创建密钥。您创建的密钥必须与事件数据存储位于同一区域。对于此步骤,请运行 Amazon KMS create-key命令。

  2. 获取要编辑的现有密钥策略以供使用 CloudTrail。您可以通过运行 Amazon KMS get-key-policy命令来获取密钥策略。

  3. 在密钥策略中添加必填部分,以便 CloudTrail 可以加密和用户可以解密您的日志文件。确保为需要阅读日志文件的所有用户授予解密权限。请勿更改策略的现有部分。有关要包含的策略部分的信息,请参阅 为以下各项配置 Amazon KMS 密钥策略 CloudTrail

  4. 通过运行 Amazon KMS put-key-policy命令将编辑后的 JSON 策略文件附加到密钥。

  5. 运行 CloudTrail create-event-data-storeupdate-event-data-store命令,然后添加--kms-key-id参数。此命令将启用日志加密。

    aws cloudtrail update-event-data-store --name my-event-data-store --kms-key-id alias/MyKmsKey

    --kms-key-id参数指定您修改其策略的密钥 CloudTrail。它可以是以下四种格式中的任意一种:

    • 别名。例如:alias/MyAliasName

    • 别名 ARN。例如:arn:aws:kms:us-east-2:123456789012:alias/MyAliasName

    • 密钥 ARN。例如:arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012

    • 全局唯一密钥 ID。例如:12345678-1234-1234-1234-123456789012

    以下为响应示例:

    { "Name": "my-event-data-store", "ARN": "arn:aws:cloudtrail:us-east-1:12345678910:eventdatastore/EXAMPLEf852-4e8f-8bd1-bcf6cEXAMPLE", "RetentionPeriod": "90", "KmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012" "MultiRegionEnabled": false, "OrganizationEnabled": false, "TerminationProtectionEnabled": true, "AdvancedEventSelectors": [{ "Name": "Select all external events", "FieldSelectors": [{ "Field": "eventCategory", "Equals": [ "ActivityAuditLog" ] }] }] }

    如果存在 KmsKeyId 元素,则表示已启用日志文件加密功能。加密的日志文件应在 5 分钟左右出现在您的事件数据存储中。

使用禁用 CloudTrail 日志文件加密 Amazon CLI

要停止加密针对跟踪的日志,请运行 update-trail,并向 kms-key-id 参数传递一个空字符串:

aws cloudtrail update-trail --name my-test-trail --kms-key-id ""

以下为响应示例:

{ "IncludeGlobalServiceEvents": true, "Name": "Default", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/Default", "LogFileValidationEnabled": false, "S3BucketName": "my-bucket-name" }

如果不存在 KmsKeyId 值,则表示已停用日志文件加密功能。

重要

您无法停止针对事件数据存储的日志文件加密。