

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

# 接收来自 Amazon 服务的只读管理事件
<a name="eb-service-event-cloudtrail-management"></a>

您可以在默认或自定义事件总线上设置规则，通过接收来自 Amazon 服务的只读*管理事件* CloudTrail。管理事件可让您了解对 Amazon 账户中的资源执行的管理操作。这些也称为控制面板操作。有关更多信息，请参阅《CloudTrail 用户指南》**中的[记录管理事件](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/logging-management-events-with-cloudtrail.html#logging-management-events)。

对于针对默认或自定义事件总线的每条规则，您可以设置规则状态，以控制要接收的事件类型：
+ 禁用该规则，这样就 EventBridge 不会将事件与规则相匹配。
+ 启用该规则，以便将事件 EventBridge 与规则进行匹配，但通过传送的只读 Amazon 管理事件除外 CloudTrail。
+ 启用该规则，以便将所有事件与该规则进行 EventBridge 匹配，*包括*通过传送的只读管理事件 CloudTrail。

合作伙伴事件总线不接收 Amazon 事件。

在决定是否接收只读管理事件时需要考虑以下几点：
+ 某些只读管理事件（例如 Amazon Key Management Service `GetKeyPolicy`和`DescribeKey`或 IAM `GetPolicy` 和`GetRole`事件）的发生量远高于典型的变更事件。
+ 即使这些事件不是以`Describe`、`Get`或开头，您也可能已经收到只读管理事件`List`。其中一个例子`TestEventPattern`来自 EventBridge。

  有关 Amazon 服务不遵守`Describe`、`Get`或`List`命名约定的只读管理事件的列表，请参阅[中的 Amazon 服务生成的管理事件 EventBridge](eb-service-management-event-list.md)。

**使用 Amazon 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"`

**注意**  
仅支持通过 Amazon CLI 和 Amazon CloudFormation 模板为 CloudWatch 管理事件启用规则。

**Example**  
以下示例说明了如何匹配特定事件。最佳实践是定义一个用于匹配特定事件的专用规则，这样既清晰又便于编辑。  
在这种情况下，专用规则与来自的`AssumeRole`管理事件相匹配 Amazon Security Token Service。  

```
{
    "source" : [ "aws.sts" ],
    "detail-type": ["AWS API Call via CloudTrail"],
    "detail" : {
        "eventName" : ["AssumeRole"]
    }
}
```