為 Change Manager 通知設定 Amazon SNS 主題 - AWS Systems Manager

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

為 Change Manager 通知設定 Amazon SNS 主題

您可以設定 Change Manager (AWS Systems Manager 的功能),以針對與變更請求和變更範本相關的事件向 Amazon Simple Notification Service (Amazon SNS) 主題傳送通知。完成下列任務,以接收您新增主題的 Change Manager 事件的通知。

任務 1:建立並訂閱 Amazon SNS 主題

首先,您必須建立並訂閱 Amazon SNS 主題。如需詳細資訊,請參閱《Amazon Simple Notification Service 開發人員指南》中的建立 Amazon SNS 主題訂閱 Amazon SNS 主題

注意

若要接收通知,您必須指定委派管理員帳戶所在相同 AWS 區域 和 AWS 帳戶 中 Amazon SNS 主題的 Amazon Resource Name (ARN)。

任務 2:更新 Amazon SNS 存取政策

使用下列程序更新 Amazon SNS 存取政策,讓 Systems Manager 可以將 Change Manager 通知發佈至您在任務 1 中建立的 Amazon SNS 主題。如果不完成此任務,Change Manager 沒有為您新增主題的事件傳送通知的許可。

  1. 登入 AWS Management Console,並在 https://console.aws.amazon.com/sns/v3/home 開啟 Amazon SNS 主控台。

  2. 在導覽窗格中,選擇 Topics (主題)。

  3. 選擇您在任務 1 中建立的主題,然後選擇 Edit (編輯)。

  4. 展開 Access policy (存取政策)

  5. 新增並更新下列 Sid 區塊至現有政策,並使用自己的資訊取代每個使用者輸入預留位置

    { "Sid": "Allow Change Manager to publish to this topic", "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": "sns:Publish", "Resource": "arn:aws:sns:region:account-id:topic-name", "Condition": { "StringEquals": { "aws:SourceAccount": [ "account-id" ] } } }

    在現有 Sid 區塊後輸入此區塊,並將 regionaccount-idtopic_name 取代為您建立之主題的適當值。

  6. 選擇 Save changes (儲存變更)

現在,當您新增至主題的事件類型發生時,系統會傳送通知給 Amazon SNS 主題。

重要

如果您使用 AWS Key Management Service (AWS KMS) 伺服器端加密金鑰設定 Amazon SNS 主題,則必須完成任務 3。

任務 3:(選用) 更新 AWS Key Management Service 存取政策

如果您對 Amazon SNS 主題開啟 AWS Key Management Service (AWS KMS) 伺服器端加密,則對於您在設定主題時所選擇的 AWS KMS key,您也必須更新其存取政策。使用下列處理程序更新存取政策,讓 Systems Manager 可以將 Change Manager 核准通知發佈至您在任務 1 中建立的 Amazon SNS 主題。

  1. 開啟位於 AWS KMShttps://console.aws.amazon.com/kms 主控台。

  2. 在導覽窗格中,選擇 Customer managed keys (客戶受管金鑰)。

  3. 選擇您在建立主題時所選擇的客戶受管金鑰的 ID。

  4. Key policy (金鑰政策) 區段中,選擇 Switch to policy view (切換至政策檢視)

  5. 選擇 編輯

  6. 在現有政策中的某個現有 Sid 區塊後輸入以下 Sid 區塊。將每個使用者輸入預留位置替換為自己的資訊。

    { "Sid": "Allow Change Manager to decrypt the key", "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey*" ], "Resource": "arn:aws:kms:region:account-id:key/key-id", "Condition": { "StringEquals": { "aws:SourceAccount": [ "account-id" ] } } }
  7. 現在在資源政策中的某個現有 Sid 區塊之後輸入以下 Sid 區塊以協助防止跨服務混淆代理人問題

    此區塊使用 aws:SourceArnaws:SourceAccount 全域條件內容索引鍵,可限制 Systems Manager 為資源提供其他服務的許可。

    將每個使用者輸入預留位置取代為自己的資訊。

    { "Version": "2008-10-17", "Statement": [ { "Sid": "Configure confused deputy protection for AWS KMS keys used in Amazon SNS topic when called from Systems Manager", "Effect": "Allow", "Principal": { "Service": "ssm.amazonaws.com" }, "Action": [ "sns:Publish" ], "Resource": "arn:aws:sns:region:account-id:topic-name", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:ssm:region:account-id:*" }, "StringEquals": { "aws:SourceAccount": "account-id" } } } ] }
  8. 選擇 Save changes (儲存變更)