他の AWS Identity and Access Management (IAM) エンティティが Amazon Simple Notification Service (Amazon SNS) トピックにアクセスすることを許可したいと考えています。Amazon SNS トピックのアクセスポリシーを編集して、必要な許可を付与するにはどうすればよいですか?
解決方法
Amazon SNS コンソールを使用して Amazon SNS トピックのアクセスポリシーを編集するには
1. Amazon SNS コンソールを開きます。
2. 左側のナビゲーションペインで、[Topics] (トピック) を選択します。
3. Amazon SNS トピックの名前を選択します。
4. [Edit] (編集) ボタンを選択します。
5. [Access policy - optional] (アクセスポリシー - オプション) セクションを展開します。
6. アクセスポリシーを編集して、ユースケースに必要な許可を付与します。
注: アクセスポリシーの記述方法の詳細については、Overview of managing access in Amazon SNS を参照してください。
7. [Save Changes] (変更を保存) を選択します。
AWS CLI を使用して Amazon SNS トピックのアクセスポリシーを編集するには
注: AWS Command Line Interface (AWS CLI) コマンドの実行中にエラーが発生した場合は、最新の AWS CLI バージョンを使用していることを確認してください。
許可を変更、追加、または削除するには、次の SetTopicAttributes コマンドを実行します。
重要: <TopicARN> をトピックの Amazon リソースネーム (ARN) に置き換えてください。testpolicy.json をポリシードキュメントのパスに置き換えてください。
aws sns set-topic-attributes --topic-arn '<TopicARN>' --attribute-name 'Policy' --attribute-value file://testpolicy.json
許可のみを追加するには、次の AddPermission コマンドを実行します。
重要: <TopicARN> をトピックの ARN に置き換えてください。AllowProdAccountsXXX を新しいポリシーステートメントの一意の識別子に置き換えてください。AWS Account ID を特定のアクションへのアクセスを許可する IAM エンティティのアカウント ID に置き換えてください。Publish および Subscribe を指定した IAM エンティティのために許可するアクションのリストに置き換えてください。
sns add-permission --topic-arn '<TopicARN>' --label 'AllowProdAccountsXXX' --aws-account-id 'AWS Account ID' --action-name 'Publish' 'Subscribe'
関連情報
Amazon SNS アクセスコントロールの例
Amazon SNS のアクション、リソース、および条件キー