Amazon SQS 정책의 기본 예제 - Amazon Simple Queue Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon SQS 정책의 기본 예제

이 섹션에서는 일반적인 Amazon SQS 사용 사례에 대한 정책 예제를 보여줍니다.

콘솔을 사용하여 정책을 사용자에게 연결할 때 각 정책의 효과를 확인할 수 있습니다. 처음에 사용자는 권한을 가지고 있지 않으며 콘솔에서 어떠한 작업도 수행할 수 없습니다. 정책을 사용자에게 연결하면 사용자가 콘솔에서 다양한 작업을 수행할 수 있는지 확인할 수 있습니다.

참고

브라우저 창 2개를 사용하는 것이 좋습니다. 하나는 권한을 부여하고 다른 하나는 권한을 부여할 때 사용자의 자격 증명을 AWS Management Console 사용하여에 로그인하여 권한을 확인하는 것입니다.

예제 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: 한에 두 개의 권한 부여 AWS 계정

다음 예제 정책은 라는 대기열에 대해 SendMessageReceiveMessage 권한을 AWS 계정 111122223333 모두 부여합니다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 허용하는 모든 작업을 사용할 수 있는 두 개의 서로 다른 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 Amazon이 미국 동부(오하이오) 리전123456789012/queue1에 있는 라는 대기열에 대한 공유 액세스를 SQS 허용하는 모든 작업을 사용할 수 있는 권한을 및 AWS 계정 번호 username1 이하의 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: 모든 사용자에게 시간 제한적인 권한 부여

다음 정책 예제는 모든 사용자(익명 사용자)에게 111122223333/queue1라는 이름의 대기열에 대한 ReceiveMessage 권한을 부여하지만, 2009년 1월 31일에는 오후 12시(정오)부터 오후 3시까지만 가능합니다.

{ "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 범위의 모든 사용자에게 모든 권한 부여

다음 예제 정책은 모든 사용자(익명 사용자)에게 라는 대기열에 대해 공유할 수 있는 가능한 모든 Amazon SQS 작업을 사용할 수 있는 권한을 부여합니다. 단111122223333/queue1, 요청이 192.0.2.0/24 CIDR 범위에서 온 경우에만 가능합니다.

{ "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/24 CIDR 범위( 제외)의 모든 사용자(익명 사용자192.0.2.188)에게 111122223333/queue1이라는 대기열에 대한 SendMessage 작업을 사용할 수 있는 권한을 부여합니다.

  • 두 번째 문은 12.148.72.0/23 CIDR 범위의 모든 사용자(익명 사용자)가 대기열을 사용하지 못하도록 차단합니다.

{ "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" } } }] }