

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

# Amazon SQS에 대한 임시 보안 자격 증명 사용
<a name="sqs-using-temporary-security-credentials"></a>

자체 보안 자격 증명으로 사용자를 생성하는 것 외에도 IAM을 사용하면 모든 사용자에게 임시 보안 자격 증명을 부여하여 사용자가 AWS 서비스 및 리소스에 액세스할 수 있습니다. AWS 계정이 있는 사용자를 관리할 수 있습니다. 가 없는 시스템 사용자 AWS 계정 (연동 사용자)를 관리할 수도 있습니다. 또한 AWS 리소스에 액세스하기 위해 생성한 애플리케이션도 "사용자"로 간주될 수 있습니다.

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

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

## 사전 조건
<a name="temporary-security-credentials-prerequisites"></a>

1. IAM을 사용하여 임시 보안 자격 증명 생성:
   + 보안 토큰
   + 액세스 키 ID
   + 비밀 액세스 키

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

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

**참고**  
서명된 쿼리 API 요청을 제출할 때 자체 액세스 키 ID가 아닌 임시 액세스 키 ID를 사용하여 보안 토큰을 포함시킵니다. 임시 보안 자격 증명에 대한 IAM 지원에 대한 자세한 내용은 *IAM 사용 설명서*의 [AWS 리소스에 대한 임시 액세스 권한 부여를 참조하세요](https://docs.aws.amazon.com/IAM/latest/UserGuide/TokenBasedAuth.html).

## 임시 보안 자격 증명을 사용하여 Amazon SQS 쿼리 API 작업을 호출하려면
<a name="temporary-security-credentials-query-api"></a>

1. 를 사용하여 임시 보안 토큰을 요청합니다 AWS Identity and Access Management. 자세한 내용은 IAM 사용 설명서**의 [IAM 사용자의 액세스를 활성화하기 위한 임시 보안 자격 증명 생성](https://docs.aws.amazon.com/IAM/latest/UserGuide/CreatingSessionTokens.html)을 참조하세요.

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

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

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

   다음 예는 Amazon SQS 요청을 인증하기 위해 임시 보안 자격 증명을 사용하는 방법을 보여줍니다. {{`AUTHPARAMS`}}의 구조는 API 요청의 서명에 따라 달라집니다. 자세한 내용은 Amazon Web Services 일반 참조의 [AWS API 요청 서명을 참조하세요](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html). ** 

   ```
   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}}
   ```