VPC のデータ暗号化について

VPCボリューム、スナップショット、およびファイル共有では、デフォルトで AES-256 による暗号化が使用されます。 Key Protect のスタンダードインスタンスまたは専用インスタンスでは、 お客様暗号化管理が可能です。

IBM 管理の暗号化

デフォルトでは、VPC ボリュームとファイル共有は、IBM 管理の暗号化を使用して保存時に暗号化されます。 このサービスには追加コストはかかりません。

IBM 管理の暗号化は、以下の業界標準プロトコルを使用します。

  • AES-256 暗号化。
  • 鍵は、Key Management Interoperability Protocol(KMIP)を用いて社内で管理されています。
  • ストレージ・アーキテクチャーは、Federal Information Security Management Act (FISMA) および Health Insurance Portability and Accountability Act (HIPAA) に対応して検証されています。
  • また、このストレージアーキテクチャは、ペイメント・カード・インダストリー(PCI)、バーゼルII、カリフォルニア州情報漏洩法(SB 1386)、およびEUデータ保護指令 95/46/EC への準拠についても検証されています。
  • IBM Cloud® Block and File Storage for VPC、自己暗号化ドライブ(SED)を使用し、データ・セキュリティと業界標準への準拠を保証します。
    • Gen 1ボリュームおよび共有プロファイルでは、すべてのMZRは、ソフトウェアモジュールに応じて、連邦情報処理標準(FIPS)パブリケーション140-2レベル1または140-3レベル1の検証を受けたSEDを使用しており、連邦政府のセキュリティ基準を満たしています。
    • sdprfs プロファイルのような Gen 2 ブロックボリュームと共有プロファイルでは、ストレージアーキテ クチャはすべてのリージョンで FIPS 140-2 レベル 1、140-3 レベル 1、または TCG OPAL 準拠の SED を使用する。 プロビジョニング中、sdpボリュームはどちらのドライブタイプにも作成できます。

IBM は、高水準のデータ保護と規制遵守の維持に努めています。 すべてのストレージ・ドライブは、公認のセキュリティ・ベンチマークを満たしており、すべての地域で実施されている暗号化とデータ保護メカニズムの堅牢性を確信することができます。

お客様管理の暗号化

IBM Cloud におけるエンドツーエンド暗号化には、 お客様暗号化を利用できます。 データは、保存中に保護され、ストレージからハイパーバイザーおよびホストに転送中にも保護されます。 VPC の外部でのデータの暗号化は、お客様が行う必要があります。

お客様化では、 お客様独自のルートキー(CRK)をクラウドに持ち込むか、 キー管理サービス (KMS)にキーを生成してもらうことができます。 ルートキーは、 エンベロープ暗号化 (ある鍵を別の鍵で包み込む処理)を用いて、ボリューム、ファイル共有、およびカスタムイメージのパスフレーズを暗号化するために使用されます。

サポートされている鍵管理サービスは、 Key Protect の「Standard」および「Dedicated」です。

Key Protect は、さまざまなセキュリティ要件やコンプライアンス要件に対応するため、2つの導入オプションが用意されている:

  • 標準(マルチテナント) :共有HSMインフラでFIPS 140-2 Level 3準拠を提供します。 IBM は、HSM マスター・キーを管理する。 お客様ほとんどの暗号化ユースケースに最適。

  • 専用(シングルテナント) :専用HSMパーティションでFIPS 140-3レベル4準拠(認証申請済み)。 IBM、管理者がアクセスすることなく、お客様自身がマスターキーを所有し、管理することができます。 ワークロードを完全に分離し、機密性の高いコンピューティング・インフラ上で動作します。 規制の厳しい業界や、最大限のセキュリティを必要とする機密データに最適です。

詳細な比較については、 スタンダードと専用について Key Protect をご覧ください。

Hyper Protect Crypto Services は非推奨となっています。 顧客は既存のインスタンスを2027年3月20日まで使用できる。 詳細については、「 IBM Cloud Hyper Protect Crypto Services の非推奨化 」を参照してください。 継続的な保護のため、既存の暗号化キーを専用 Key Protect インスタンスに移行することをご検討ください。 詳細については、「 移行ガイド 」をご覧ください。

お客様管理の暗号化を使用する場合、ルート鍵を使用して地域間のリソースを暗号化することができます。 リージョンの KMS インスタンスに保管されている鍵を使用してリソースを暗号化したり、別のリージョンのルート鍵を使用したりすることができます。 最高のパフォーマンスとセキュリティを確保するには、KMSインスタンス、ルートキー、および暗号化されたリソースを同じリージョンに配置してください。 詳しくは、リージョン別のルート鍵とクロスリージョンのルート鍵に関する考慮事項を参照してください。

