LoginSignup
0
0

IBM Cloud の Watson Studioと Watson Knowledge Catalogで、Key Protectを使って製品ストレージ用Cloud Object Storageバケットを暗号化する

Last updated at Posted at 2023-09-28

目次

  1. 本記事の目的
  2. Key Protectの準備
  3. CP4DaaS製品ストレージ用のCloud Object StorageサービスへKey Protectのルート鍵を連携
  4. CP4DaaS製品ストレージ用のCloud Object StorageバケットでKey Protectのルート鍵適用を確認
  5. 関連資料

1. 本記事の目的

IBM Cloud上で提供される Cloud Pak for Data as a Service(以降、CP4DaaSと表記) では、ワークスペース(Watson Studioのプロジェクト/Watson Knowledge Catalogのカタログ/Watson Machine Learningサービスのデプロイメント・スペース等)の製品用ストレージとして、Cloud Object Storageバケットを利用します。

本記事ではKey Protectを使って、Watson Studioプロジェクト および Watson Knowledge Catalogカタログの製品ストレージ用Cloud Object Storageバケットをユーザー独自のルート鍵で暗号化する方法を紹介します。

Cloud Object Storageバケットはデフォルトで、IBMによって管理されるランダムに生成された鍵を使用して暗号化されます。従ってCP4DaaS製品ストレージのバケットはデフォルトで暗号化済みです。
本記事で扱う機能の利用はオプションであり、セキュリティ要件等により Cloud Object Storageバケットを独自の鍵で暗号化したい場合に利用をご検討ください。

CP4DaaS製品資料:データ・セキュリティー > 保存データの暗号化

<該当部分の抜粋>
デフォルトでは、保存データは、 IBMによって管理されるランダムに生成された鍵を使用して暗号化されます。 デフォルトの鍵でデータを十分に保護できる場合は、追加のアクションは必要ありません。 保存データをさらに保護するために、 IBM® Key Protect for IBM Cloud™を使用して独自の鍵を作成および管理できます。 Key Protect は、データを保護して IBM Cloud Object Storageに保管できるようにするフルサービスの暗号化ソリューションです。

(2023/9/25時点の情報)
CP4DaaSのワークスペースのうち、Watson Machine Learningのデプロイメントスペース用のCloud Object Storageバケットは、Key Protectによる暗号化がサポートされていません。

2. Key Protect の準備

2-1. Key Protectとは

Key Protectは、データを保護するために使用する暗号鍵を管理するためのIBM Cloudサービスです。
Cloud Object Storageバケットを始めとして、IBM Cloudの各種サービスをユーザー管理の独自の鍵で暗号化するために利用します。ユーザー管理の鍵を使用した暗号化は、Bring Your Own Key (BYOK) と呼ばれることもあります。

Key Protectでは2種類のタイプの鍵をサポートしており、鍵を作成したりインポートしたりすることで対象データの暗号化に利用できます。

  1. ルート鍵
  2. 標準鍵

Cloud Object Storageバケット等、IBM Cloudの各種サービスをユーザー管理の独自の鍵で暗号化する際には、ルート鍵を用いてエンベロープ暗号化を行います。
エンベロープ暗号化は、データ暗号鍵 (DEK)自体を別の鍵(マスタ鍵)で暗号化することで多層防御を実現します。マスタ鍵はKey Management System(KMS)でセキュアに保存・管理します。

ルート鍵は、定期的なローテーション (つまり、新規バージョンの鍵の作成) を行うことがベスト・プラクティスです。 定期的なローテーションによって、鍵の「暗号期間」と呼ばれる期間が短くなります。また、担当者の離職、プロセスの不具合、セキュリティー問題の検出などの特定のケースでもローテーションを利用できます。鍵のローテーションは手動実行に加えて、ローテーション・ポリシーによる自動ローテーションが利用可能です。
ローテーションのたびに鍵の新しい「バージョン」が作成され、鍵バージョンごとに IBM Cloud アカウントに課金されます。

ルート鍵のローテーション後、ルート鍵を利用しているIBM Cloudの各種サービス (Cloud Object Storageバケット等)において、新しい鍵バージョンへの同期化が以下の流れで行われます。

  1. ルート鍵のローテーションの実行後、IBM Cloudの各種サービスへ鍵ライフサイクル・イベントが通知されます。
  2. IBM Cloudの各種サービスは通知された同期要求に応答し、新しい鍵バージョンへの同期化を行います。

IBM Cloudの各種サービスがイベントおよび同期要求に応答するまでに最大 4 時間かかる場合があります。手動で同期APIを実行することも可能です。

