使用 update-trail 命令更新跟踪
重要
自 2021 年 11 月 22 日起,AWS CloudTrail 更改了使用跟踪来捕获全球服务事件的方法。现在,Amazon CloudFront、AWS Identity and Access Management 和 AWS STS 创建的事件记录在创建它们的区域中,即美国东部(弗吉尼亚州北部)区域 us-east-1。这使得 CloudTrail 对这些服务的处理与其他 AWS 全球服务的处理保持一致。要继续接收美国东部(弗吉尼亚州北部)以外的全球服务事件,请务必将使用美国东部(弗吉尼亚州北部)以外全球服务事件的单区域跟踪转换为多区域跟踪。如需有关捕获全球服务事件的更多信息,请参阅本章节后面部分的启用和禁用全球服务事件记录。
相比之下,CloudTrail 控制台中的事件历史记录和 aws cloudtrail lookup-events 命令将在发生这些事件的 AWS 区域 中显示它们。
您可以使用 update-trail 命令更改跟踪的配置设置。您还可以使用 add-tags 和 remove-tags 命令以添加和删除跟踪的标签。您只能从创建跟踪记录的 AWS 区域(其主区域)更新跟踪记录。当使用 AWS CLI 时,请记住您的命令在为您的配置文件配置的 AWS 区域中运行。如果您想要在不同的区域中运行命令,可以为配置文件更改默认区域,或者与命令一起使用 --region 参数。
如果您已在 Amazon Security Lake 中启用 CloudTrail 管理事件,则必须至少维护一个具有多区域属性的组织跟踪,并记录 read 和 write 管理事件。您不能以不符合 Security Lake 要求的方式更新符合条件的跟踪。例如,通过将跟踪更改为单区域,或者关闭 read 或 write 管理事件的日志记录。
注意
如果您使用 AWS CLI 或某个 AWS 开发工具包修改跟踪,请确保跟踪的存储桶策略处于最新状态。要使存储桶自动接收来自新的 AWS 区域的事件,策略必须包含完整服务名称 cloudtrail.amazonaws.com。有关更多信息,请参阅 针对 CloudTrail 的 Simple Storage Service(Amazon S3)存储桶策略。
将单区域跟踪转换为多区域跟踪
要将现有单区域跟踪更改为多区域跟踪,请使用 --is-multi-region-trail 选项。
aws cloudtrail update-trail --namemy-trail--is-multi-region-trail
要确认该跟踪现在是多区域跟踪,请验证输出中的 IsMultiRegionTrail 元素是否显示 true。
{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "IsOrganizationTrail": false, "S3BucketName": "amzn-s3-demo-bucket" }
将多区域跟踪转换为单区域跟踪
要更改现有的多区域跟踪以使其只应用于创建该跟踪的区域,请使用 --no-is-multi-region-trail 选项。
aws cloudtrail update-trail --namemy-trail--no-is-multi-region-trail
要确认跟踪现在只应用到一个区域,请验证输出中的 IsMultiRegionTrail 元素是否为 false。
{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "IsOrganizationTrail": false, "S3BucketName": "amzn-s3-demo-bucket" }
启用和禁用全球服务事件记录
要更改跟踪以使其不记录全球服务事件,请使用 --no-include-global-service-events 选项。
aws cloudtrail update-trail --namemy-trail--no-include-global-service-events
要确认跟踪不再记录全局服务事件,输出中的 IncludeGlobalServiceEvents 元素应显示 false。
{ "IncludeGlobalServiceEvents": false, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "IsOrganizationTrail": false, "S3BucketName": "amzn-s3-demo-bucket" }
要更改跟踪以使其记录全球服务事件,请使用 --include-global-service-events 选项。
自 2021 年 11 月 22 日起,单区域跟踪将不再接收全球服务事件,除非该跟踪已出现在美国东部(弗吉尼亚州北部)区域 us-east-1。要继续捕获全球服务事件,请将跟踪配置更新为多区域跟踪。例如,此命令将美国东部(俄亥俄州)us-east-2 中的单区域跟踪更新为多区域跟踪。将 myExistingSingleRegionTrailWithGSE 替换为您的配置的适当跟踪名称。
aws cloudtrail --region us-east-2 update-trail --namemyExistingSingleRegionTrailWithGSE--is-multi-region-trail
由于从 2021 年 11 月 22 日起,仅在美国东部(弗吉尼亚州北部)提供全球服务事件,您还可以创建单一区域跟踪以订阅美国东部(弗吉尼亚州北部)区域 us-east-1 的全球服务事件。以下命令在 us-east-1 中创建单区域跟踪,以接收 CloudFront、IAM 和 AWS STS 事件:
aws cloudtrail --region us-east-1 create-trail --include-global-service-events --namemyTrail--s3-bucket-nameamzn-s3-demo-bucket
启用日志文件验证
要启用对跟踪的日志文件验证,可使用 --enable-log-file-validation 选项。摘要文件将传送到该跟踪的 Simple Storage Service(Amazon S3)存储桶。
aws cloudtrail update-trail --namemy-trail--enable-log-file-validation
要确认系统已启用日志文件验证功能,请验证输出中的 LogFileValidationEnabled 元素是否为 true。
{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": true, "IsMultiRegionTrail": false, "IsOrganizationTrail": false, "S3BucketName": "amzn-s3-demo-bucket" }
禁用日志文件验证
要禁用对跟踪的日志文件验证,请使用 --no-enable-log-file-validation 选项。
aws cloudtrail update-trail --namemy-trail-name--no-enable-log-file-validation
要确认系统已禁用日志文件验证功能,请验证输出中的 LogFileValidationEnabled 元素是否为 false。
{ "IncludeGlobalServiceEvents": true, "Name": "my-trail", "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/my-trail", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "IsOrganizationTrail": false, "S3BucketName": "amzn-s3-demo-bucket" }
要使用 AWS CLI 验证日志文件,请参阅使用 AWS CLI 验证 CloudTrail 日志文件完整性。