クラウドディスク暗号化は、暗号化アルゴリズムを使用して、クラウドディスクに保存されたデータを不正アクセスやデータ漏洩から保護します。 クラウドディスク暗号化機能は、クラウドディスクに書き込まれたデータを暗号化し、許可されたユーザーによって読み取られたデータを復号化できます。 これにより、データが漏洩した場合でも、権限のないユーザーがクラウドディスクにアクセスしてデータを復号化するのを防ぎ、ディスクデータの機密性と整合性を保証します。 このトピックでは、ディスク暗号化の仕組み、ディスク暗号化の制限、およびディスク暗号化の実装方法について説明します。
暗号化
暗号化のしくみ
ECS (Elastic Compute Service) では、AES-256 (Advanced Encryption Standard) 256に基づいて、KMS (Key Management Service) を使用してクラウドディスク、イメージ、およびスナップショットを暗号化します。 KMSは、ダブルキー設計とエンベロープ暗号化メカニズムを使用してデータを暗号化します。 ダブルキー設計では、暗号化と復号化のために、CMKによって生成された顧客マスターキー (CMK) とデータキー (DK) を使用します。 CMKはDKに対して有効になり、DKはビジネスデータに対して有効になります。 KMSは次の手順を実行し、エンベロープ暗号化メカニズムを使用して暗号化を実装します。
DKを暗号化します。
CMKは、DKが使用される前にDKを暗号化するために使用される。 非平文で暗号化されたDKは、暗号化されたビジネスデータと共に安全に格納することができる。 このように、権限のないユーザが記憶媒体にアクセスしても、ユーザがCMKを有していないため、DKを復号することはできない。
暗号化されたデータを保存および読み取ります。
暗号化されたデータが読み取られると、DKを解読するためにKMS要求が送られる。 KMSがリクエストを検証した後、KMSはプレーンテキストDKを返します。 このプロセスはメモリ内で実行され、DKは記憶媒体に記憶されない。 ハイパーバイザメモリ内の平文DKは、ディスクI/O動作中にデータを復号化するために使用される。
エンベロープ暗号化プロセス中、平文CMKは、KMSによって管理されるハードウェアセキュリティモジュールの外部に保存または使用されません。 平文DKは、サービスインスタンスが存在するホストのメモリ内でのみ使用され、記憶媒体上には決して記憶されない。
詳細については、「KMSとの統合の概要」トピックの暗号化プロセスセクションを参照してください。
暗号化キー
キータイプ
KMSは、デフォルトキーやソフトウェアで保護されたキーなど、Alibaba Cloudサービスに複数のタイプのキーを提供します。 デフォルトキーは、サービスキーまたはCMKです。 ECSインスタンス上の特定のリソースを暗号化する場合は、サービスキーを使用するか、作成または管理するCMKを使用できます。 キータイプの詳細については、「キー管理の概要」をご参照ください。
サービスキー
リージョン内のクラウドディスクを初めて暗号化すると、システムはそのリージョン内のECS用のサービスキーをKMSに自動的に作成します。 各ユーザーのサービスキーは、各リージョンで一意であり、Alibaba Cloudサービスによって作成および管理されます。 サービスキーは、基本的なデータ保護機能の取得に役立ちます。 しかしながら、高いセキュリティ要件を有するシナリオでは、サービス鍵の管理において問題が生じる可能性がある。 たとえば、サービスキーのライフサイクルを管理することはできません。
ECSはサービスキーに次のエイリアスを使用します。
中国 (フフホト) 、中国 (ウランカブ) 、中国 (河源) 、中国 (成都) の各リージョン: alias/acs/ecs。
その他のリージョン: デフォルトサービスCMK
CMK
CMKを作成またはKMSにアップロードし、CMKのライフサイクルを管理し、CMKを使用してセキュリティ機能を強化できます。 KMSコンソールでCMKを無効または有効にしたり、CMKとしてキーをインポートしたりして、キーのライフサイクル管理を強化したり、ECSデータの暗号化と復号化を管理したりできます。 CMKの作成方法と無効化方法については、「キーの管理」をご参照ください。
キー仕様
KMSは、暗号化データのセキュリティを確保するために、共通の対称キーと非対称キーをサポートします。 ディスクの作成中にCMKを使用してクラウドディスクを暗号化する場合、または暗号化されたスナップショットまたは暗号化されたイメージをコピーする場合、対称キーのみを使用できます。 詳細については、「キーの種類と仕様」をご参照ください。
キーローテーション
ECS暗号化のベストプラクティスでは、暗号化キーを広く再利用しないことを推奨します。 KMSのキーローテーション機能を使用して、キー使用のセキュリティを強化することを推奨します。
キーローテーション機能は、ディスク、スナップショット、イメージなど、暗号化が必要な新しいリソースに対してのみ有効です。 新しいリソースは、新しいキーマテリアルを使用して暗号化されます。 キーローテーション機能は、既存の暗号化リソースには影響しません。
KMSによってキーマテリアルが生成される対称キーのみがローテーションをサポートします。 独自のキーマテリアルを使用するキーは、ローテーションをサポートしていません。
詳細は、「キーローテーションの設定」をご参照ください。
クラウドディスクに保存されているデータが暗号化されているかどうかの確認
クラウドディスクでディスク暗号化メカニズムが機能するかどうかを判断することはできません。 データがクラウドディスクに保存されているときにデータが暗号化されているかどうかを確認するには、次の手順を実行します。
暗号化されたクラウドディスクを作成するときにCMKを選択します。 詳細については、このトピックの「クラウドディスクの暗号化」をご参照ください。
CMKを無効にします。 詳細については、「キーの管理」トピックの [キーを無効にする] セクションを参照してください。
reboot
コマンドを実行して、ディスクが接続されているECSインスタンスを再起動します。
上記の手順を実行すると、暗号化されたクラウドディスクに関連付けられているCMKは無効になります。 この場合、ECSインスタンスを再起動できない、システムディスクでI/Oハングが発生する、クラウドディスクを読み書きできないなどの問題が発生する可能性があります。 これは、クラウドディスクに保存されているユーザーデータが暗号化されていることを示します。
課金
KMSは、サービスキーとCMKを含む無料のデフォルトキーを提供します。 KMSインスタンスを購入しなくても、デフォルトキーを使用できます。 CMKの数を増やしたり、Secrets Managerを使用したり、自己管理アプリケーション用のアプリケーション層暗号ソリューションを構築したりする場合は、ソフトウェアまたはハードウェアキー管理タイプのKMSインスタンスを購入する必要があります。 KMSの課金については、「課金」をご参照ください。
制限事項
制限事項 | 説明 |
インスタンスタイプ |
|
ディスクカテゴリ |
|
CMK |
|
権限ポリシー | セキュリティコンプライアンスの要件が高い企業の場合、企業のAlibaba Cloudアカウントに属するすべてのRAM (Resource Access Management) ユーザーは、データの機密性を確保するためにデータの暗号化が必要です。 ECSでは、RAMユーザーが暗号化されたクラウドディスクのみを作成できるようにカスタムポリシーを設定できます。 詳細については、「ECSのカスタムポリシー」トピックの「RAMユーザーに暗号化ディスクのみを作成する権限を付与するカスタムポリシー」セクションをご参照ください。 |
考慮事項
暗号化操作は不可逆的である。 暗号化されたクラウドディスクが作成された後、クラウドディスクを非暗号化ディスクに変換することはできません。
キーを削除または無効にすると、そのキーは無効になります。 その後、暗号化されたクラウドディスク、暗号化されたイメージ、および暗号化されたスナップショットのデータが復元されない場合があります。 キーを削除または無効にする前に、キーの無効化機能を使用して、キーがAlibaba Cloudサービスのサーバー側暗号化に使用されているかどうかを確認することを推奨します。 チェック機能を使用して、Alibaba Cloudサービスのサーバー側暗号化にキーが使用されているかどうかを確認することもできます。 これにより、キーがない場合にデータの復元に失敗するのを防ぎます。
警告実行した操作によりキーが無効になった場合、関連するクラウドディスクに保存されているデータが復元されないリスクがあることに注意してください。
クラウドディスクの暗号化
ECSインスタンスまたはクラウドディスクの作成時にクラウドディスクを暗号化
ECSコンソールの使用
ECSインスタンスの作成時にクラウドディスクを暗号化する
次の手順では、ECSインスタンスの作成時にシステムディスクまたはデータディスクを暗号化する方法についてのみ説明します。 その他の設定については、「カスタム起動タブでインスタンスを作成する」をご参照ください。
[ストレージ] セクションで、ディスクカテゴリを選択し、システムディスクとデータディスク (存在する場合) を含む各ディスクのディスクサイズを指定します。
[暗号化] を選択し、ドロップダウンリストから暗号化キーを選択します。
クラウドディスクの作成時にクラウドディスクを暗号化する
次の手順では、クラウドディスクを作成するときにディスクの暗号化設定を構成する方法についてのみ説明します。 クラウドディスクのその他の設定については、「空のデータディスクの作成」をご参照ください。
[クラウドディスク] セクションで、ディスクカテゴリを選択し、ディスクサイズを指定します。
[ディスク暗号化] を選択し、ドロップダウンリストから暗号化キーを選択します。
API操作の呼び出し
ECSインスタンスの作成時にクラウドディスクを暗号化する
RunInstancesを呼び出してECSインスタンスを作成する場合、SystemDiskまたはDataDiskパラメーターに
[Encrypted]
および[KMSKeyId]
の値を指定して、システムディスクまたはデータディスクを暗号化できます。クラウドディスクの作成時にクラウドディスクを暗号化する
CreateDisk操作を呼び出してデータディスクを作成する場合、
[Encrypted]
と[KMSKeyId]
の値を指定してデータディスクを暗号化できます。
既存の非暗号化クラウドディスクを暗号化クラウドディスクに変換
既存のシステムディスクまたはデータディスクを暗号化するには、次のいずれかの方法を使用します。
ECSコンソールの使用
システムディスクの暗号化
ECSインスタンスのイメージを作成します。 詳細については、「インスタンスからのカスタムイメージの作成」をご参照ください。
イメージを暗号化イメージとしてコピーします。 詳細については、「カスタムイメージのコピー」をご参照ください。
暗号化されたイメージに基づいてシステムディスクを暗号化します。
暗号化されたイメージを使用してソースECSインスタンスのシステムディスクを置き換えると、ソースECSインスタンスのシステムディスクは自動的に暗号化されます。 詳細については、「インスタンスのオペレーティングシステムの置き換え」をご参照ください。
暗号化されたイメージを使用してECSインスタンスを作成すると、新しいECSインスタンスのシステムディスクとデータディスク (ある場合) が自動的に暗号化されます。 詳細については、「カスタムイメージを使用したインスタンスの作成」をご参照ください。
データディスクを暗号化する
データディスクのスナップショットを作成します。 詳細については「スナップショットの作成」をご参照ください。
スナップショットを暗号化スナップショットとしてコピーします。 詳細については、「スナップショットのコピー」をご参照ください。
暗号化されたスナップショットからクラウドディスクを作成します。 新しいクラウドディスク上のデータは自動的に暗号化されます。 詳細については、「スナップショットからのディスクの作成」をご参照ください。
作成した暗号化クラウドディスクをソースECSインスタンスにアタッチします。 詳細については、「データディスクのアタッチ」をご参照ください。
OOSの使用
CloudOps Orchestration Service (OOS) が提供するACS-ECS-BulkyEncryptSystemDiskという名前のパブリックテンプレートを使用して、一度に複数のECSインスタンスのシステムディスクを暗号化できます。 詳細については、「複数のECSインスタンスのシステムディスクを一度に暗号化する」をご参照ください。
CloudOps Orchestration Service (OOS) は、Alibaba Cloudが無料で提供する包括的で自動化されたO&Mサービスで、クラウドでのO&Mタスクの管理と実行を支援します。 OOSは、O&Mタスクの標準化プラットフォームとしても機能し、コードとして操作を実行できます。 詳細については、「」をご参照ください。OOSとは何ですか? OOSパブリックテンプレートの詳細については、「パブリックテンプレート」をご参照ください。