

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon SQS での保管中の暗号化
<a name="sqs-server-side-encryption"></a>

サーバー側の暗号化 (SSE)では、機密データを暗号化されたキューで送信できます。SSE は、SQS マネージド暗号化キー (SSE-SQS) または (SSE- AWS Key Management Service KMS) で管理されるキーを使用して、キュー内のメッセージの内容を保護します。を使用して SSE を管理する方法については AWS マネジメントコンソール、以下を参照してください。
+ [キューの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)`、、 `[GetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_GetQueueAttributes.html)`アクション) を使用して SSE を管理する方法については`[SetQueueAttributes](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SetQueueAttributes.html)`、次の例を参照してください。
+ [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デベロッパーガイド](https://docs.aws.amazon.com/kms/latest/developerguide/overview.html)」の「*AWS Key Management Service とは*」を参照してください。

## 暗号化スコープ
<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 によって移動された場合も、メッセージは暗号化された状態で維持されます。
+ 暗号化されていない出典キューから暗号化されたデッドレターキューにメッセージがAmazon SQSによって移動された場合、メッセージは暗号化されていない状態で維持されます。

## 重要な用語
<a name="sqs-sse-key-terms"></a>

以下の重要なキーは、SSEの機能を理解するうえで役立ちます。詳細については、「*[Amazon Simple キューサ－ビス API リファレンス](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/)*」を参照してください。

**データキー**  
キー (DEK) は、Amazon SQSメッセージの内容を暗号化します。  
詳細については、*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 キーのエイリアスは常に ですが`alias/aws/sqs`、カスタム KMS キーのエイリアスは などです`alias/MyAlias`。これらの KMS キーで Amazon SQS キューのメッセージを保護することができます。  
以下に留意してください。  
+ カスタム KMS キーを指定しない場合、Amazon SQS は Amazon SQS の AWS マネージド KMS キーを使用します。 Amazon SQS
+  AWS マネジメントコンソール を使用してキューの Amazon SQS の AWS マネージド KMS キーを初めて指定すると、 AWS KMS は Amazon SQS の AWS マネージド KMS キーを作成します。
+ または、SSE が有効になっているキューで `SendMessage`または `SendMessageBatch`アクションを初めて使用すると、 は Amazon SQS の AWS マネージド KMS キー AWS KMS を作成します。
コンソールの**カスタマーマネージドキー**セクションまたは `[CreateKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateKey.html)` AWS KMS アクションを使用して、KMS キーの作成、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)」を参照してください。