根據Parameter Store事件設定通知或觸發動作
本節中的主題說明如何使用 Amazon EventBridge 和 Amazon Simple Notification Service (Amazon SNS) 來通知您有關 AWS Systems Manager 參數的變更。您可以建立 EventBridge 規則,在參數或參數標籤版本建立、更新或遭到刪除時通知您。盡可能發出事件。您可以接收與參數政策相關變更或狀態的通知,例如參數過期、參數即將過期,或是在指定的時間期間內並未發生變更。
此部分的主題也說明了如何為特定參數事件,在目標上開啟其他動作。例如,您可以執行 AWS Lambda 函數來在過期或遭到刪除時自動重新建立參數。您可以設定一個通知,在您的資料庫密碼更新時呼叫 Lambda 函數。Lambda 函數可以強制您的資料庫連線重設或以新的密碼重新連線。EventBridge 也支援執行 Run Command 命令和 Automation 執行,以及許多其他 AWS 服務中的動作。Run Command 和 Automation 都是 AWS Systems Manager 的功能。如需詳細資訊,請參閱《Amazon EventBridge 使用者指南》。
開始之前
建立任何您需要的資源,為您建立的規則指定目標動作。例如,若您建立的規格是用來傳送通知,請先建立 Amazon SNS 主題。如需詳細資訊,請參閱《Amazon Simple Notification Service 開發人員指南》中的 Amazon SNS 入門。
為參數設定 EventBridge
本主題說明如何建立 EventBridge 規則,根據在您 AWS 帳戶 帳戶中一或多個參數上發生的事件呼叫目標。
為 Systems Manager 參數設定 EventBridge
在 https://console.aws.amazon.com/events/
開啟 Amazon EventBridge 主控台。 -
在導覽窗格中,選擇 Rules (規則),然後選擇 Create rule (建立規則)。
-或-
如果 EventBridge 首頁先開啟,請選擇 Create rule (建立規則)。
-
輸入規則的名稱和描述。
在同一個區域和同一個事件匯流排上,規則不能與另一個規則同名。
-
針對 Define pattern (定義模式),選擇 Event pattern(事件模式)。
-
對於 Event matching pattern (事件比對模式),選擇 Custom pattern (自訂模式)。
-
對於 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" ] } } -
修改參數的內容,以及您希望採取動作的操作。
例如,以下內容表示會在名為
Oncall
或/Project/Teamlead
的參數更新時採取動作。{ "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Change" ], "detail": { "name": [ "/Oncall", "/Project/Teamlead" ], "operation": [ "Update" ] } }
-
選擇 Save (儲存)。
-
針對 Select event bus (選取事件匯流排),選擇要與此規則建立關聯的事件匯流排。如果您想要此規則由來自您自己 AWS 帳戶 的相符事件觸發,請選取 AWS default event bus (AWS 預設事件匯流排)。當您帳戶中的 AWS 服務發出事件時,一律會前往您帳戶的預設事件匯流排。
-
對於 Select targets (選取目標),選擇目標類型和支援的資源。例如,如果您選擇 SNS topic (SNS 主題),請選取 Topic (主題)。如果選擇 CodePipeline,請選取 Pipeline ARN (管道 ARN)。
-
展開任何收合的區段以選擇其他選項。可摺疊區段會因目標類型而有所不同,其中包括 Configure input (設定輸入)、Retry policy and dead-letter queue (重試政策和無效字母佇列) 和 Compute options (運算選項) 等群組。接著提供您所選取目標類型需要的任何其他組態詳細資訊。
-
(選用) 為規則輸入一或多個標籤。如需詳細資訊,請參閱《Amazon EventBridge 使用者指南》中的 Amazon EventBridge 標籤。
-
選擇 Create (建立 OpsItem)。
為參數政策設定 EventBridge
本主題說明如何建立 EventBridge 規則,根據在您 AWS 帳戶 帳戶中一或多個參數政策上發生的事件呼叫目標。當您建立進階參數時,您可以指定參數過期的時間、參數過期前何時要接收到通知,以及在參數沒有變更的情況下要等待多久的時間才傳送通知。您可以使用下列程序來設定這些事件的通知。如需詳細資訊,請參閱 指派參數政策 及 管理參數層。
為 Systems Manager 參數政策設定 EventBridge
在 https://console.aws.amazon.com/events/
開啟 Amazon EventBridge 主控台。 -
在導覽窗格中,選擇 Rules (規則),然後選擇 Create rule (建立規則)。
-或-
如果 Amazon EventBridge 首頁先開啟,請選擇 Create rule (建立規則)。
-
輸入規則的名稱和描述。
在同一個區域和同一個事件匯流排上,規則不能與另一個規則同名。
-
針對 Define pattern (定義模式),選擇 Event pattern(事件模式)。
-
對於 Event matching pattern (事件比對模式),選擇 Custom pattern (自訂模式)。
-
對於 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" ] } } -
修改參數的內容,以及您希望採取動作的政策類型。例如,以下內容表示在名為
OncallDuties
的參數過期或遭到刪除時採取動作:{ "source": [ "aws.ssm" ], "detail-type": [ "Parameter Store Policy Action" ], "detail": { "parameter-name": [ "/OncallDuties" ], "policy-type": [ "Expiration" ] } }
-
選擇 Save (儲存)。
-
針對 Select event bus (選取事件匯流排),選擇要與此規則建立關聯的事件匯流排。如果您想要此規則由來自您自己 AWS 帳戶 的相符事件觸發,請選取 AWS default event bus (AWS 預設事件匯流排)。當您帳戶中的 AWS 服務發出事件時,一律會前往您帳戶的預設事件匯流排。
-
對於 Select targets (選取目標),選擇目標類型和支援的資源。例如,如果您選擇 SNS topic (SNS 主題),請選取 Topic (主題)。如果選擇 CodePipeline,請選取 Pipeline ARN (管道 ARN)。
-
展開任何收合的區段以選擇其他選項。可摺疊區段會因目標類型而有所不同,其中包括 Configure input (設定輸入)、Retry policy and dead-letter queue (重試政策和無效字母佇列) 和 Compute options (運算選項) 等群組。接著提供您所選取目標類型需要的任何其他組態詳細資訊。
-
(選用) 為規則輸入一或多個標籤。如需詳細資訊,請參閱《Amazon EventBridge 使用者指南》中的 Amazon EventBridge 標籤。
-
選擇 Create (建立 OpsItem)。
相關資訊
-
(部落格文章) 使用參數標籤以在環境中輕鬆地更新組態
-
《Amazon EventBridge 使用者指南》中的教學課程:使用 EventBridge 將事件轉送至 AWS Systems ManagerRun Command
-
《Amazon EventBridge 使用者指南》中的教學課程:將 AWS Systems Manager Automation 設定為 EventBridge 目標