

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

# Amazon SQS에서 저장 시 암호화
<a name="sqs-server-side-encryption"></a>

서버 측 암호화(SSE)를 사용하면 암호화된 대기열에서 민감한 데이터를 전송할 수 있습니다. SSE는 SQS 관리형 암호화 키(SSE-SQS) 또는 AWS Key Management Service (SSE-KMS)에서 관리되는 키를 사용하여 대기열의 메시지 내용을 보호합니다. 를 사용한 SSE 관리에 대한 자세한 내용은 다음을 AWS Management Console참조하세요.
+ [대기열에 대해 SSE-SQS 구성(콘솔)](sqs-configure-sqs-sse-queue.md)
+ [대기열에 대해 SSE-KMS 구성(콘솔)](sqs-configure-sse-existing-queue.md)

 AWS SDK for Java (및 `[CreateQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_CreateQueue.html)`, `[SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)`및 `[GetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html)` 작업)을 사용하여 SSE를 관리하는 방법에 대한 자세한 내용은 다음 예제를 참조하세요.
+ [Amazon SQS 대기열에서 서버 측 암호화 사용](sqs-java-configure-sse.md)
+ [에 대한 KMS 권한 구성 AWS 서비스](sqs-key-management.md#compatibility-with-aws-services)

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Mw1NVpJsOZc?rel=0&amp;controls=0&amp;showinfo=0/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Mw1NVpJsOZc?rel=0&amp;controls=0&amp;showinfo=0)


Amazon SQS가 메시지를 수신하면 SSE가 메시지를 즉시 암호화합니다. 메시지는 암호화된 형식으로 저장되며 Amazon SQS는 권한 있는 소비자에게 전송된 경우에만 메시지를 해독합니다.

