Azure Key Vaultでのマスター暗号化キーの管理

Autonomous AI Databaseは、Azure Key Vaultに存在する顧客管理Transparent Data Encryption (TDE)キーをサポートしています。

Azure Key Vaultで顧客管理暗号化キーを使用するための前提条件

Azure Key Vaultに存在するAutonomous AI Databaseで顧客管理のマスター暗号化キーを使用するための前提条件ステップについて説明します。

制限事項:

  • Azure Key Vaultは商用リージョンでのみサポートされています。

  • Azure Key Vaultは、クロスリージョンAutonomous Data Guardスタンバイではサポートされていません。

  • サポートされているキー・シェイプとサイズは次のとおりです。

    • RSA 2048、3072および4096

    • EC-P256、EC-P256K、EC-P384、EC-P521

これらのステップに従います。

  1. Oracle管理キーを使用した暗号化のデフォルトの暗号化キー設定を使用するAutonomous AI Databaseインスタンスを作成します。詳細は、Autonomous AI Databaseインスタンスのプロビジョニングを参照してください。

    ノート

    ノート: Azure Key Vaultの顧客管理キーの暗号化キー設定は、作成プロセス中は使用できません。このオプションは、インスタンスの編集時にプロビジョニング後に使用できます。

  2. Transparent Data Encryption (TDE)マスター・キーを使用してAzure Key Vaultを作成します。

    詳細は、「Azure Key Vaultについて」を参照してください。

  3. Azure Directory tenant_idでAzureサービス・プリンシパル認証を有効にして、Autonomous AI DatabaseインスタンスがAzure Key Vaultにアクセスできるようにします。

    1. Microsoft Azure Active DirectoryテナントIDを取得します。

      sec_az_tenant_id.pngの説明が続きます

      図sec_az_tenant_id.pngの説明

      詳細は、「Azure Active DirectoryテナントIDの検索方法」を参照してください。

    2. ADMINとしてインスタンスに接続します。

    3. DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTHでAzureサービス・プリンシパルを有効にします。azure_tenantidの値は、前のステップで取得したAzureディレクトリIDです。

      たとえば:

      BEGIN
       DBMS_CLOUD_ADMIN.ENABLE_PRINCIPAL_AUTH(
               provider => 'AZURE',
               params   => JSON_OBJECT('azure_tenantid' value 'azure_directoryID'));
       END;
       /

      これにより、Azureサービス・プリンシパル認証が可能になり、AzureポータルでAutonomous AI Database用のAzureアプリケーションが作成されます。詳細は、Azureサービス・プリンシパルの有効化を参照してください。

  4. Autonomous AI DatabaseからAzureリソースにアクセスするためのAzureアプリケーションの同意を提供します。

    1. Autonomous AI Databaseで、CLOUD_INTEGRATIONSを問い合せます。

      たとえば:

      SELECT * FROM CLOUD_INTEGRATIONS;
      
      PARAM_NAME        PARAM_VALUE
      
      --------------- ------------------------------------------------------------------------------------------------------------------------------------------
      azure_tenantid    29...eb
      azure_consent_url https://login.microsoftonline.com/f8...5a/oauth2/v2.0/authorize?client_id=d4f5...d5&response_type=code&scope=User.read
      azure_app_name    ADBS_APP_OCID1.AUTONOMOUSDATABASE...

      ビューCLOUD_INTEGRATIONSは、ADMINユーザーまたはDWROLEロールを持つユーザーが使用可能です。

    2. ブラウザで、azure_consent_urlパラメータで指定されたAzure承諾URLを開きます。

      たとえば、問合せ結果からazure_consent_urlをコピーし、ブラウザにURLを入力します。

      https://login.microsoftonline.com/f8...5a/oauth2/v2.0/authorize?client_id=d4f5...d5&response_type=code&scope=User.read

      「要求された権限」ページが開き、次のような同意要求が表示されます。

      azure_consent.pngの説明が続きます

      図azure_consent.pngの説明

  5. Azureアプリケーション名を取得します。

    1. Autonomous AI Databaseで、CLOUD_INTEGRATIONSを問い合せます。

      たとえば:

      SELECT * FROM CLOUD_INTEGRATIONS;
    2. consent_urlに含まれるclient_id値をコピーします。

      PARAM_NAME        PARAM_VALUE
      
      --------------- ------------------------------------------------------------------------------------------------------------------------------------------
      azure_tenantid    29...eb
      azure_consent_url https://login.microsoftonline.com/f8...5a/oauth2/v2.0/authorize?client_id=**d4f5...d5**&response_type=code&scope=User.read
      azure_app_name    ADBS_APP_OCID1.AUTONOMOUSDATABASE...
    3. Azureポータルでclient_idを検索します。アプリケーションIDは、Microsoft Entra IDの下に表示されます。

      sec_az_app_name.pngの説明が続きます

      図sec_az_app_name.pngの説明

    4. アプリケーションIDをコピーします。この値は、Azure Key Vault内のキーへのこのアプリケーション・アクセスを許可するために後続のステップで使用されます。

  6. Azure Key Vaultにアクセスするために必要なロールをAzureアプリケーションに割り当てます。

    1. Azureポータルで、Azure Key Vaultのアクセス・ポリシーに移動します。

      このボールトにアクセスできるアプリケーションのリストが表示されます。

    2. 「アクセス・ポリシー」ページで、「+作成」をクリックして、このキー・ボールトにアクセスするためのアプリケーションのアクセス・ポリシーを作成します。

      sec_az_acc_pol.pngの説明が続きます

      図sec_az_acc_pol.pngの説明

    3. 「アクセス・ポリシーの作成」ページの「権限」で、すべてのキー権限(キー管理操作、暗号化操作、特権キー操作およびローテーション・ポリシー操作を含む)を選択し、「次へ」をクリックします。

    4. 「プリンシパル」で、アプリケーション名を検索します。

    5. 表示されたアプリケーション名を選択し、「次へ」をクリックします。

    6. 「アプリケーション」(オプション)で、「次へ」を選択します。

    7. 「確認と作成」で、ポリシー詳細を確認し、「作成」をクリックします。

      sec_az_create_pol.pngの説明が続きます

      図sec_az_create_pol.pngの説明

    8. Azure Key Vaultの詳細ページで、「リフレッシュ」をクリックし、アプリケーション名を検索します。これは、このAzure Key Vaultのキーにアクセスする権限を持つアプリケーションの表示リストに含まれています。

    詳細は、Key Vaultアクセス・ポリシーの割当てを参照してください。

