翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon EBS 暗号化
Amazon EBS 暗号化 は、EC2 インスタンスに関連付けられた EBS リソースの簡単な暗号化ソリューションとして使用します。Amazon EBS 暗号化では、独自のキー管理インフラストラクチャを構築、保守、保護する必要はありません。Amazon EBS 暗号化は、暗号化されたボリュームとスナップショットを作成するときに、 AWS KMS keys を使用します。
暗号化オペレーションは、EC2 インスタンスをホストするサーバーで実行され、インスタンスとそのアタッチされた EBS ストレージ data-in-transit 間の data-at-rest と の両方のセキュリティが確保されます。
1 つのインスタンスに対し、暗号化されたボリュームと暗号化されていないボリュームの両方を、同時にアタッチできます。
EBS 暗号化の仕組み
EC2 インスタンスのブートボリュームとデータボリュームの両方を暗号化できます。
暗号化された EBS ボリュームを作成し、サポートされるインスタンスタイプにアタッチする場合、以下のタイプのデータが暗号化されます。
-
ボリューム内の保存データ
-
ボリュームとインスタンスの間で移動されるすべてのデータ
-
ボリュームから作成されたすべてのスナップショット
-
それらのスナップショットから作成されたすべてのボリューム
Amazon EBS は、業界標準の AES-256 データ暗号化を使用して、ボリュームをデータキーで暗号化します。データキーは によって生成され AWS KMS 、 によって AWS KMS キー AWS KMS で暗号化された後、ボリューム情報とともに保存されます。すべてのスナップショット、および同じ AWS KMS キーを使用してそれらのスナップショットから作成された後続のボリュームは、同じデータキーを共有します。詳細については、AWS Key Management Service デベロッパーガイドのデータキーを参照してください。
Amazon EC2 は と連携して AWS KMS 、暗号化されたボリュームを作成するスナップショットが暗号化されているか、暗号化されていないかに応じて、EBS ボリュームをわずかに異なる方法で暗号化および復号化します。
暗号化されたスナップショットに対する EBS 暗号化の動作
所有している暗号化されたスナップショットから暗号化されたボリュームを作成すると、Amazon EC2 は と連携して、次のように EBS ボリューム AWS KMS を暗号化および復号化します。
-
Amazon EC2 は AWS KMS、ボリューム暗号化用に選択した KMS キーを指定して、 にGenerateDataKeyWithoutPlaintextリクエストを送信します。
-
ボリュームがスナップショットと同じ KMS キーを使用して暗号化されている場合、 はスナップショットと同じデータキー AWS KMS を使用し、同じ KMS キーで暗号化します。ボリュームが別の KMS キーを使用して暗号化されている場合、 は新しいデータキー AWS KMS を生成し、指定した KMS キーで暗号化します。暗号化されたデータキーは Amazon EBS に送信され、ボリュームメタデータとともに保存されます。
-
暗号化されたボリュームをインスタンスにアタッチすると、Amazon EC2 はデータキーを復号 AWS KMS 化できるように にCreateGrantリクエストを送信します。
-
AWS KMS は、暗号化されたデータキーを復号し、復号されたデータキーを Amazon EC2 に送信します。
-
Amazon EC2 は、Nitro ハードウェア内のプレーンテキストデータキーを使用して、ボリュームのディスク I/O を暗号化します。プレーンテキストデータキーは、ボリュームがインスタンスにアタッチされる限り、メモリ内で維持されます。
暗号化されていないスナップショットに対する EBS 暗号化の動作
暗号化されていないスナップショットから暗号化されたボリュームを作成する場合、Amazon EC2 は AWS KMS と連携して、次のように EBS ボリュームを暗号化および復号化します。
-
Amazon EC2 は、スナップショットから作成されたボリュームを暗号化できるように AWS KMS、 にCreateGrantリクエストを送信します。
-
Amazon EC2 は AWS KMS、ボリューム暗号化用に選択した KMS キーを指定して、 にGenerateDataKeyWithoutPlaintextリクエストを送信します。
-
AWS KMS は新しいデータキーを生成し、ボリュームの暗号化用に選択した KMS キーで暗号化し、暗号化されたデータキーを Amazon EBS に送信してボリュームメタデータとともに保存します。
-
Amazon EC2 は、暗号化されたデータキーを復号化するために Decrypt リクエストを に送信し、ボリュームデータの暗号化に使用します。 AWS KMS
-
暗号化されたボリュームをインスタンスにアタッチすると、Amazon EC2 は にCreateGrantリクエストを送信し AWS KMS、データキーを復号できるようにします。
-
暗号化されたボリュームをインスタンスにアタッチすると、Amazon EC2 は暗号化されたデータキーを指定して Decrypt リクエストを に送信します。 AWS KMS
-
AWS KMS は、暗号化されたデータキーを復号し、復号されたデータキーを Amazon EC2 に送信します。
-
Amazon EC2 は、Nitro ハードウェア内のプレーンテキストデータキーを使用して、ボリュームのディスク I/O を暗号化します。プレーンテキストデータキーは、ボリュームがインスタンスにアタッチされる限り、メモリ内で維持されます。
詳細については、AWS Key Management Service デベロッパーガイドのAmazon Elastic Block Store (Amazon EBS) で AWS KMSを使用する方法およびAmazon EC2 の例 2を参照してください。
使用できない KMS キーがデータキーに及ぼす影響
KMS キーが使用できなくなると、その影響はほぼ即時に表れます (最終的な一貫性の対象となります)。KMS キーのキーステータスは新しい条件を反映して変化し、暗号化オペレーションで KMS キーを使用するすべてのリクエストは失敗します。
KMS キーを使用不可にするアクションを実行しても、EC2 インスタンスまたはアタッチされた EBS ボリュームに対して直ちに影響が及ぶことはありません。Amazon EC2 は、ボリュームがインスタンスにアタッチされている間、KMS キーではなくデータキーを使用してすべてのディスク I/O を暗号化します。
ただし、暗号化された EBS ボリュームが EC2 インスタンスからデタッチされると、Amazon EBS は Nitro ハードウェアからデータキーを削除します。次回、暗号化された EBS ボリュームが EC2 インスタンスにアタッチされると、アタッチメントは失敗します。これは、Amazon EBS は KMS キーを使用してボリュームの暗号化されたデータキーを復号できないためです。EBS ボリュームを再度使用するには、KMS キーを再度使用可能にする必要があります。
ヒント
使用不可にする KMS キーから生成されたデータキーで暗号化された EBS ボリュームのデータにアクセスする必要がなくなった場合は、KMS キーを使用不可にする前に EC2 インスタンスから EBS ボリュームをデタッチすることをお勧めします。
詳細については、「AWS Key Management Service デベロッパーガイド」の「使用できない KMS キーがデータキーに及ぼす影響」を参照してください。
EBS リソースの暗号化
EBS ボリュームを暗号化するには、デフォルトでの暗号化を使用するか、暗号化するボリュームを作成するときに暗号化を有効にします。
ボリュームを暗号化する場合、ボリュームの暗号化に使用する対称暗号化 KMS キーを指定できます。KMS キー が指定されていない場合、暗号化に使用される KMS キー はソーススナップショットの暗号化状態とその所有権によって異なります。詳細については、暗号化結果の表を参照してください。
注記
API または を使用して KMS キー AWS CLI を指定する場合は、 が KMS キーを非同期的に AWS 認証することに注意してください。無効な KMS キー ID、エイリアス、または ARN を指定すると、アクションは完了したように見える場合がありますが、最終的には失敗します。
既存のスナップショットまたはボリュームに関連付けられている KMS キー を変更することはできません。ただし、スナップショットコピーオペレーション中に別の KMS キー を関連付けて、コピーしたスナップショットを新しい KMS キー で暗号化できます。
作成時の空のボリュームの暗号化
新しい空の EBS ボリュームを作成するときは、特定のボリューム作成オペレーションで暗号化を有効にすることで暗号化できます。デフォルトで EBS 暗号化を有効にしたボリュームでは、EBS 暗号化用のデフォルト KMS キー を使用した暗号化が、自動的に実行されます。または、ボリュームの作成オペレーションごとに異なる対称暗号化 KMS キーを指定することもできます。ボリュームは最初に使用可能になった時点で暗号化されているため、データは常に保護されています。詳細な手順については、Amazon EBS ボリュームの作成を参照してください。
デフォルトでは、ボリュームの作成時に選択した KMS キー が、ボリュームから作成したスナップショットとそれらの暗号化されたスナップショットから復元したボリュームを暗号化します。暗号化されたボリュームまたはスナップショットから暗号化を削除することはできません。つまり、暗号化されたスナップショット、または暗号化されたスナップショットのコピーから復元されたボリュームは、常に暗号化されます。
暗号化されたボリュームのパブリックスナップショットはサポートされていませんが、暗号化されたスナップショットを特定のアカウントと共有できます。詳細な手順については、Amazon EBS スナップショットの共有を参照してください。
暗号化されていないリソースの暗号化
暗号化されていない既存のボリュームまたはスナップショットを直接暗号化することはできません。ただし、暗号化されていないボリュームまたはスナップショットから暗号化されたボリュームあるいはスナップショットを作成できます。暗号化をデフォルトで有効にした場合、Amazon EBS は EBS 暗号化のデフォルト KMS キー を使用して、新しいボリュームとスナップショットを自動的に暗号化します。それ以外の場合は、Amazon EBS 暗号化のデフォルトの KMS キーまたは対称カスタマーマネージド型暗号化キーを使用して、個々のボリュームまたはスナップショットを作成するときに暗号化を有効にすることができます。詳細については、Amazon EBS ボリュームの作成およびAmazon EBS スナップショットのコピーを参照してください。
スナップショットコピーを カスタマー管理キー に暗号化するには、暗号化されていないスナップショットをコピーする (デフォルトでの暗号化が有効になっていない場合) に示すように、暗号化を有効にし、KMS キー を指定する必要があります 。
重要
Amazon EBS は非対称暗号化 KMS キーをサポートしていません。詳細については、「AWS Key Management Service デベロッパーガイド」の 「対称および非対称暗号化 KMS キーの使用」を参照してください。
EBS-Backed AMI からインスタンスを起動するときに新しい暗号化状態を適用することもできます。これは、EBS-backed AMI に、説明の通りに暗号化できる EBS ボリュームのスナップショットが含まれているためです。詳細については、「EBS-backed AMI での暗号化の利用」を参照してください。
AWS KMS キーのローテーション
暗号化のベストプラクティスでは、暗号化キーの広範な再利用を推奨していません。
Amazon EBS 暗号化で使用する新しい暗号化マテリアルを作成するには、新しいカスタマーマネージドキーを作成し、その新しい KMS キーを使用するようにアプリケーションを変更します。または、既存の カスタマー管理キー の自動キーローテーションを有効にすることができます。
カスタマーマネージドキーの自動キーローテーションを有効にすると、 は KMS キーの新しい暗号化マテリアルを毎年 AWS KMS 生成します。 は、暗号化マテリアルのすべての以前のバージョン AWS KMS を保存し、その KMS キーマテリアルで以前に暗号化されたボリュームとスナップショットを復号化および使用できるようにします。 AWS KMS は、KMS キーを削除するまでローテーションされたキーマテリアルを削除しません。
ローテーションされたカスタマーマネージドキーを使用して新しいボリュームまたはスナップショットを暗号化すると、 は現在 (新しい) キーマテリアル AWS KMS を使用します。ローテーションされたカスタマーマネージドキーを使用してボリュームまたはスナップショットを復号する場合、 は、暗号化に使用された暗号化マテリアルのバージョン AWS KMS を使用します。ボリュームまたはスナップショットが以前のバージョンの暗号化マテリアルで暗号化されている場合、 は AWS KMS 引き続きその以前のバージョンを使用して復号します。 AWS KMS は、キーローテーション後に新しい暗号化マテリアルを使用するように、以前に暗号化されたボリュームまたはスナップショットを再暗号化しません。これらは、元々暗号化されていた暗号化マテリアルで暗号化されたままです。ローテーションされたカスタマーマネージドキーは、コードを変更せずにアプリケーションや AWS サービスで安全に使用できます。
注記
-
自動キーローテーションは、 が AWS KMS 作成するキーマテリアルを持つ対称カスタマーマネージドキーでのみサポートされます。
-
AWS KMS は AWS マネージドキー 毎年自動的にローテーションします。 AWS マネージドキーのキーローテーションを有効化または無効化することはできません。
詳細については、「AWS Key Management Service 開発者ガイド」の「キーの自動ローテーションの仕組み」を参照してください。