Change Manager 通知用の Amazon SNS トピックの設定
AWS Systems Manager の一機能である Change 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 リソースネーム (ARN) を指定する必要があります。
タスク 2: Amazon SNS アクセスポリシーを更新する
以下の手順を使用して Amazon SNS アクセスポリシーを更新し、Systems Manager がタスク 1 で作成した Amazon SNS トピックに Change Manager 通知を発行できるようにします。このタスクを完了しなければ、トピックを追加するイベントの通知を送信するアクセス許可が Change Manager に付与されません。
AWS Management Console にサインインして Amazon SNS コンソール (https://console.aws.amazon.com/sns/v3/home
) を開きます。 -
ナビゲーションペインで、[トピック] を選択します。
-
タスク 1 で作成したトピックを選択してから、[Edit] (編集) をクリックします。
-
[アクセスポリシー] を展開します。
-
以下の
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
ブロックの後にこのブロックを入力し、作成したトピックの該当する値でregion
、account-id
、およびtopic-name
を置き換えます。 -
[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 がタスク 1 で作成した Amazon SNS トピックに Change Manager の承認通知を発行できるようにします。
-
AWS KMS コンソール (https://console.aws.amazon.com/kms
) を開きます。 -
ナビゲーションペインで、[Customer managed keys (カスタマー管理型のキー)] を選択します。
-
トピックの作成時に選択したカスタマーマネージドキーの ID を選択します。
-
[Key Policy] (キーポリシー) セクションで、[Switch to policy view] (ポリシービューへの切り替え) を選択します。
-
[Edit] を選択します。
-
既存のポリシーの既存の
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
" ] } } } -
次に、リソースポリシーの既存の
Sid
ブロックのいずれかの後に次のSid
ブロックを入力して、サービス間の混乱した使節の問題を防止します。このブロックは、
aws:SourceArn
およびaws: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
" } } } ] } -
[Save changes] (変更の保存) をクリックします。