APIを使用したAzureのCustomer Managed Keysの設定と設定

このドキュメントでは、APIを使用してAdobe Experience PlatformでCustomer Managed Keys (CMK)を有効にするAzure固有の手順について説明します。 AzureでホストされているExperience Platform インスタンスのUIを使用してこのプロセスを完了する方法については、UI CMK設定ドキュメント ​を参照してください。

AWS固有の手順については、AWS設定ガイド ​を参照してください。

前提条件

Adobe Experience Platformの暗号化 セクションを表示してアクセスするには、役割を作成し、その役割に顧客管理キーの管理権限を割り当てている必要があります。 顧客管理キーの管理権限を持つユーザーは、組織に対してCMKを有効にできます。

Experience Platformでの役割と権限の割り当てについて詳しくは、権限の設定に関するドキュメント ​を参照してください。

AzureでホストされているExperience Platform インスタンスに対してCMKを有効にするには、次の設定でAzure Key Vaultを設定する必要があります。

CMK アプリのセットアップ register-app

キーコンテナーを設定したら、次の手順は、Azure テナントにリンクするCMK アプリケーションに登録することです。

はじめに

CMK アプリを登録するには、Experience Platform APIを呼び出す必要があります。 これらの呼び出しを行うために必要な認証ヘッダーを収集する方法について詳しくは、Experience Platform API認証ガイド ​を参照してください。

認証ガイドでは、必要である x-api-key リクエストヘッダーに独自の一意の値を生成する方法を説明していますが、このガイドのすべての API 操作では、代わりに、静的な値 acp_provisioning が使用されます。 ただし、{ACCESS_TOKEN}{ORG_ID} には独自の値を指定する必要があります。

このガイドに示すすべてのAPI呼び出しでは、platform.adobe.ioがルートパスとして使用され、デフォルトではVA7 リージョンになります。 組織が別の地域を使用している場合は、platformの後にダッシュと、組織に割り当てられた地域コードが必要です。NLD2の場合はnld2、AUS5の場合はaus5 (例:platform-aus5.adobe.io)。 組織の地域がわからない場合は、システム管理者にお問い合わせください。

認証 URL の取得 fetch-authentication-url

登録プロセスを開始するには、アプリ登録エンドポイントに対して GET リクエストを実行し、組織に必要な認証 URL を取得します。

リクエスト

curl -X GET \
  https://platform.adobe.io/data/infrastructure/manager/byok/app-registration \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: acp_provisioning' \
  -H 'x-gw-ims-org-id: {ORG_ID}'

応答

成功した応答は、認証 URL を含む applicationRedirectUrl プロパティを返します。

{
    "id": "byok",
    "name": "acpebae9422Caepcmkmultitenantapp",
    "applicationUri": "https://adobe.com/acpebae9422Caepcmkmultitenantapp",
    "applicationId": "e463a445-c6ac-4ca2-b36a-b5146fcf6a52",
    "applicationRedirectUrl": "https://login.microsoftonline.com/common/oauth2/authorize?response_type=code&client_id=e463a445-c6ac-4ca2-b36a-b5146fcf6a52&redirect_uri=https://adobe.com/acpebae9422Caepcmkmultitenantapp&scope=user.read"
}

applicationRedirectUrl アドレスをコピーしてブラウザーに貼り付け、認証ダイアログを開きます。 Accept を選択して、CMK アプリサービスプリンシパルを Azure テナントに追加します。

[Accept]がハイライト表示された Microsoft権限リクエストダイアログ。

CMK アプリを役割に割り当てます。 assign-to-role

認証プロセスが完了したら、Azure Key Vault に戻り、左側のナビゲーションで Access control を選択します。 ここから Add を選択し、続けて Add role assignment を選択します。

AddとAdd role assignmentがハイライト表示されたMicrosoft Azure ダッシュボード。

次の画面では、この割り当ての役割を選択するように求められます。 Key Vault Crypto Service Encryption User を選択してから Next を選択し、続行します。

NOTE
Managed-HSM Key Vault階層がある場合は、Managed HSM Crypto Service Encryption User ユーザーの役割を選択する必要があります。

Key Vault Crypto Service Encryption Userがハイライト表示されたMicrosoft Azure ダッシュボード。

次の画面で、「Select members」 を選択して、右側のパネルでダイアログを開きます。 検索バーを使用して CMK アプリケーションのサービスプリンシパルを見つけ、リストから選択します。 終了したら「Save」を選択します。

NOTE
リストにアプリケーションが見つからない場合は、サービスプリンシパルがテナントに受け入れられていません。 適切な権限を持っていることを確認するには、Azure管理者または担当者にお問い合わせください。

Experience Platform の暗号化キー設定を有効にする send-to-adobe

CMK アプリを Azure にインストールすると、暗号化キー識別子をアドビに送信できます。 左側のナビゲーションで「Keys」を選択し、次に送信するキーの名前を選択します。

Keys オブジェクトとキー名がハイライト表示されたMicrosoft Azure ダッシュボード。

キーの最新バージョンを選択すると、その詳細ページが表示されます。 ここから、オプションでキーの許可された操作を設定できます。

IMPORTANT
キーに許可される必要な最小限の操作は、Wrap Key​および​ Unwrap Key ​権限です。 必要に応じて、Encrypt、Decrypt、SignおよびVerifyを含めることができます。

