Amazon에서 정책 사용 SQS - Amazon Simple Queue Service

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

Amazon에서 정책 사용 SQS

이 주제에서는 계정 관리자가 자격 증명(사용자, 그룹 및 역할)에 권한 정책을 연결할 수 있는 IAM 자격 증명 기반 정책의 예를 제공합니다.

중요

Amazon Simple Queue Service 리소스에 대한 액세스 관리를 위해 제공되는 기본 개념과 옵션 설명에 대한 소개 주제 부분을 먼저 읽어 보는 것이 좋습니다. 자세한 내용은 Amazon에서 액세스 관리 개요 SQS 단원을 참조하십시오.

를 제외한 ListQueues모든 Amazon SQS 작업은 리소스 수준 권한을 지원합니다. 자세한 내용은 Amazon SQS API 권한: 작업 및 리소스 참조 단원을 참조하십시오.

Amazon SQS 및 IAM 정책 사용

사용자에게 Amazon SQS 리소스에 대한 권한을 부여하는 방법에는 Amazon SQS 정책 시스템(리소스 기반 정책)과 IAM 정책 시스템(신원 기반 정책)의 두 가지가 있습니다. IAM 정책에서만 설정할 수 있는 리전 권한인 ListQueues 작업을 제외하고 하나 또는 두 방법을 모두 사용할 수 있습니다.

예를 들어 다음 다이어그램은 IAM 정책과 이에 상응하는 Amazon SQS 정책을 보여줍니다. 이 IAM 정책은 Amazon에 대한 권한SQSReceiveMessage과 AWS 계정queue_xyz에서 호출된 대기열에 대한 SendMessage 작업을 부여하며, 정책은 Bob 및 Susan이라는 이름의 사용자에게 연결됩니다(Bob 및 Susan은 정책에 명시된 권한을 갖습니다). 또한 이 Amazon SQS 정책은 Bob과 Susan에게 동일한 대기열에 대한 ReceiveMessageSendMessage 작업에 대한 권한을 부여합니다.

참고

다음 예제에서는 조건이 없는 간단한 정책을 보여줍니다. 두 정책 중 어느 쪽에서도 특정 조건을 지정하고 동일한 결과를 얻을 수 있습니다.

IAM 정책과 이에 상응하는 Amazon SQS 정책을 비교하는 다이어그램입니다. 이 IAM 정책은 Amazon에 대한 권한SQSReceiveMessage과 AWS 계정queue_xyz에서 호출된 대기열에 대한 SendMessage 작업을 부여하며, 정책은 Bob 및 Susan이라는 이름의 사용자에게 연결됩니다(Bob 및 Susan은 정책에 명시된 권한을 갖습니다). 또한 이 Amazon SQS 정책은 Bob과 Susan에게 동일한 대기열에 대한 ReceiveMessage 및 SendMessage 작업에 대한 권한을 부여합니다.

IAM 와 Amazon SQS 정책 간에는 한 가지 주요 차이점이 있습니다. Amazon SQS 정책 시스템을 사용하면 다른 AWS 계정에 권한을 부여할 수 있지만 IAM는 권한을 부여하지 않습니다.

사용자의 필요에 따라 두 시스템을 함께 사용하여 권한을 관리해야 합니다. 다음 예는 두 정책 시스템이 어떻게 연계하는지 보여줍니다.

  • 첫 번째 예에서 Bob은 자신의 계정에 적용되는 IAM 정책과 Amazon SQS 정책을 모두 가지고 있습니다. IAM 정책은 의 ReceiveMessage 작업에 대한 계정 권한을 부여하는 반면queue_xyz, Amazon SQS 정책은 동일한 대기열의 SendMessage 작업에 대한 계정 권한을 부여합니다. 다음 다이어그램에서 관련 개념을 설명합니다.

    IAM 정책의 구성 요소를 Amazon SQS 정책과 비교하는 다이어그램입니다. 첫 번째 예에서 Bob은 자신의 계정에 적용되는 IAM 정책과 Amazon SQS 정책을 모두 가지고 있습니다. IAM 정책은 의 ReceiveMessage 작업에 대한 계정 권한을 부여하는 반면queue_xyz, Amazon SQS 정책은 동일한 대기열의 SendMessage 작업에 대한 계정 권한을 부여합니다.

    Bob이 에 ReceiveMessage 요청을 보내면 IAM 정책queue_xyz에서 작업을 허용합니다. Bob이 에 SendMessage 요청을 보내면 Amazon SQS 정책queue_xyz에서 작업을 허용합니다.

  • 두 번째 예에서 Bob은 queue_xyz에 대한 액세스 권한을 침해하므로, 해당 대기열에 대한 전체 액세스 권한을 제거해야 합니다. 가장 쉬운 방법은 모든 대기열 작업에 대한 Bob의 액세스를 거부하는 정책을 추가하는 것입니다. 명시적 deny는 항상 allow를 무시하기 때문에 이 정책은 다른 2개 정책을 무시합니다. 정책 평가 로직에 대한 자세한 내용은 Amazon SQS Access Policy Language에서 사용자 지정 정책 사용를 참조하십시오. 다음 다이어그램에서 관련 개념을 설명합니다.

    Amazon IAM 정책을 사용한 SQS 정책 재정의를 보여주는 다이어그램입니다. Bob은 에 대한 액세스를 남용queue_xyz하므로 대기열에 대한 전체 액세스를 제거해야 합니다. 가장 쉬운 방법은 모든 대기열 작업에 대한 Bob의 액세스를 거부하는 정책을 추가하는 것입니다. 명시적 deny는 항상 allow를 무시하기 때문에 이 정책은 다른 2개 정책을 무시합니다.

    또한 대기열에 대한 모든 유형의 액세스를 Bob에게 거부하는 추가 문을 Amazon SQS 정책에 추가할 수 있습니다. 대기열에 대한 Bob 액세스를 거부하는 IAM 정책을 추가하는 것과 동일한 효과가 있습니다. Amazon SQS 작업 및 리소스를 다루는 정책의 예는 섹션을 참조하세요Amazon SQS 정책의 기본 예제. Amazon SQS 정책 작성에 대한 자세한 내용은 섹션을 참조하세요Amazon SQS Access Policy Language에서 사용자 지정 정책 사용.

Amazon SQS 콘솔을 사용하는 데 필요한 권한

Amazon SQS 콘솔로 작업하려는 사용자는 사용자의 에서 Amazon SQS 대기열로 작업할 수 있는 최소 권한 집합이 있어야 합니다 AWS 계정. 예를 들어, 사용자에게 ListQueues 작업을 호출할 권한이 있어 대기열을 나열할 수 있거나 CreateQueue 작업을 호출할 권한이 있어 대기열을 생성할 수 있어야 합니다. Amazon SQS 권한 외에도 Amazon SQS 대기열을 Amazon SNS 주제에 구독하려면 콘솔에 Amazon SNS 작업에 대한 권한도 필요합니다.

최소 필수 권한보다 더 제한적인 IAM 정책을 생성하는 경우 콘솔이 해당 IAM 정책을 사용하는 사용자에게 의도한 대로 작동하지 않을 수 있습니다.

AWS CLI 또는 Amazon SQS 작업에만 호출하는 사용자에게 최소 콘솔 권한을 허용할 필요는 없습니다.