2-2. Key Protectセットアップ手順

本手順の前提

  • 作業を行うIBM Cloudアカウント内にCP4DaaSおよびCloud Object Storageサービスが作成済みであるものとします。
  • Key Protectは有償IBM Cloudアカウントにおいてのみ利用可能です。料金プランも有償プランのみの提供となります。従ってLiteアカウントおよびLiteプランを利用することはできません。
    • (2023/9/25時点の情報) ただし、最初の鍵バージョン5つまでは無料となりますので、有償アカウントを保有している場合、鍵のバージョン数に注意すれば無料で試すことができます。

      <該当箇所の抜粋>
      IBM Cloud の Key Protect での価格設定は、アカウント内の 鍵バージョン の数に基づきます。 最初の 5 つの鍵バージョンは無料です。その後は、鍵バージョンごとの月額料金が USD1.045 になります。
      鍵を作成またはインポートすると、その鍵の最初の バージョン が開始されます。 その結果、新規作成またはインポートされた鍵には、1 つのバージョンがあります。 鍵がローテートされるたびに、新しいバージョンが作成されます。 10 回ローテートされた鍵には、11 個のバージョン (ローテーションによって作成された 10 個のバージョンと初期バージョン) があります。

2-2-1. Key Protectサービスの作成

  1. 対象のIBM Cloudアカウントへログイン後、カタログでKey Protectを検索し、Key Protectサービスの作成画面へ進みます。
    image.png

  2. Key Protectサービスの作成オプションを選択し、サービスを作成します。
    image.png

  3. Key Protectサービスの作成が完了すると、サービスの詳細画面が開きます。
    image.png

2-2-2. Key Protect鍵リングの作成

鍵を作成する前に、鍵をグループ化して管理するためのリソースである鍵リング(キーリング)を作成します。
デフォルトで鍵リングID defaultが存在しますが、今回は新規作成します。

  1. Key Protectサービスの詳細画面メニューより、「キーリング」へ進みます。
    image.png

  2. 「作成」をクリックし、任意の鍵リングIDを指定し作成します。
    image.png
    image.png

3. 指定した鍵リングIDが作成されたことを確認します。
image.png

2-2-3. Key Protectルート鍵の作成

事前に作成した鍵リングを指定し、ルート鍵を作成します。

  1. Key Protectサービスの詳細画面メニューより、「鍵の管理」へ進みます。
    image.png

  2. 「追加」をクリックし、鍵の作成オプションを指定して作成します。

    • 鍵の作成
    • Root key
    • 鍵の名前:任意
    • Advanced Option
      • 鍵リングの選択:事前に作成した鍵リングID
      • Set Key rotation policy
        • Rotation Policy:Enabled
        • Rotation Interval:1 ※本例では1か月周期

    Set Key rotation policyにてルート鍵の自動ローテーションを有効化することができます。鍵の作成後に、自動ローテーションの設定を変更(Disable, Intervalの変更)することも可能です。

鍵のローテーションによって新しい鍵バージョンが作成されます。鍵バージョン数に応じて課金されるので適切なローテーション周期を検討してください。

 
image.png

3. 指定したルート鍵が作成されたことを確認します。
image.png

2-2-4. Key ProtectとIBM Cloud Object Storageサービス間の統合

Key ProtectとIBM Cloud Object Storageサービスが連携できるよう、サービス間の許可を構成します。

  1. IBM Cloudアカウントの「アクセス(IAM)」ページのメニューより「許可」へ進みます。
    image.png

  2. 許可の管理で「作成」をクリックします。
    image.png

  3. 許可の付与対象を指定し、「許可」をクリックします。

    • ソース・アカウント:当該アカウント
    • ソース・サービス:Cloud Object Storage
      • アクセス権限の範囲の指定:選択された属性に基づくリソース
      • ソース・サービス・インスタンス:事前に作成済みのCloud Object Storageサービス
    • ターゲット・サービス:Key Protect
      • アクセス権限の範囲の指定:選択された属性に基づくリソース
      • Instance ID:事前に作成済みのKey Protectサービス
        image.png
  4. 許可が作成されたことを確認します。
    image.png

以上の手順で、Object StorageバケットでKey Protectのルート鍵を利用するための準備が整いました。
続いてCP4DaaSで製品ストレージ用Cloud Object StorageサービスがKey Protectを利用するための設定を行います。

3. CP4DaaS製品ストレージ用のCloud Object StorageサービスへKey Protectのルート鍵を連携

