Amazon SQSポリシーの基本例 - Amazon Simple Queue Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon SQSポリシーの基本例

このセクションでは、一般的な Amazon SQSユースケースのポリシー例を示します。

コンソールを使用して、ユーザーにポリシーをアタッチしながら各ポリシーの効果を検証できます。最初は、ユーザーにアクセス権限が付与されてないため、コンソールを使用して何もできません。ユーザーにポリシーをアタッチすることで、ユーザーがコンソールで多様なアクションを実行できることを確認できます。

注記

2 つのブラウザウィンドウを使用することをお勧めします。1 つはアクセス許可を付与し、もう 1 つはユーザーの認証情報 AWS Management Console を使用して にサインインし、ユーザーに付与するアクセス許可を検証します。

例 1: アクセス許可を 1 つ付与する AWS アカウント

次のポリシー例では111122223333、米国東部 (オハイオ) リージョン444455556666/queue1で という名前のキューのSendMessageアクセス許可を AWS アカウント 番号に付与します。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_SendMessage", "Effect": "Allow", "Principal": { "AWS": [ "111122223333" ] }, "Action": "sqs:SendMessage", "Resource": "arn:aws:sqs:us-east-2:444455556666:queue1" }] }

例 2: 1 つの に 2 つのアクセス許可を付与する AWS アカウント

次のポリシー例では、 という名前のキューの SendMessageと アクセスReceiveMessage許可111122223333の両方に AWS アカウント 番号を付与します444455556666/queue1

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_Send_Receive", "Effect": "Allow", "Principal": { "AWS": [ "111122223333" ] }, "Action": [ "sqs:SendMessage", "sqs:ReceiveMessage" ], "Resource": "arn:aws:sqs:*:444455556666:queue1" }] }

例 3: 2 つの にすべてのアクセス許可を付与する AWS アカウント

次のポリシー例では、Amazon が米国東部 (111122223333オハイオ444455556666) リージョン123456789012/queue1で という名前のキューの共有アクセスSQSを許可するすべてのアクションを使用するための 2 つの異なる AWS アカウント 番号 ( と ) のアクセス許可を付与します。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_AllActions", "Effect": "Allow", "Principal": { "AWS": [ "111122223333", "444455556666" ] }, "Action": "sqs:*", "Resource": "arn:aws:sqs:us-east-2:123456789012:queue1" }] }

例4: ロールおよびユーザー名にクロスアカウントのアクセス許可を付与する

次のポリシー例ではrole1、 および username1 AWS アカウント に、Amazon が米国東部 (オハイオ) リージョン123456789012/queue1で という名前のキューの共有アクセスSQSを許可するすべてのアクションを使用するための111122223333クロスアカウントアクセス許可を付与します。

クロスアカウント権限は、次のアクションには適用されません。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_AllActions", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:role/role1", "arn:aws:iam::111122223333:user/username1" ] }, "Action": "sqs:*", "Resource": "arn:aws:sqs:us-east-2:123456789012:queue1" }] }

例5:すべてのユーザーにアクセス権限を付与する

以下のサンプルポリシーは、すべてのユーザー (匿名ユーザー) に、111122223333/queue1 という名前のキューに対する ReceiveMessage アクセス権限を付与します。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_AnonymousAccess_ReceiveMessage", "Effect": "Allow", "Principal": "*", "Action": "sqs:ReceiveMessage", "Resource": "arn:aws:sqs:*:111122223333:queue1" }] }

例6:すべてのユーザーに時間制限付きのアクセス権限を付与する

以下のサンプルポリシーは、すべてのユーザー (匿名ユーザー) に、ReceiveMessageという名前のキューに対する111122223333/queue1アクセス権限を 2009 年 1 月 31 日の午後 12:00 (正午) から 午後 3:00 の間のみ付与します。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_AnonymousAccess_ReceiveMessage_TimeLimit", "Effect": "Allow", "Principal": "*", "Action": "sqs:ReceiveMessage", "Resource": "arn:aws:sqs:*:111122223333:queue1", "Condition" : { "DateGreaterThan" : { "aws:CurrentTime":"2009-01-31T12:00Z" }, "DateLessThan" : { "aws:CurrentTime":"2009-01-31T15:00Z" } } }] }

例 7: CIDR範囲内のすべてのユーザーにすべてのアクセス許可を付与する

次のポリシー例では、リクエストが 192.0.2.0/24 CIDR 範囲から来た場合にのみ111122223333/queue1、 という名前のキューで共有できるすべての Amazon SQSアクションを使用するアクセス許可をすべてのユーザー (匿名ユーザー) に付与します。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_AnonymousAccess_AllActions_AllowlistIP", "Effect": "Allow", "Principal": "*", "Action": "sqs:*", "Resource": "arn:aws:sqs:*:111122223333:queue1", "Condition" : { "IpAddress" : { "aws:SourceIp":"192.0.2.0/24" } } }] }

例 8: 異なるCIDR範囲のユーザーに対する許可リストとブロックリストのアクセス許可

以下のサンプルポリシーには、2つのステートメントが含まれています。

  • 最初のステートメントは、 192.0.2.0/24CIDR範囲内のすべてのユーザー (匿名ユーザー) に ( を除く192.0.2.188) 111122223333/queue1 という名前のキューの SendMessage アクションを使用するアクセス許可を付与します。

  • 2 番目のステートメントは12.148.72.0/23CIDR、範囲内のすべてのユーザー (匿名ユーザー) がキューを使用することをブロックします。

{ "Version": "2012-10-17", "Id": "Queue1_Policy_UUID", "Statement": [{ "Sid":"Queue1_AnonymousAccess_SendMessage_IPLimit", "Effect": "Allow", "Principal": "*", "Action": "sqs:SendMessage", "Resource": "arn:aws:sqs:*:111122223333:queue1", "Condition" : { "IpAddress" : { "aws:SourceIp":"192.0.2.0/24" }, "NotIpAddress" : { "aws:SourceIp":"192.0.2.188/32" } } }, { "Sid":"Queue1_AnonymousAccess_AllActions_IPLimit_Deny", "Effect": "Deny", "Principal": "*", "Action": "sqs:*", "Resource": "arn:aws:sqs:*:111122223333:queue1", "Condition" : { "IpAddress" : { "aws:SourceIp":"12.148.72.0/23" } } }] }