基于 Parameter Store 事件设置通知或触发操作 - AWS Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

基于 Parameter Store 事件设置通知或触发操作

本节中的主题说明如何使用 Amazon EventBridge 和 Amazon Simple Notification Service (Amazon SNS) 向您通知 Systems Manager 参数的更改。您可以创建 EventBridge 规则,以在创建、更新或删除参数或参数标签版本时通知您。尽最大努力发出事件。您可以收到与参数策略相关的更改或状态通知,例如,参数过期、将过期或者在指定时间段内未更改。

注意

参数策略可用于使用高级参数层的参数。需支付费用。有关更多信息,请参阅 分配参数策略管理参数层.

以下主题还介绍如何在一个目标上为特定参数事件触发其他操作。例如,您可以运行 AWS Lambda 函数来在参数过期或被删除后自动重新创建参数。您还可以设置一个通知,以在数据库密码被更新时触发 Lambda 函数。该 Lambda 函数可以强制使用新密码重置或重新连接您的数据库连接。EventBridge 还支持在其他多个 Run Command 服务中运行 AWS 命令、自动化执行和操作。有关更多信息,请参阅 Amazon EventBridge 用户指南

开始前的准备工作

创建您需要的任何资源,以便为您创建的规则指定目标操作。例如,如果您创建的规则是关于发送通知,首先创建 Amazon SNS 主题。有关更多信息,请参阅 Amazon SNS 中的 入门Amazon Simple Notification Service 开发人员指南.

为参数配置 EventBridge

本主题介绍如何创建 EventBridge 规则,以根据AWS您的账户中一个或多个参数发生的事件调用目标。

为 EventBridge 参数配置 Systems Manager

  1. 通过以下网址打开 Amazon EventBridge 控制台:https://console.amazonaws.cn/events/

  2. 在导航窗格中,选择 Rules (规则),然后选择 Create rule (创建规则)。

    -或者-

    如果首先打开 Amazon EventBridge 主页,请选择 Create rule (创建规则)。

  3. 为规则输入名称和描述。

    规则不能与同一区域中的另一个规则和同一事件总线上的名称相同。

  4. 对于 Define pattern (定义模式),选择 Event pattern (事件模式).

  5. 对于 Event matching pattern (事件匹配模式),选择 Custom pattern (自定义模式)。

  6. 对于 Event pattern (事件模式),将以下内容粘贴到框中:

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Change" ], "detail": { "name": [ "parameter-1-name", "/parameter-2-name/level-2", "/parameter-3-name/level-2/level-3" ], "operation": [ "Create", "Update", "Delete", "LabelParameterVersion" ] } }
  7. 修改要对其执行操作的参数和操作的内容。

    例如,以下内容意味着在更新名为Oncall/Project/Teamlead 的参数时执行操作:

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Change" ], "detail": { "name": [ "/Oncall", "/Project/Teamlead" ], "operation": [ "Update" ] } }
  8. 选择 Save.

  9. 对于 Select event bus (选择事件总线),选择要与此规则关联的事件总线。如果您希望此规则对来自您自己的 AWS 账户的匹配事件触发,请选择 AWS default event bus (AWS 默认事件总线). 当您账户中的某个 AWS 服务发出一个事件时,它始终会发送到您账户的默认事件总线。

  10. 对于 Select targets (选择目标),选择目标类型和支持的资源。例如,如果您选择 SNS topic (SNS 主题),请为 Topic (主题) 做出选择。如果您选择 CodePipeline ,请为 Pipeline ARN (管道 ARN) 做出选择。

  11. 展开 Configure input (配置输入),然后选择一个选项。然后,提供所选目标类型需要的任何其他配置详细信息。

  12. (可选)为规则输入一个或多个标记。有关更多信息,请参阅 中的Amazon EventBridge标记 资源Amazon EventBridge 用户指南

  13. 选择 Create.

为参数策略配置 EventBridge

本主题介绍如何创建 EventBridge 规则,以根据您的 AWS 账户中一个或多个参数所发生的事件调用目标。在创建高级参数时,您可以指定参数过期时间、在参数过期前接收通知的时间,以及在参数未更改的情况下发送通知之前等待多长时间。您可以使用以下过程为这些事件设置通知。有关更多信息,请参阅 分配参数策略管理参数层.

为 EventBridge 参数策略配置 Systems Manager

  1. 通过以下网址打开 Amazon EventBridge 控制台:https://console.amazonaws.cn/events/

  2. 在导航窗格中,选择 Rules (规则),然后选择 Create rule (创建规则)。

    -或者-

    如果首先打开 Amazon EventBridge 主页,请选择 Create rule (创建规则)。

  3. 为规则输入名称和描述。

    规则不能与同一区域中的另一个规则和同一事件总线上的名称相同。

  4. 对于 Define pattern (定义模式),选择 Event pattern (事件模式).

  5. 对于 Event matching pattern (事件匹配模式),选择 Custom pattern (自定义模式)。

  6. 对于 Event pattern (事件模式),将以下内容粘贴到框中:

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Policy Action" ], "detail": { "parameter-name": [ "parameter-1-name", "/parameter-2-name/level-2", "/parameter-3-name/level-2/level-3" ], "policy-type": [ "Expiration", "ExpirationNotification", "NoChangeNotification" ] } }
  7. 修改参数的内容以及要对其执行操作的策略类型。例如,以下内容意味着要在名为 /OncallDuties 的参数过期且被删除时执行操作:

    { "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Policy Action" ], "detail": { "parameter-name": [ "/OncallDuties" ], "policy-type": [ "Expiration" ] } }
  8. 选择 Save.

  9. 对于 Select event bus (选择事件总线),选择要与此规则关联的事件总线。如果您希望此规则对来自您自己的 AWS 账户的匹配事件触发,请选择 AWS default event bus (AWS 默认事件总线). 当您账户中的某个 AWS 服务发出一个事件时,它始终会发送到您账户的默认事件总线。

  10. 对于 Select targets (选择目标),选择目标类型和支持的资源。例如,如果您选择 SNS topic (SNS 主题),请为 Topic (主题) 做出选择。如果您选择 CodePipeline ,请为 Pipeline ARN (管道 ARN) 做出选择。

  11. 展开 Configure input (配置输入),然后选择一个选项。然后,提供所选目标类型需要的任何其他配置详细信息。

  12. (可选)为规则输入一个或多个标记。有关更多信息,请参阅 中的Amazon EventBridge标记 资源Amazon EventBridge 用户指南

  13. 选择 Create.

相关信息