スキップしてコンテンツを表示

組織の AWS アカウントが、アカウント内の Amazon SNS トピックにメッセージを発行できるようにする方法を教えてください。

所要時間1分
0

Amazon Simple Notification Service (Amazon SNS) トピックで、AWS Organizations で使用している組織内の任意の AWS アカウントからのメッセージを受信したいです。

簡単な説明

Amazon SNS トピックのアクセスポリシーを設定して、組織内のすべてのアカウントがトピックにメッセージを発行できるようにします。アクセスポリシーにグローバル条件キー aws:PrincipalOrgID を含めた後に、組織の ID を指定します。

解決策

次の手順を実行します。

  1. Organizations コンソールで組織の ID を見つけます。詳細については、「管理アカウントで組織の詳細を確認する」を参照してください。
  2. Amazon SNS コンソールでトピックを作成します新しいトピックの Amazon リソースネーム (ARN) を書き留めておきます。
  3. Amazon SNS コンソールを開きます。
  4. ナビゲーションペインで、[トピック] を選択します。
  5. ステップ 2 で作成したトピックを選択し、[編集] を選択します。
  6. [編集] ページで [アクセスポリシー - オプション] を展開します。
  7. 次のポリシー例を JSON エディタに貼り付け、[変更を保存] を選択します。
    重要: snsTopicArn はs、該当するトピックの ARN に置き換えます。次に、myOrgId を該当する組織 ID に置き換えます。
    {
      "Version": "2012-10-17",
      "Id": "__default_policy_ID",
      "Statement": [
        {
          "Sid": "allow-publish-from-organization-accounts",
          "Effect": "Allow",
          "Principal": {
            "AWS": "*"
          },
          "Action": [
            "sns:Publish"
          ],
          "Resource": "snsTopicArn",
          "Condition": {
            "StringEquals": {
              "aws:PrincipalOrgID": "myOrgId"
            }
          }
        }
      ]
    }
    ヒント: 組織内のアカウントが、GetTopicAttributes などの追加の Amazon SNS API アクションを実行できるようにするには、ポリシー内の "Action" にアクションを追加します。
  8. メールアドレスを SNS トピックにサブスクライブし、テストを実施します。サブスクリプションを作成するときに、トピックの ARN を指定する必要があります。
  9. メール内で AWS Notifications からのサブスクリプション確認メッセージを見つけ、サブスクリプションを確認します。
  10. 組織内の任意の AWS アカウントを使用して SNS アカウントにメッセージを発行します。発行リクエストでは、トピックの ARN を指定する必要があります。

発行されたメッセージがメールで送信されます。

関連情報

AWS グローバル条件コンテキストキー

Amazon SNS アクセス制御のケース例

Amazon SNS でのアクセス管理の概要

AWS Organizations で使用できる AWS サービス

AWS公式更新しました 1年前
コメントはありません

関連するコンテンツ