Azure Key VaultによるAutonomous AI Databaseでの顧客管理暗号化キーの使用

Azure Key Vaultに存在する顧客管理マスター暗号化キーを使用してAutonomous AI Databaseを暗号化するステップを示します。

これらのステップに従います。

  1. 必要な顧客管理マスター・キーの前提条件ステップを実行します。Azure Key Vaultで顧客管理暗号化キーを使用するための前提条件を参照してください。

  2. 「詳細」ページで、「その他のアクション」ドロップダウン・リストから「暗号化キーの管理」を選択します。

    ノート

    ノート: Azure Key Vaultに格納された顧客管理Transparent Data Encryption (TDE)キーをすでに使用していて、キーをローテーションする場合は、次のステップに従って別のキーを選択します(現在選択されているマスターTDEキーとは異なるキーを選択します)。

  3. 「暗号化キーの管理」ページで、「顧客管理キーを使用した暗号化」を選択します。

  4. 「キー・タイプ」ドロップダウンから、「Microsoft Azure」を選択します。

    sec_azure.pngの説明が続きます

    図sec_azure.pngの説明

  5. 「Vault URI」フィールドに、Azure Vault URIを入力します。

    1. Azureポータルで、Azure Key Vaultに移動します。

    2. Azure Key Vaultの「概要」ページを選択し、表示されたVault URIをコピーします。

      sec_az_vault_uri.pngの説明が続きます

      図sec_az_vault_uri.pngの説明

    3. Autonomous AI Databaseの「暗号化キーの管理」ページの「Vault URI」フィールドに、コピーしたAzure Vault URIを入力します。

  6. 「Key name」フィールドに、「Azure Key Name」の名前を入力します。

    1. Azureポータルで、Azure Key Vaultに移動し、「キー」を選択します。このボールトのキーのリストが表示されます。

    2. 表示されたキーのリストから、使用するキー名をコピーします。

      sec_az_key_name.pngの説明が続きます

      図sec_az_key_name.pngの説明

    3. 「Autonomous AI Database暗号化キーの管理」ページの「キー名」フィールドに、コピーしたAzureキー名を入力します。

  7. 保存」をクリックします。

「ライフサイクル状態」「更新中」に変わります。リクエストが完了すると、「ライフサイクル状態」「使用可能」と表示されます。

リクエストが完了すると、Oracle Cloud Infrastructure Consoleで、主要な情報が「Autonomous AI Database Information」ページの「暗号化」という見出しの下に表示されます。この領域には、暗号化キー顧客管理キー(Microsoft Azure)で、Vault URIキー名が表示されます。

次に例を示します。

sec_az_results.pngの説明が続きます

図sec_az_results.pngの説明

詳細は、Autonomous AI Databaseで顧客管理キーを使用するためのノートを参照してください。