アカウント間でルート キーを共有できます。 アカウントのルートキーにアクセスし、それを使用して、 アカウントで作成された新しいボリュームやファイル共有を暗号化することができます。 でIBM Cloud KMS は、暗号化キーを使用しているサービスと同じアカウントに配置することも、別のアカウントに配置することもできます。 この展開パターンにより、企業はすべての企業アカウントの暗号化キーを一元管理できます。 詳細については、暗号化キー管理

カスタムイメージ、ブートボリューム、データボリューム、スナップショット、およびファイル共有では、 お客様暗号化を利用できます。

  • インスタンスのブートボリューム内のデータは、 カスタムイメージ暗号化 を使用して暗号化されています。 また、別のルートキーを使用してブートボリュームを暗号化することもできます。
  • 仮想サーバーインスタンスのプロビジョニング時、またはスタンドアロンのボリュームを作成する際、 データボリュームは 独自のルートキーを使用して暗号化することができます。 あるいは、ブート・ボリュームに指定したのと同じルート鍵を使用することもできます。
  • ソースボリュームに対して作成されたスナップショットは、そのボリュームの暗号化設定を継承します。
  • ファイル共有 は、 Block Storage for VPC ボリュームのようなお客様管理の暗号化オプションを提供します。

お客様管理の暗号化の利点

お客様暗号化には、 IBM 管理型の暗号化に比べていくつかの利点があります。

鍵をお客様が管理できる

  • お客様キーを使用するため、 Block Storage for VPC のボリューム、ファイル共有、およびカスタムイメージの暗号化を自ら管理できます。
  • お客様のルート鍵を使用してデータを暗号化するアクセス権限を、お客様が IBM VPC サービスに付与します。 アクセス権限は、任意の理由でいつでも取り消すことができます。
  • データは、ストレージ・システムから VPC 内のハイパーバイザーおよびホストに転送中に保護され、 Block Storage for VPC および File Storage for VPCに保存されます。

ブート・ボリュームとデータ・ボリュームを暗号化できる

  • Block Storage for VPC のデータは、保存時と移動時の両方の独自の鍵を使用して常に暗号化されます。
  • ブート・ボリュームとデータ・ボリュームがそれぞれ、固有のマスター暗号鍵で暗号化された状態で保存されます。 キーが漏洩した場合、そのキーが保護するのは単一のボリュームのみであるため、他の Block Storage for VPC ボリュームには影響が及びません。
  • Linux またはWindowsのストックイメージから作成されたプライマリブートボリュームは、デフォルトで IBM による管理下での暗号化が適用されます。 ストックイメージからインスタンスを作成し、データボリュームに対して「 お客様暗号化」を指定した場合、それらのボリュームに書き込まれるデータは、 お客様暗号化によって保護されます。
  • エンベロープ暗号化に使用するルート鍵の数と使用法を、お客様がボリューム・レベルで制御します。 例えば、あるルート鍵でブート・ボリュームを暗号化し、別のルート鍵でデータ・ボリュームを暗号化するようにすることもできます。
  • ブートボリュームおよびデータボリュームから作成されるスナップショットは、ソースボリュームのお客様暗号化を引き継ぎます。

ファイル共有の暗号化:

  • ファイル共有データは、保存時にユーザー自身の鍵を使用して常に暗号化されます。

  • ファイル共有レベルでエンベロープ暗号化に使用するルート鍵の数と使用法を制御します。 つまり、すべてのファイル共有を同じルート鍵で暗号化するか、各ファイル共有を異なる鍵で暗号化するかを選択できます あるいは、一部のファイル共有を1つのルートキーで暗号化し、他のファイル共有を別のルートキーで暗号化することも可能です。 個々のセキュリティー・ニーズに基づいて、ルート鍵の使用法を実装する完全な柔軟性があります。

  • 鍵をローテート、無効化、または削除することによって、ファイル共有のルート鍵を管理します。 削除されたキーは、削除後30日以内であれば復元できます。

カスタム・イメージを暗号化できる

優れたパフォーマンス:

  • 「 お客様暗号化」では、VPCインフラストラクチャ上でハイパーバイザー暗号化が使用され、仮想サーバーインスタンスに対して、暗号化された Block Storage for VPC のI/Oパフォーマンスを大幅に向上させます。
  • VPC インフラストラクチャを利用すれば、 お客様暗号化されたブートボリュームを備えた 1,000 台のインスタンスを、わずか数分で作成して起動することができます。
  • ハイパーバイザーが暗号化と復号を処理するので、ゲスト OS はデータを変更する必要がありません。 ゲスト OS は、暗号化が行われていることを認識しません。

