翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ベーシックAmazon SQSポリシーの例
このセクションでは、一般的なAmazon SQSユースケースのサンプルポリシーを示します。
コンソールを使用して、ユーザーにポリシーをアタッチしながら各ポリシーの効果を検証できます。最初は、ユーザーにアクセス権限が付与されてないため、コンソールを使用して何もできません。ユーザーにポリシーをアタッチすることで、ユーザーがコンソールで多様なアクションを実行できることを確認できます。
2 つのブラウザウィンドウを使用することをお勧めします。1 つはアクセス許可を付与し、もう 1 つはユーザーの認証情報 AWS Management Console を使用して にサインインし、ユーザーに付与するアクセス許可を検証します。
例 1: 1 つのアクセス許可を 1 つに付与する AWS アカウント
次のポリシー例では111122223333、米国東部 (オハイオ) リージョン444455556666/queue1で という名前のキューのSendMessageアクセス許可を AWS アカウント 番号に付与します。
- JSON
-
-
{
"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と 111122223333の両方のReceiveMessageアクセス許可を AWS アカウント 番号に付与します444455556666/queue1。
- JSON
-
-
{
"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 SQS が米国東部 (111122223333オハイオ444455556666) リージョン123456789012/queue1で という名前のキューの共有アクセスを許可するすべてのアクションを使用するための 2 つの異なる AWS アカウント 番号 ( と ) のアクセス許可を付与します。 Amazon SQS
- JSON
-
-
{
"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、Amazon SQS が米国東部 (オハイオ) リージョン123456789012/queue1で という名前のキューの共有アクセスを許可するすべてのアクションを使用するための111122223333クロスアカウントアクセス許可を AWS アカウント および username1に付与します。
クロスアカウント権限は、次のアクションには適用されません。
- JSON
-
-
{
"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 アクセス権限を付与します。
- JSON
-
-
{
"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 の間のみ付与します。
- JSON
-
-
{
"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範囲のすべてのユーザーにすべてのアクセス権限を付与する
以下のサンプルポリシーは、すべてのユーザー (匿名ユーザー) に、 111122223333/queue1という名前のキューで共有できるすべてのAmazon SQS アクションを使用するアクセス権限を、リクエストが192.0.2.0/24 CIDRの範囲から生成された場合のみ付与します。
- JSON
-
-
{
"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 を除く) に存在するすべてのユーザー (匿名ユーザー) に、SendMessage/queue1 という名前のキューに対する111122223333アクションを使用するアクセス権限を付与します。
-
2 番目のステートメントは、12.148.72.0/23CIDR の範囲に存在するすべてのユーザー (匿名ユーザー) のキュー使用をブロックます。
- JSON
-
-
{
"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"
}
}
}]
}