# IAM策略变更告警通知

通过将 CloudTrail 日志定向到 CloudWatch 日志并建立相应的指标筛选条件和警报，您可以对 IAM 策略的更改 进行实时监控。

CIS 建议您为 IAM 策略的更改创建指标筛选条件和警报。监控此类更改有助于确保身份验证和授权控制保持不变。

## #1 创建Amazon SNS主题

{% hint style="info" %}
确保 CloudTrail 在所有区域均已启用。并且确保 [CloudTrail 跟踪与Amazon CloudWatch 日志集成](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/send-cloudtrail-events-to-cloudwatch-logs.html#send-cloudtrail-events-to-cloudwatch-logs-console)。
{% endhint %}

1. 通过以下网址打开 Amazon SNS 控制台：[https://console.aws.amazon.com/sns/v3/home](https://console.amazonaws.cn/sns/v3/home)。
2. 创建 Amazon SNS 主题。

## #2 创建指标筛选条件

1. [通过 https://console.aws.amazon.com/cloudwatch/](https://console.amazonaws.cn/cloudwatch/) 打开 CloudWatch 控制台。
2. 在导航窗格中，选择 Log groups（日志组）。
3. 选中与您创建的 CloudTrail 跟踪关联的 CloudWatch 日志日志组对应的复选框。
4. 在操作中，选择创建指标筛选条件。
5. 在定义模式下，执行以下操作：

   * 复制以下模式，然后将其粘贴到 Filter Pattern (筛选条件模式) 字段中。

   `{($.eventName=DeleteGroupPolicy) || ($.eventName=DeleteRolePolicy) || ($.eventName=DeleteUserPolicy) || ($.eventName=PutGroupPolicy) || ($.eventName=PutRolePolicy) || ($.eventName=PutUserPolicy) || ($.eventName=CreatePolicy) || ($.eventName=DeletePolicy) || ($.eventName=CreatePolicyVersion) || ($.eventName=DeletePolicyVersion) || ($.eventName=AttachRolePolicy) || ($.eventName=DetachRolePolicy) || ($.eventName=AttachUserPolicy) || ($.eventName=DetachUserPolicy) || ($.eventName=AttachGroupPolicy) || ($.eventName=DetachGroupPolicy)}`

   * 选择 Next（下一步）。
6. 在分配指标下，执行以下操作：
   1. 在Filter name(筛选条件名称)中，输入指标筛选条件的名称。
   2. 对于Metric namespace(指标命名空间)，输入`LogMetrics`。

      如果您对所有 CIS 日志指标筛选器使用相同的命名空间，则所有 CIS Benchmark 指标将组合在一起。
   3. 对于 Metric name（指标名称），为其输入指标名称。记住指标的名称。您需要在创建警报时选择指标。
   4. 对于 Metric value（指标值），输入 `1`。
   5. 选择 Next（下一步）。
7. 在 “查看并创建” 下，验证您为新指标筛选条件提供的信息。然后选择创建指标筛选条件。

## #3 创建告警

1. 选择 Metrics (指标筛选器) 选项卡，然后选择刚创建的指标筛选器。

   要选择指标筛选条件，请选中右上方的复选框。
2. 选择 Create Alarm（创建告警）。
3. 在 Specify metric and conditions (指定指标和条件) 下，执行以下操作：
   1. 在 “指标” 下，在 “统计数据” 中，选择 “平均值”。有关可用统计数据的更多信息，请参阅 *Amazon CloudWatch 用户指南*中的[统计数据](https://docs.amazonaws.cn/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic)。
   2. 在 “条件” 下，为 “阈值” 选择静态。
   3. 对于 “定义警报条件”，选择 “大于/等于”。
   4. 在定义阈值中，输入`1`。
   5. 选择 Next（下一步）。
4. 在配置操作下，执行以下操作：
   1. 在 “警报状态触发器” 下，选择 “警报中”。
   2. 在 Select an SNS topic (选择 SNS 主题) 下，选择 Select an existing SNS topic (选择现有的 SNS 主题)。
   3. 对于 Send a notification to…（向发送通知），输入您在上一流程中创建的 SNS 主题名称。
   4. 选择 Next（下一步）。
5. 在添加名称和描述下，输入警报的名称和描述。例如，`ChangeIAMPolicy`。然后选择下一步。
6. 在 “预览并创建” 下，查看警报配置。然后选择 Create alarm (创建警报)。

\\