鍵のローテーションと監査追跡:

  • API や CLI を使用してルートキーを手動でローテーションすることも、ローテーションポリシーを設定してキーを自動的にローテーションさせることもできます。 鍵をローテートすることで、ルート鍵の元の暗号素材が置き換えられ、新しい素材が生成されます。 詳しくは、VPC リソースの鍵のローテーションを参照してください。

  • お客様暗号化では、ルートキーの使用状況に関する監査記録が提供されます。 イベントは生成され、 IBM Cloud Logs に自動的に収集される。

IBM Cloud VPC 暗号化テクノロジー

インスタンスの暗号化は、 IBM Cloud のVPCが採用するハイパーバイザー技術によって処理されます。 この機能は、保存中のデータに対するストレージノードの暗号化のみを提供するソリューションに比べ、より高いレベルのセキュリティを実現します。 IBM Cloud 内では、データは常にエンベロープ暗号化によって暗号化されます。

ストック・イメージとカスタム・イメージでは、QEMU Copy On Write バージョン 2 (QCOW2) ファイル形式が使用されます。 LUKS 暗号化フォーマットは、 QCOW2 フォーマットのファイルを保護します。 IBM Cloud は、LUKS で AES-256 暗号スイートおよび XTS 暗号モード・オプションを使用します。 この組み合わせは、AES-CBCよりもはるかに高いセキュリティレベルを実現するほか、鍵の更新に伴うパスフレーズの管理も容易にし、鍵が漏洩した場合の鍵の再発行オプションも提供します。

合計で 4 つの鍵がデータを保護します。

  • IBM管理の鍵 は、バックエンド・ストレージ・システム内のデータを暗号化します。 お客様管理の暗号化を使用する場合でも、ストレージ・システム上の IBM管理の暗号化が常に適用されます。 この鍵は、転送中および保存中のデータを保護します。

    IBM Cloud 外のワークロードと、 IBM Cloud 内のワークロード間のネットワークリンクの暗号化は、お客様の責任となります。 詳しくは、セキュリティーおよび規制コンプライアンスの「暗号化」を参照してください。

  • データ暗号鍵 (DEK) は、 QCOW2 ファイル内のデータを暗号化し、仮想ディスク内のブロック・データ・クラスターを保護します。 DEKは、オープンソースのQEMU技術によって管理されており、 QCOW2 ファイルが作成されると自動生成されます。

    ストックイメージから作成された Block Storage for VPC ボリュームの場合、DEKは、 IBM が提供するKVMハイパーバイザー上で動作するQEMUによって生成されます。 カスタムイメージから作成された Block Storage for VPC ボリュームについては、オンプレミスのノード上で実行される QEMU によって生成されます。 DEK (AES-256 鍵) は LUKS パスフレーズで暗号化され、暗号化された状態で QCOW2 ファイルに保管されます。

  • LUKSパスフレーズ (「暗号化キー」とも呼ばれる)は、DEKの暗号化と復号を行います。 この鍵は VPC 第 2 世代インフラストラクチャーによって管理され、ルート鍵によって暗号化されます。 これは、 QCOW2 ファイルを含む Block Storage for VPC ボリュームに関連付けられたメタデータとして保管されます。

  • エンベロープ暗号化を使用してボリューム、共有、およびカスタムのイメージ・パスフレーズを暗号化する カスタマー・ルート鍵。これにより、ラップされた DEK または WDEK が作成されます。 ルートキーは、KMSインスタンスからお客様、KMSインスタンス内に安全に保存・管理されます。 また、ルート鍵は WDEK をアンラップ (復号) して、暗号化データにアクセスできるようにします。

サポートされる鍵管理サービス

Key Protect は、VPCでお客様暗号化に適した鍵管理サービスです。 つの展開オプションがある:

Key Protect 配備オプション
デプロイメント・オプション HSM認証 テナンシー 説明
標準 FIPS 140-2レベル3(認証申請中) マルチテナント 共有HSMインフラを備えたコスト効率の高いKMS。 IBM は、HSM マスター・キーを管理する。 ルート鍵をインポートまたは作成し、安全に管理することができます。
専用 FIPS 140-3レベル4(認証申請中) シングル・テナント 専用HSMパーティションによる最高レベルのセキュリティ。 HSMマスター・キーは、 IBM の管理者アクセスなしで所有・管理できる。 機密コンピューティングでワークロードを完全に分離。

