本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
接收来自 AWS 服务的只读管理事件
您可以在默认或自定义事件总线上设置规则,通过接收来自 AWS 服务的只读管理事件 CloudTrail。管理事件可让您了解对 AWS 账户中的资源执行的管理操作。这些也称为控制面板操作。有关更多信息,请参阅《CloudTrail 用户指南》中的记录管理事件。
对于针对默认或自定义事件总线的每条规则,您可以设置规则状态,以控制要接收的事件类型:
禁用该规则,这样就 EventBridge 不会将事件与规则相匹配。
启用该规则,以便将事件 EventBridge 与规则进行匹配,但通过传送的只读 AWS 管理事件除外 CloudTrail。
启用该规则,以便将所有事件与规则进行 EventBridge 匹配,包括通过传送的只读管理事件 CloudTrail。
合作伙伴事件总线不接收 AWS 事件。
在决定是否接收只读管理事件时需要考虑以下几点:
某些只读管理事件(例如 AWS Key Management Service
GetKeyPolicy
和DescribeKey
或 IAMGetPolicy
和GetRole
事件)的发生量远高于典型的变更事件。如果只读管理事件不是以
Describe
、Get
或List
开头,您可能已经在接收这些事件了。例如,以下事件 AWS STS APIs 是变更事件,即使它们以动词开头Get
:-
GetFederationToken
-
GetSessionToken
有关 AWS 服务不遵守
Describe
、Get
或List
命名约定的只读管理事件的列表,请参阅中的 AWS 服务生成的管理事件 EventBridge。-
使用 AWS CLI 创建接收只读管理事件的规则
使用
put-rule
命令创建或更新规则,同时使用参数执行以下操作:指定规则属于默认事件总线或特定的自定义事件总线
将规则状态设置为
ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS
aws events put-rule --name "
ruleForManagementEvents
" --event-bus-name "default" --state "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS"
注意
仅支持通过 AWS CLI 和 AWS CloudFormation 模板为 CloudWatch 管理事件启用规则。
以下示例说明了如何匹配特定事件。最佳实践是定义一个用于匹配特定事件的专用规则,这样既清晰又便于编辑。
在这种情况下,专用规则与来自的AssumeRole
管理事件相匹配 AWS Security Token Service。
{ "source" : [ "aws.sts" ], "detail-type": ["AWS API Call via CloudTrail"], "detail" : { "eventName" : ["AssumeRole"] } }