本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立或設定通知規則目標
通知規則目標是針對 Slack 或 Microsoft 團隊通道設定的 Amazon SNS 主題或 AWS Chatbot 用戶端。
您必須先建立 AWS Chatbot 用戶端,才能選取用戶端做為目標。當您選擇 AWS Chatbot 用戶端作為通知規則的目標時,系統會為該 AWS Chatbot 用戶端設定 Amazon SNS 主題,其中包含將通知傳送至 Slack 或 Microsoft Teams 頻道所需的所有政策。您不需要為 AWS Chatbot 用戶端設定任何現有的 Amazon SNS 主題。
建立通知規則時,您可以在開發人員工具主控台中建立 Amazon SNS 通知規則目標。將會為您套用允許通知傳送至該主題的政策。這是為通知規則建立目標的最簡單方法。如需詳細資訊,請參閱 建立通知規則。
如果您使用現有 Amazon SNS 主題,必須為它設定存取政策,以允許資源將通知傳送至該主題。如需範例,請參閱設定通知的 Amazon SNS 主題。
注意
如果您要使用現有 Amazon SNS 主題而非建立新主題,請在 Targets (目標) 中選擇其 ARN。請確定主題具有適當的存取政策,而且訂閱者清單只包含允許查看資源相關資訊的使用者。如果 Amazon SNS 主題是在 2019 年 11 月 5 日之前用於 CodeCommit 通知的主題,則該主題將包含允許發佈 CodeCommit 到該主題的政策,該主題包含與 AWS CodeStar 通知所需權限不同的政策。不建議使用這些主題。如果您想要使用針對該體驗建立的原則,除了已存在的原則之外,您還必須新增 AWS CodeStar 通知的必要原則。如需詳細資訊,請參閱 設定通知的 Amazon SNS 主題 及 了解通知內容和安全性。
如果您想要擴大通知的範圍,可以手動設定通知與 C AWS hatbot 之間的整合,以便將通知傳送到 Amazon Chime 聊天室。如需詳細資訊,請參閱「目標」及「將通知與 AWS Chatbot 和 Amazon Chime 整合」。
設定現有 Amazon SNS 主題做為通知規則目標 (主控台)
登入 AWS Management Console 並開啟 Amazon SNS 主控台,網址為 https://console.aws.amazon.com/sns/v3/home
。 -
於導覽列中,選擇 Topics (主題)。選擇主題,然後選擇 Edit (編輯)。
-
展開 Access policy (存取政策),然後選擇 Advanced (進階)。
-
在 JSON 編輯器中,為政策新增下列陳述式。包括主題 ARN、 AWS 區域、 AWS 帳戶 ID 和主題名稱。
{ "Sid": "AWSCodeStarNotifications_publish", "Effect": "Allow", "Principal": { "Service": [ "codestar-notifications.amazonaws.com" ] }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:
us-east-2
:123456789012
:codestar-notifications-MyTopicForNotificationRules
" }該政策陳述式應如以下範例所示。
{ "Version": "2008-10-17", "Id": "__default_policy_ID", "Statement": [ { "Sid": "__default_statement_ID", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "SNS:GetTopicAttributes", "SNS:SetTopicAttributes", "SNS:AddPermission", "SNS:RemovePermission", "SNS:DeleteTopic", "SNS:Subscribe", "SNS:ListSubscriptionsByTopic", "SNS:Publish" ], "Resource": "arn:aws:sns:
us-east-2
:123456789012
:codestar-notifications-MyTopicForNotificationRules
", "Condition": { "StringEquals": { "AWS:SourceOwner": "123456789012" } } }, { "Sid": "AWSCodeStarNotifications_publish", "Effect": "Allow", "Principal": { "Service": [ "codestar-notifications.amazonaws.com" ] }, "Action": "SNS:Publish", "Resource": "arn:aws:sns:us-east-2
:123456789012
:codestar-notifications-MyTopicForNotificationRules
" } ] } -
選擇儲存變更。
-
在 Subscriptions (訂閱) 中,檢閱主題訂閱者的清單。適當地新增、編輯或刪除此通知規則目標的訂閱者。請確定訂閱者清單只包含允許查看資源相關資訊的使用者。如需詳細資訊,請參閱 了解通知內容和安全性。
使用 Slack 建立 AWS Chatbot 用戶端以用作目標
請依照 AWS Chatbot 管理員指南中的在 Slack 中設定 AWS Chatbot 的指示操作。當您執行這項操作時,請考慮下列選項,以便與通知進行最佳整合:
建立 IAM 角色時,請考慮選擇一個容易識別該角色的角色名稱 (例如
AWSCodeStarNotifications-Chatbot-Slack-Role
)。這有助於識別未來角色的用途。在 SNS 主題中,您不必選擇主題或 AWS 地區。當您選擇 AWS Chatbot 用戶端做為目標時,系統會為 C AWS hatbot 用戶端建立並設定具有所有必要許可的 Amazon SNS 主題,作為通知規則建立程序的一部分。
-
完成用戶端建立程序。然後,您可以在建立通知規則時選擇此用戶端做為目標。如需詳細資訊,請參閱 建立通知規則。
注意
為您設定 Amazon SNS 主題後,請勿從 AWS Chatbot 用戶端移除該主題。這樣做會讓通知無法傳送至 Slack。
使用 Microsoft 團隊創建 AWS Chatbot 客戶端以用作目標
請依照《AWS Chatbot 管理員指南》中的在 Microsoft Teams 中設定 AWS Chatbot 的指示操作。當您執行這項操作時,請考慮下列選項,以便與通知進行最佳整合:
建立 IAM 角色時,請考慮選擇一個容易識別該角色的角色名稱 (例如
AWSCodeStarNotifications-Chatbot-Microsoft-Teams-Role
)。這有助於識別未來角色的用途。在 SNS 主題中,您不必選擇主題或 AWS 地區。當您選擇 AWS Chatbot 用戶端做為目標時,系統會為 C AWS hatbot 用戶端建立並設定具有所有必要許可的 Amazon SNS 主題,作為通知規則建立程序的一部分。
-
完成用戶端建立程序。然後,您可以在建立通知規則時選擇此用戶端做為目標。如需詳細資訊,請參閱 建立通知規則。
注意
為您設定 Amazon SNS 主題後,請勿從 AWS Chatbot 用戶端移除該主題。這樣做會讓通知無法傳送至 Microsoft Teams。