スタンダードと専用機の選択

  • 費用対効果の高い共有インフラでお客様暗号化を必要とするほとんどのワークロードには、 Standardを使用します。
  • Dedicatedは、規制の厳しい業界や、最大限のセキュリティが必要な機密データ、または信頼の根源を完全に管理する必要がある場合に使用します。

各オプションの違いと使用時期についての詳細は、 標準と専用について Key Protect をご覧ください。

Key Protect Standardを BYOK (Bring Your Own Key)、 Key Protect Dedicatedを KYOK (Keep Your Own Key)と表現しているのを見かけるかもしれない。

エンベロープ暗号化

ルート鍵は鍵ラッピング鍵として機能し、エンベロープ暗号化の重要な部分です。 エンベロープ暗号化では、ルート鍵が LUKS パスフレーズ (鍵暗号鍵 とも呼ばれる) を暗号化し、これにより仮想ディスク上のデータを暗号化する_データ暗号鍵_ (DEK) が保護されます。

エンベロープ暗号化を示す図。
エンベロープ暗号化の概念図

KMS は鍵を保管し、ボリューム・イメージとカスタム・イメージの暗号化時に鍵を提供します。 KMS 内の鍵もお客様が管理します。

ブロック・ストレージ・ボリュームとファイル共有には、一意のマスター暗号化キーが割り当てられる。 この一意のキーはインスタンスのホストのハイパーバイザーによって生成される。 この鍵はパスフレーズによって暗号化されてルート鍵によってラップ (暗号化) され、ラップされた DEK または WDEK が作成されます。 WDEK はボリュームまたはイメージと共にメタデータとして保管され、VPC インターフェースでは使用できません。

カスタムイメージは、QEMU を使用して作成した独自の LUKS パスフレーズによって暗号化されます。 イメージの暗号化が完了したら、KMSに保存されているルートキーを使用してパスフレーズを暗号化します。

エンベロープ暗号化の詳細については、 Key Protect- 「 エンベロープ暗号化によるデータの保護 」をご覧ください。

リージョン別のルート鍵とクロスリージョンのルート鍵に関する考慮事項

ボリューム、ファイル共有、およびカスタムイメージに対してお客様暗号化を使用する場合、ルートキーをリソースと同じリージョンに保管することも、別のリージョン(リージョン間)に保管することも可能です。

クロスリージョン鍵では、鍵の使用範囲が広がりますが、待ち時間が少し長くなるというトレードオフがあります。 あるリージョンでルート鍵を作成して管理し、そのルート鍵を別のリージョンのリソースに適用することができます。 クロスリージョン鍵は、すべてのリージョンで使用可能です。

最適なパフォーマンスとセキュリティーを得るには、暗号化リソースと同じリージョン内のルート鍵を使用してください。 リージョン別のサービスでは、複数のアベイラビリティー・ゾーンに対するプライベート・エンドポイントが使用されます。 特定のゾーンが利用できない場合でも、別のゾーンからルートキーや暗号化されたリソースに引き続きアクセスすることができます。

リージョン別のルート鍵を使用する場合も、クロスリージョンのルート鍵を使用する場合も、すべてのネットワーク・トラフィックがプライベート・エンドポイントに送られます。 つまり、あなたの鍵は、インターネットからアクセスできないプライベートネットワーク上で、リソースの暗号化と復号化を行うのです。 プライベートエンドポイントの詳細については、「 サービスエンドポイントを使用したサービスへの安全なアクセス 」を参照してください。 コンソールで「リソース一覧」>「セキュリティ」に移動し、 Key Protect のインスタンスをクリックすると、プライベートエンドポイントの一覧を確認できます。 左側のメニューから「 エンドポイント 」を選択してください。

お客様暗号化の設定

VPCリソースにお客様暗号化を設定するには、鍵管理サービスをプロビジョニングし、ルート鍵を作成またはインポートし、サービス・アクセスを承認する必要があります。 詳細なセットアップ手順と前提条件については、 データ暗号化の計画を 参照してください。

セットアップが完了したら、必要に応じてキーを無効化、有効化、回転、削除して管理できます。 詳細については、 データ暗号化の 管理を参照してください。

ボリュームにお客様管理の暗号化を指定するためのフロー図

インスタンスのプロビジョニング中に Block Storage for VPC ボリュームを作成するときに、お客様管理の暗号化を指定できます。 スタンドアロンのボリュームを作成する際にも、これを指定することができます。

