翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon SNS トピックへのアクセス許可
このトピックでは、別の アカウントが所有する Amazon SNS トピックを配信 AWS Config するように を設定する方法について説明します。 にはAmazon SNSトピックに通知を送信するために必要なアクセス許可 AWS Config が必要です。
AWS Config コンソールで新しい Amazon SNS トピックを作成すると、 は必要なアクセス許可 AWS Config を付与します。既存の Amazon SNS トピックを選択した場合は、Amazon SNS トピックに必要なアクセス許可が含まれ、セキュリティのベストプラクティスに従っていることを確認します。
クロスリージョン Amazon SNS トピックはサポートされていません
AWS Config は現在、同じ 内 AWS リージョン およびアカウント間のアクセスのみをサポートしています。
目次
IAM ロール使用時に Amazon SNS トピックに必要なアクセス許可
アクセス許可ポリシーは、別のアカウントが所有する Amazon SNS トピックに適用できます。他のアカウントから Amazon SNS トピックを使用する場合は、既存の Amazon SNS トピックに以下のポリシーを適用します。
{ "Id": "Policy_ID", "Statement": [ { "Sid": "AWSConfigSNSPolicy", "Action": [ "sns:Publish" ], "Effect": "Allow", "Resource": "arn:aws:sns:
region
:account-id
:myTopic
", "Principal": { "AWS": [ "account-id1
", "account-id2
", "account-id3
" ] } } ] }
Resource
キーの場合、account-id
はトピック所有者の AWS
アカウント番号です。account-id1
、account-id2
、および account-id3
には、Amazon SNS トピックにデータを送信する AWS アカウント を使用します。region
と myTopic
は適切な値に置き換えることができます。
が Amazon SNS トピックに通知 AWS Config を送信すると、まず IAM ロールの使用を試みますが、ロールまたはトピックに発行するアクセス許可がない場合、この試行 AWS アカウント は失敗します。この場合、 は通知を再度 AWS Config 送信します。今回は AWS Config サービスプリンシパル名 (SPN) として送信します。配信が正常に実行される前に、オピックのためのアクセスポリシーは sns:Publish
プリンシパル名にconfig.amazonaws.com
アクセスを許可する必要があります。IAM ロールにトピックへの公開権限がない場合、 AWS Config に Amazon SNS トピックへのアクセスを許可するには、次のセクションで説明するアクセスポリシーを、Amazon SNS トピックにアタッチする必要があります。
サービスでリンクされたロールを使用する際 Amazon SNS トピックに必要なアクセス許可
AWS Config サービスにリンクされたロールには、Amazon SNS トピックにアクセスするアクセス許可がありません。したがって、サービスにリンクされたロール (SLR) AWS Config を使用して を設定すると AWS Config 、 は代わりにサービスプリンシパルとして AWS Config 情報を送信します。Amazon SNS トピックに情報を送信するための AWS Config アクセス権を付与するには、以下で説明するアクセスポリシーを Amazon SNS トピックにアタッチする必要があります。
同じアカウント設定の場合、Amazon SNS トピックと SLR が同じアカウントにあり、Amazon SNS ポリシーが SLR に「sns:Publish
」を許可する場合、 AWS Config
SPN を使用する必要はありません。以下のアクセス許可ポリシーとセキュリティのベストプラクティスの推奨事項は、クロスアカウント設定のためのものです。
Amazon SNS トピック AWS Config へのアクセスの許可
このポリシーにより AWS Config 、 は Amazon SNS トピックに通知を送信できます。別のアカウントから Amazon SNS トピック AWS Config へのアクセスを許可するには、次のアクセス許可ポリシーをアタッチする必要があります。
注記
セキュリティのベストプラクティスとして、 が想定ユーザーに代わって リソースにアクセスするの AWS Config は、 AWS:SourceAccount
条件にリストされているアカウントへのアクセスを制限することでのみにすることを強くお勧めします。
{ "Id": "Policy_ID", "Statement": [ { "Sid": "AWSConfigSNSPolicy", "Effect": "Allow", "Principal": { "Service": "config.amazonaws.com" }, "Action": "sns:Publish", "Resource": "arn:aws:sns:
region
:account-id
:myTopic
", "Condition" : { "StringEquals": { "AWS:SourceAccount": [ "account-id1
", "account-id2
", "account-id3
" ] } } } ] }
Resource
キーの場合、account-id
はトピック所有者の AWS
アカウント番号です。account-id1
、account-id2
、および account-id3
には、Amazon SNS トピックにデータを送信する AWS アカウント を使用します。region
と myTopic
は適切な値に置き換えることができます。
前の Amazon SNS トピックポリシーAWS:SourceAccount
の条件を使用して、特定のアカウントに代わってオペレーションを実行するときに AWS Config 、サービスプリンシパル名 (SPN) が Amazon SNS トピックとのみやり取りするように制限できます。
AWS Config は、特定の AWS Config 配信チャネルに代わってオペレーションを実行するときに S3 バケットとのみやり取りするようにサービスプリンシパル名 (SPN) を制限する AWS Config AWS:SourceArn
条件もサポートしています。 AWS Config サービスプリンシパル名 (SPN) を使用する場合、 AWS:SourceArn
プロパティは常に に設定されます。arn:aws:config:sourceRegion:sourceAccountID:*
ここで、 sourceRegion
は配信チャネルのリージョンであり、 sourceAccountID
は配信チャネルを含むアカウントの ID です。 AWS Config 配信チャネルの詳細については、「配信チャネルの管理」を参照してください。例えば、アカウント のus-east-1
リージョン の配信チャネルに代わってのみ S3 バケットとやり取りするように AWS Config サービスプリンシパル名 (SPN) を制限するには、次の条件を追加します123456789012
。 "ArnLike": {"AWS:SourceArn": "arn:aws:config:us-east-1:123456789012:*"}
Amazon SNS トピックのトラブルシューティング
AWS Config には、Amazon SNS トピックに通知を送信するアクセス許可が必要です。Amazon SNS トピックが通知を受信できない場合は、引き受け AWS Config ていた IAM ロールに必要なsns:Publish
アクセス許可があることを確認します。