以下の製品資料を参照し、CP4DaaSのWatson StudioプロジェクトとWatson Knowledge Catalogカタログで、ユーザー独自のルート鍵による暗号化を利用できるようKey Protectのルート鍵を連携します。

CP4DaaS製品資料:Cloud Pak for Data as a Service で使用するための IBM Cloud Object Storage のセットアップ > オプション: 独自の鍵を使用して IBM Cloud Object Storage インスタンスを暗号化する

  1. 対象のIBM Cloudアカウントに作成したCP4DaaSへログインし、左側のメニューより「管理」>「構成と設定」へ進みます。
    image.png

  2. 構成と設定ページにて、「ストレージ委任」へ進みます。
    image.png

  3. CP4DaaS製品ストレージ用Cloud Object Storageリソースについて、プロジェクトとカタログのストレージ委任を有効化します。有効化されるとトグルボタンが緑色の状態となります。
    image.png
    image.png

  4. CP4DaaS製品ストレージ用Cloud Object Storageリソースについて、暗号鍵の「追加+」をクリックし、「2-2.Key Protectセットアップ手順」で作成したKey Protectサービスおよびルート鍵を指定します。
    image.png
    image.png

  5. CP4DaaS製品ストレージ用Cloud Object Storageリソースへ、指定したルート鍵が追加されたことを確認します。
    image.png

以上の手順で、CP4DaaSでKey Protectを利用するための設定が完了しました。
続いて、Watson StudioプロジェクトおよびWatson Knowledge Catalogカタログを作成し、製品ストレージ用のCloud Object StorageバケットへKey Protectのルート鍵が適用されることを確認します。

4. CP4DaaS製品ストレージ用のCloud Object StorageバケットでKey Protectのルート鍵適用を確認

4-1. Watson Studio プロジェクト作成

(2023/9/25時点の情報)
Key Protect利用時の既知の制限事項として、Key Protectによる暗号化が適用されたWatson StudioプロジェクトにおいてWatson Machine Learningに関連する資産タイプや操作のエラー発生が報告されています。
従って、該当する資産タイプや操作を行う予定がある場合、Key Protectの利用をお控えいただくことをお勧めいたします。ただし、今後の製品更新に伴い制限が緩和される可能性もありますので、最新状況は製品資料をご確認ください。

CP4DaaS製品資料:既知の問題と制限 > Key Protect が有効な場合の Cloud Object Storage の問題

<該当部分の抜粋>

Key Protect が有効な場合の Cloud Object Storage の問題
Key Protect を Cloud Object Storage と併用することは、 Watson Machine Learning 資産での作業ではサポートされていません。 Key Protectを使用している場合、 Watson Studioで資産を操作するときに以下の問題が発生することがあります。

  • 以下の Watson Machine Learning 資産のトレーニングまたは保存が失敗する可能性があります。
    • Auto AI
    • 統合学習
    • Watson Pipelines
  • SPSS モデルまたはノートブック・モデルをプロジェクトに保存できない場合があります。
  1. Watson Studioプロジェクトを作成します。この時、プロジェクト作成先のストレージ・サービスとして、Key Protectのルート鍵を追加したCloud Object Storageサービスを選択します。
    image.png

  2. 作成されたWatson Studioプロジェクトで「管理」タブを開き「一般」ページで、プロジェクト用のCloud Object Storageバケットの名称を確認し、「IBM Cloudで管理」をクリックします。
    image.png

  3. Cloud Object StorageのUIで、プロジェクト用のCloud Object Storageバケット詳細へ進みます。
    image.png

  4. バケット詳細の「構成」タブを開き、「鍵管理」をクリックします。
    image.png

  5. Key Protectサービスとルート鍵が関連付けられていることが確認できます。
    image.png

以降、通常のプロジェクトと同様に資産を作成して利用します。

4-2. Watson Kanowledge Catalog カタログ作成

  1. Watson Knowledge Catalogへカタログを作成します。この時、カタログ作成先のストレージ・サービスとして、Key Protectのルート鍵を追加したCloud Object Storageサービスを選択します。
    image.png

  2. 作成されたWatson Knowledge Catalogカタログで「設定」タブを開き、カタログ用のCloud Object Storageバケットの名称を確認します。
    image.png

  3. Cloud Object StorageのUIを開き、カタログ用のCloud Object Storageバケット詳細へ進みます。
    image.png

  4. バケット詳細の「構成」タブを開き、「鍵管理」をクリックします。
    image.png

  5. Key Protectサービスとルート鍵が関連付けられていることが確認できます。
    image.png

以降、通常のカタログと同様に資産を作成して利用します。

5. 参照資料

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0