図 1 は、インスタンスのプロビジョニング時にお客様管理の暗号化を使用するデータ・ボリュームを作成するための手順を示しています。 そのボリュームはインスタンスに自動的に接続されます。

図は、 お客様ボリュームを備えたインスタンスを作成する手順を示しています。
お客様ボリュームを備えたインスタンスの作成。

図2は、スタンドアロンのボリュームを作成し、後でそれをインスタンスにアタッチする手順を示しています。

図は、 お客様を使用した Block Storage for VPC ボリュームの作成手順を示しています。
お客様 Block Storage for VPC お客様 ボリュームの作成。

暗号化カスタム・イメージについて

IBM Cloud VPC インフラストラクチャーの要件を満たす QCOW2 のカスタム・イメージを作成し、独自の LUKS パスフレーズとルート鍵を使用してカスタム・イメージを暗号化することができます。 独自のパスフレーズを使用して暗号化したら、カスタム・イメージを IBM Cloud Object Storage にアップロードします。

暗号化されたカスタムイメージを IBM Cloud VPC にインポートするには、まずキー管理サービス(KMS)インスタンスを設定してください。 KMSインスタンスで、パスフレーズをラップ(暗号化)するためのルートキーを作成します。 パスフレーズをラップすると、ラップされた DEK (WDEK) が生成されます。 WDEK によって、インポート時にパスフレーズを保護し、データを保護された状態に維持することができます パスフレーズはイメージサービス内に暗号化された状態で保存され、暗号化されたイメージを使用する仮想サーバーが起動されたときにのみ復号されます。

必要な IAM 権限が設定されていれば、 IBM Cloud Object Storage から暗号化されたイメージをインポートできます。 画像をVPCにインポートし、KMSに保存されているルートキーのクラウドリソース名(CRN)を指定します。 また、WDEK の暗号文も指定します。これは、イメージを暗号化するために使用したパスフレーズをルート鍵でラップしたものです。

API または UI を使用してインポートする際は、10 GB から 250 GB のサイズの QCOW2 ブートイメージファイルを 1 つ指定します。 このファイルは、インポートされたアカウントに限定して非公開となります。 暗号化イメージをインポートしたリージョンは、そのイメージから仮想サーバー・インスタンスを作成するリージョンになります。 暗号化イメージは、使用権限を持っている他のカスタム・イメージとともに表示されます。 コンソールでは、名前の横に鍵のアイコンが表示されている場合、それが暗号化されたカスタムイメージであることを示しています。

正確に 100 GB の仮想ディスク・サイズではない暗号化イメージをインポートし、それを使用してインスタンスをプロビジョンしてから、そのインスタンスのブート・ボリュームからカスタム・イメージを作成しようとすると、 POST /images 呼び出しはエラーを返します。

暗号化されたイメージを使用して仮想サーバーインスタンスをプロビジョニングする場合、その他の暗号化情報は必要ありません。 WDEK およびルート鍵の CRN は、メタデータとしてイメージに一緒に保管されています。 暗号化イメージを使用する仮想サーバー・インスタンスを始動すると、暗号化イメージにアクセスするために WDEK が使用されます。

プロビジョン時には、インスタンスのブート・ボリュームのデータも、カスタム・イメージに使用されたものと同じルート鍵を使用して、生成されたパスフレーズとともに暗号化されます。 また、ブート・ボリュームに別のルート鍵を指定することもできます。

仮想サーバーインスタンスの作成後、カスタムイメージを確認し、ルートキーのCRNを確認できます。 また、 ルートキーをローテーションし、暗号化されたイメージの WDEK が自動的に再ラップ(再暗号化)された際に、KMS から通知を受け取ることもできます。

暗号化されたカスタムイメージから作成してマウントするセカンダリボリュームは、ベースとなるカスタムイメージとは異なるパスフレーズを使用します。 必要に応じて、インスタンスのプロビジョニング中に作成されるセカンダリボリュームに対して、別のルートキーを指定することができます。

カスタム・イメージの作成について詳しくは、暗号化カスタム・イメージの作成を参照してください。 また、 Linux カスタム・イメージ および Windows カスタム・イメージ の作成に関する情報も参照してください。

カスタム・イメージにお客様管理の暗号化を指定するためのフロー図

図3は、独自の暗号化キーを使用してカスタムイメージを暗号化する手順を示しています。

図は、暗号化されたカスタムイメージを作成する手順を示しています。
お客様暗号化を使用したカスタムイメージの作成。

次のステップ