キー識別子」フィールドには、キーのURI識別子が表示されます。 次の手順で使用するために、この URI 値をコピーします。

Microsoft Azure ダッシュボードのキーの詳細(Permitted operations)と「キーのコピー」のURL セクションがハイライト表示されています。

Key Vault の URI を取得したら、POST リクエストを使用して CMK 設定エンドポイントに送信できます。

NOTE
Key Vault とキーの名前のみがアドビに保存され、キーのバージョンは保存されません。

リクエスト

CMK設定エンドポイントにKey Vault URIを送信するためのサンプルリクエスト。
code language-shell
curl -X POST \
  https://platform.adobe.io/data/infrastructure/manager/customer/config \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: acp_provisioning' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -d '{
        "name": "Config1",
        "type": "BYOK_CONFIG",
        "imsOrgId": "{ORG_ID}",
        "configData": {
          "providerType": "AZURE_KEYVAULT",
          "keyVaultKeyIdentifier": "https://adobecmkexample.vault.azure.net/keys/adobeCMK-key/7c1d50lo28234cc895534c00d7eb4eb4"
        }
      }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
プロパティ 説明
name 設定の名前。 この値は、後の手順で設定のステータスを確認するために必要なため、必ず覚えておいてください。 この値は、大文字と小文字を区別します。
type 設定タイプ。 BYOK_CONFIG に設定する必要があります。
imsOrgId 組織 ID。 このIDは、x-gw-ims-org-id ヘッダーで指定した値と同じである必要があります。
configData

このプロパティには、設定に関する次の詳細が含まれます。

  • providerTypeAZURE_KEYVAULT に設定する必要があります。
  • keyVaultKeyIdentifier以前にコピーした Key Vault の URI。

応答

応答が成功すると、設定ジョブの詳細が返されます。
code language-json
{
  "id": "4df7886b-a122-4391-880b-47888d5c5b92",
  "config": {
    "configData": {
      "keyVaultUri": "https://adobecmkexample.vault.azure.net",
      "keyVaultKeyIdentifier": "https://adobecmkexample.vault.azure.net/keys/adobeCMK-key/7c1d50lo28234cc895534c00d7eb4eb4",
      "keyVersion": "7c1d50lo28234cc895534c00d7eb4eb4",
      "keyName": "Config1",
      "providerType": "AZURE_KEYVAULT"
    },
    "name": "acpcf978863Aaepcmkmultitenantapp",
    "type": "BYOK_CONFIG",
    "imsOrgId": "{ORG_ID}",
    "status": "NEW"
  },
  "status": "CREATED"
}

ジョブは数分以内に処理を完了する必要があります。

設定のステータスの確認 check-status

設定リクエストのステータスを確認するには、GET リクエストを実行します。

リクエスト

確認する設定の name をパスに追加し(以下の例では config1)、BYOK_CONFIG に設定された configType クエリパラメーターを含める必要があります。

設定リクエストのステータスを確認するためのサンプルリクエスト。
code language-shell
curl -X GET \
  https://platform.adobe.io/data/infrastructure/manager/customer/config/config1?configType=BYOK_CONFIG \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: acp_provisioning' \
  -H 'x-gw-ims-org-id: {ORG_ID}'

応答

応答が成功すると、ジョブのステータスが返されます。
code language-json
{
  "name": "acpcf978863Aaepcmkmultitenantapp",
  "type": "BYOK_CONFIG",
  "status": "COMPLETED",
  "configData": {
    "keyVaultUri": "https://adobecmkexample.vault.azure.net",
    "keyVaultKeyIdentifier": "https://adobecmkexample.vault.azure.net/keys/adobeCMK-key/7c1d50lo28234cc895534c00d7eb4eb4",
    "keyVersion": "7c1d50lo28234cc895534c00d7eb4eb4",
    "keyName": "Config1",
    "providerType": "AZURE_KEYVAULT"
  },
  "imsOrgId": "{ORG_ID}",
  "subscriptionId": "cf978863-7325-47b1-8fd9-554b9fdb6c36",
  "id": "4df7886b-a122-4391-880b-47888d5c5b92",
  "rowType": "BYOK_KEY"
}

この status 属性には、次の意味を持つ 4 つの値のいずれかを指定できます。

  1. RUNNING: Experience Platformがキーおよびキーコンテナーにアクセスできることを検証します。
  2. UPDATE_EXISTING_RESOURCES:システムは、組織内のすべてのサンドボックスのデータストアに Key Vault とキー名を追加しています。
  3. COMPLETED: キーの保管庫とキー名がデータストアに正常に追加されました。
  4. FAILED:問題が発生しました。主にキー、Key Vault、またはマルチテナントのアプリ設定に関連しています。

次の手順

上記の手順を完了すると、組織で CMK が正常に有効になります。 AzureでホストされているExperience Platform インスタンスの場合、プライマリデータストアに取り込まれたデータは、Azure Key Vaultのキーを使用して暗号化および復号化されるようになりました。

Adobe Experience Platformでのデータ暗号化について詳しくは、暗号化に関するドキュメント ​を参照してください。

recommendation-more-help
experience-platform-help-landing