**중요**  
SSE를 사용할 수 있는 대기열에 대한 모든 요청에서는 HTTPS 및 [서명 버전 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html)를 사용해야 합니다.  
기본 키(Amazon SQS용AWS 관리형 KMS 키)를 사용하는 [암호화된 대기열](#sqs-server-side-encryption)은 다른에서 Lambda 함수를 호출할 수 없습니다 AWS 계정. Amazon SQS  
 AWS Security Token Service `[AssumeRole](https://docs.aws.amazon.com/STS/latest/APIReference/API_AssumeRole.html)` 작업을 사용하여 Amazon SQS에 알림을 보낼 수 있는 AWS 서비스의 일부 기능은 SSE와 호환되지만 *표준 대기열에서만 작동합니다.*  
[Auto Scaling 수명 주기 후크](https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html)
[AWS Lambda 배달 못한 편지 대기열](https://docs.aws.amazon.com/lambda/latest/dg/dlq.html)
기타 서비스의 암호화 대기열과의 호환성에 관한 정보는 [AWS 서비스에 대한 KMS 권한 구성](sqs-key-management.md#compatibility-with-aws-services) 및 서비스 설명서를 참조하십시오.

AWS KMS 는 안전하고 가용성이 높은 하드웨어와 소프트웨어를 결합하여 클라우드에 맞게 확장된 키 관리 시스템을 제공합니다. Amazon SQS AWS KMS를와 함께 사용하면 메시지 데이터를 암호화하는 데이터 [키](#sqs-sse-key-terms)도 암호화되고 보호되는 데이터와 함께 저장됩니다.

 AWS KMS를 사용하면 다음과 같은 이점이 있습니다.
+ [AWS KMS keys](#sqs-sse-key-terms)를 직접 생성하고 관리할 수 있습니다.
+ 각 계정 및 리전에 고유한 Amazon SQS용 AWS 관리형 KMS 키를 사용할 수도 있습니다.
+  AWS KMS 보안 표준은 암호화 관련 규정 준수 요구 사항을 충족하는 데 도움이 될 수 있습니다.

자세한 정보는 * AWS Key Management Service개발자 안내서*.의 [AWS Key Management Service 란 무엇입니까?](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)를 참조하세요.

## 암호화 범위
<a name="sqs-encryption-what-does-sse-encrypt"></a>

SSE는 Amazon SQS 대기열에서 메시지의 본문을 암호화합니다.

SSE는 다음을 암호화하지 않습니다.
+ 대기열 메타데이터(대기열 이름과 속성)
+ 메시지 메타데이터(메시지 ID, 타임스탬프 및 속성)
+ 대기열당 지표

메시지를 암호화하면 권한이 없는 사용자나 익명 사용자가 해당 내용을 사용할 수 없게 됩니다. SSE를 활성화하면 암호화된 대기열에 대한 익명 `SendMessage` 및 `ReceiveMessage` 요청이 거부됩니다. Amazon SQS 보안 모범 사례에서는 익명 요청을 사용하지 말 것을 권장합니다. Amazon SQS 대기열로 익명 요청을 보내려면 SSE를 비활성화해야 합니다. 다음과 같은 Amazon SQS의 정상 작동에는 영향을 주지 않습니다.
+ 대기열 암호화가 활성화된 후 전송되는 경우에만 메시지가 암호화됩니다. Amazon SQS는 백로그된 메시지를 암호화하지 않습니다.
+ 암호화된 메시지는 해당 대기열 암호화가 비활성화된 경우에만 암호화된 상태를 유지합니다.

메시지를 [배달 못한 편지 대기열](sqs-dead-letter-queues.md)로 이동하는 것은 다음과 같이 해당 암호화에 영향을 주지 않습니다.
+ Amazon SQS가 암호화된 소스 대기열에서 암호화되지 않은 DLQ(Dead Letter Queue)로 메시지를 이동하는 경우, 메시지는 암호화된 상태를 유지합니다.
+ Amazon SQS가 암호화되지 않은 소스 대기열에서 암호화된 DLQ(Dead Letter Queue)로 메시지를 이동하는 경우, 메시지는 암호화되지 않은 상태를 유지합니다.

## 주요 용어
<a name="sqs-sse-key-terms"></a>

다음 주요 용어 설명은 SSE 기능을 보다 정확하게 이해하는 데 도움이 될 수 있습니다. 자세한 내용은 **[Amazon Simple Queue Service API 참조](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/)를 참조하세요.

**데이터 키**  
Amazon SQS 메시지 내용의 암호화를 담당하는 키(DEK)입니다.  
자세한 내용은 **AWS Encryption SDK 개발자 안내서의 **AWS Key Management Service 개발자 안내서에서 [데이터 키](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys)를 참조하세요.

**데이터 키 재사용 기간**  
Amazon SQS가 AWS KMS 다시 호출하기 전에 데이터 키를 재사용하여 메시지를 암호화하거나 복호화할 수 있는 초 단위의 시간 길이입니다. 초 단위의 정수로, 60초(1분)에서 86,400초(24시간) 사이입니다. 기본값은 300(5분)입니다. 자세한 내용은 [데이터 키 재사용 기간 이해](sqs-key-management.md#sqs-how-does-the-data-key-reuse-period-work) 단원을 참조하십시오.  
드물지만 연결할 수 없는 경우 AWS KMS Amazon SQS는 연결이 다시 설정될 때까지 캐시된 데이터 키를 계속 사용합니다.

**KMS 키 ID**  
계정 또는 다른 계정에서 AWS 관리형 KMS 키 또는 사용자 지정 KMS 키의 별칭, 별칭 ARN, 키 ID 또는 키 ARN입니다. Amazon SQS에 대한 AWS 관리형 KMS 키의 별칭은 항상 이지만 사용자 지정 KMS 키의 `alias/aws/sqs`별칭은 예를 들어 일 수 있습니다`alias/MyAlias`. 이러한 KMS 키를 사용하여 Amazon SQS 대기열의 메시지를 보호할 수 있습니다.  
다음 사항에 유의하세요:  
+ 사용자 지정 KMS 키를 지정하지 않으면 Amazon SQS는 Amazon SQS에 관리 AWS 형 KMS 키를 사용합니다.
+  AWS Management Console 를 사용하여 대기열 AWS KMS 에 대한 Amazon SQS의 AWS 관리형 KMS 키를 처음 지정하면가 Amazon SQS의 AWS 관리형 KMS 키를 생성합니다.
+ 또는 SSE가 활성화된 대기열에서 `SendMessage` 또는 `SendMessageBatch` 작업을 처음 사용할 때가 Amazon SQS용 AWS 관리형 KMS 키를 AWS KMS 생성합니다.
KMS 키를 생성하고, KMS 키 사용 방법을 제어하는 정책을 정의하고, 콘솔의 **고객 관리형 키** 섹션 또는 `[CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)` AWS KMS 작업을 사용하여 KMS 키 사용을 감사할 AWS KMS 수 있습니다. 자세한 내용은 **AWS Key Management Service 개발자 안내서의 [KMS 키](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys) 및 [키 생성](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)을 참조하세요. KMS 키 식별자의 더 많은 예는 **AWS Key Management Service API 참조의 [KeyId](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters)를 참조하세요. KMS 키 식별자 찾기에 대한 자세한 내용은 **AWS Key Management Service 개발자 안내서의 [키 ID 및 ARN 찾기](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html#find-cmk-id-arn)를 참조하세요.  
사용에 대한 추가 요금이 있습니다 AWS KMS. 자세한 내용은 [AWS KMS 비용 추정](sqs-key-management.md#sqs-estimate-kms-usage-costs) 및 [AWS Key Management Service 요금](https://aws.amazon.com/kms/pricing)을 참조하세요.

**봉투 암호화**  
암호화된 데이터의 보안은 부분적으로 암호를 해독할 수 있는 데이터 키를 보호하는 데 달려 있습니다. Amazon SQS는 KMS 키를 사용하여 데이터 키를 암호화하며, 암호화된 데이터 키는 암호화된 메시지와 함께 저장됩니다. KMS 키를 사용하여 데이터 키를 암호화하는 이러한 방법을 봉투 암호화라고 합니다.  
자세한 내용은 *AWS Encryption SDK 개발자 안내서*에서 [봉투 암호화](https://docs.aws.amazon.com/encryption-sdk/latest/developer-guide/how-it-works.html#envelope-encryption)를 참조하세요.