Amazon SQS에 대한 임시 보안 자격 증명 사용 - Amazon Simple Queue Service

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

Amazon SQS에 대한 임시 보안 자격 증명 사용

고유한 보안 자격 증명을 사용하여 사용자를 생성하는 것 외에도, IAM을 통해 모든 사용자에게 임시 보안 자격 증명을 부여하므로 사용자는 AWS 서비스와 리소스에 액세스할 수 있습니다. AWS 계정이 있는 사용자를 관리할 수 있습니다. 또한 시스템에서 AWS 계정이 없는 사용자(페더레이션 사용자)도 관리할 수 있습니다. 또한, AWS 리소스에 액세스하도록 생성한 애플리케이션도 "사용자"로 고려될 수 있습니다.

Amazon SQS에 요청할 때 이 임시 보안 자격 증명을 사용할 수 있습니다. API 라이브러리는 요청 인증 시 이 자격 증명을 사용하여 필요한 서명 값을 계산합니다. 만료된 자격 증명으로 요청을 보내면 Amazon SQS는 요청을 거부합니다.

참고

임시 자격 증명을 기반으로 정책을 설정할 수 없습니다.

사전 조건

  1. IAM을 사용하여 임시 보안 자격 증명 생성:

    • 보안 토큰

    • 액세스 키 ID

    • 비밀 액세스 키

  2. 문자열을 준비하여 임시 액세스 키 ID와 보안 토큰으로 서명합니다.

  3. 자체 보안 액세스 키가 아닌 임시 보안 액세스 키를 사용하여 쿼리 API 요청에 서명합니다.

참고

서명된 쿼리 API 요청을 제출할 때 자체 액세스 키 ID가 아닌 임시 액세스 키 ID를 사용하여 보안 토큰을 포함시킵니다. 임시 보안 자격 증명에 대한 IAM 지원에 대한 자세한 내용을 확인하려면 IAM 사용자 안내서AWS 리소스에 대한 임시 액세스 권한 부여를 확인하세요.

임시 보안 자격 증명을 사용하여 Amazon SQS 쿼리 API 작업을 호출하려면

  1. AWS Identity and Access Management을 사용하여 임시 보안 토큰을 요청합니다. 자세한 내용은 IAM 사용 설명서IAM 사용자의 액세스를 활성화하기 위한 임시 보안 자격 증명 생성을 참조하세요.

    IAM은 보안 토큰, 액세스 키 ID 및 보안 액세스 키를 반환합니다.

  2. 자체 액세스 키 ID가 아닌 임시 액세스 키 ID를 사용하여 쿼리를 준비하고 보안 토큰을 포함시킵니다. 자체 보안 액세스 키가 아닌 임시 보안 액세스 키를 사용하여 쿼리 요청에 서명합니다.

  3. 임시 액세스 키 ID와 보안 토큰으로 서명된 쿼리 문자열을 제출합니다.

    다음 예는 Amazon SQS 요청을 인증하기 위해 임시 보안 자격 증명을 사용하는 방법을 보여줍니다. AUTHPARAMS의 구조는 API 요청의 서명에 따라 달라집니다. 자세한 내용은 Amazon Web Services 일반 참조AWS API 요청에 서명을 참조하세요.

    https://sqs.us-east-2.amazonaws.com/ ?Action=CreateQueue &DefaultVisibilityTimeout=40 &QueueName=MyQueue &Attribute.1.Name=VisibilityTimeout &Attribute.1.Value=40 &Expires=2020-12-18T22%3A52%3A43PST &SecurityToken=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY &AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE &Version=2012-11-05 &AUTHPARAMS

    다음 예제에서는 임시 보안 자격 증명을 사용하여 SendMessageBatch 작업을 통해 두 개의 메시지를 전송합니다.

    https://sqs.us-east-2.amazonaws.com/ ?Action=SendMessageBatch &SendMessageBatchRequestEntry.1.Id=test_msg_001 &SendMessageBatchRequestEntry.1.MessageBody=test%20message%20body%201 &SendMessageBatchRequestEntry.2.Id=test_msg_002 &SendMessageBatchRequestEntry.2.MessageBody=test%20message%20body%202 &SendMessageBatchRequestEntry.2.DelaySeconds=60 &Expires=2020-12-18T22%3A52%3A43PST &SecurityToken=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY &AWSAccessKeyId=AKIAI44QH8DHBEXAMPLE &Version=2012-11-05 &AUTHPARAMS