Adobe Experience Platform に保存されたデータは、システムレベルのキーを使用して保存時に暗号化されます。 Platform 上に構築されたアプリケーションを使用している場合は、代わりに独自の暗号化キーを使用するよう選択すると、データのセキュリティをより詳細に制御できます。
Adobe Experience Platformデータレイクとプロファイルストア (CosmosDB) のデータは、CMK を使用して暗号化されます。
このドキュメントでは、Platform で顧客管理キー(CMK)機能を有効にするプロセスについて説明します。
CMK を有効にするには、 Azure Key Vault は、次の設定で構成する必要があります。
CMK は、アドビの Healthcare Shield サービスおよび Privacy and Security Shield サービスに含まれています。お客様の組織がこれらの製品の 1 つに対するライセンスを購入すると、1 回限りのプロセスで機能を設定できます。
CMK を設定した後は、システム管理キーに戻すことはできません。 キーを安全に管理し、Azure 内で Key Vault、キー、CMK アプリへのアクセスを提供して、データへのアクセスが失われないようにする責任があります。
プロセスは以下のようになります。
設定プロセスが完了すると、すべてのサンドボックスをまたいで Platform にオンボードされたデータがすべて、Azure キーの設定を使用して暗号化されます。CMK を使用するには、公開プレビュープログラムの一部である Microsoft Azure 機能を活用します。
CMK は、Microsoft Azure Key Vault からのキーのみをサポートします。作業を開始するには、Azure を使用して新しいエンタープライズアカウントを作成するか、既存のエンタープライズアカウントを使用して、以下の手順に従って Key Vault を作成する必要があります。
Azure Key Vault の Premium と Standard のサービスレベルのみがサポートされています。Azure Managed HSM、Azure Dedicated HSM および Azure Payments HSM ではサポートされていません。提供されるキー管理サービスについて詳しくは、Azure ドキュメントを参照してください。
以下のドキュメントでは、Key Vault を作成する基本的な手順についてのみ説明します。 このガイダンス以外では、組織のポリシーに従って Key Vault を設定する必要があります。
Azure ポータルにログインし、検索バーを使用してサービスのリストの下にある Key vaults を見つけます。
サービスを選択すると、Key vaults ページが表示されます。 ここから Create を選択します。
提供されたフォームを使用して、名前や割り当てられたリソースグループなど、Key Vault の基本的な詳細を入力します。
ほとんどのオプションはデフォルト値のままでかまいませんが、必ずソフト削除および消去保護オプションを有効にしてください。これらの機能を有効にしないと、Key Vault が削除された場合に、データへのアクセスが失われる可能性があります。
ここから、Key Vault の作成ワークフローを続け、組織のポリシーに従って様々なオプションを設定します。
Review + create 手順に達したら、検証中に Key Vault の詳細を確認できます。 検証に問題がなければ、「Create」を選択してプロセスを完了します。
公開アクセスを特定の仮想ネットワークに制限するように Key Vault が設定されている場合、または公開アクセスを完全に無効にする場合は、Microsoft にファイアウォールの例外を許可する必要があります。
左側のナビゲーションの「Networking」を選択します。 Firewalls and virtual networks の下で、「Allow trusted Microsoft services to bypass this firewall」チェックボックスを選択し、「Apply」を選択します。
Key Vault を作成したら、新しいキーを生成できます。 「Keys」タブに移動し、「Generate/Import」を選択します。
提供されたフォームを使用してキーの名前を指定し、キータイプに「RSA」を選択します。最小でも、RSA key size は、Cosmos DB で要求されているように、少なくとも 3072 ビットである必要があります。Azure Data Lake Storage は、RSA 3027 とも互換性があります。
キーに指定した名前を覚えておきます。これは、後の手順でキーをアドビに送信するときに使用します。
残りのコントロールを使用して、必要に応じて生成または読み込むキーを設定します。終了したら「Create」を選択します。
設定されたキーが、Vault のキーのリストに表示されます。
Key Vault を設定したら、次の手順は、Azure テナントにリンクする CMK アプリケーションを登録します 。
CMK アプリを登録するには、Platform API を呼び出す必要があります。 これらの呼び出しを行うために必要な認証ヘッダーの収集方法について詳しくは、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
) をクリックします。 組織の地域が不明な場合は、システム管理者にお問い合わせください。
登録プロセスを開始するには、アプリ登録エンドポイントに対して 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 テナントに追加します。
認証プロセスが完了したら、Azure Key Vault に戻り、左側のナビゲーションで Access control を選択します。 ここから Add を選択し、続けて Add role assignment を選択します。
次の画面では、この割り当ての役割を選択するように求められます。Key Vault Crypto Service Encryption User を選択してから Next を選択し、続行します。
次の画面で、「Select members」 を選択して、右側のパネルでダイアログを開きます。 検索バーを使用して CMK アプリケーションのサービスプリンシパルを見つけ、リストから選択します。 終了したら「Save」を選択します。
リストにアプリケーションが見つからない場合は、サービスプリンシパルがテナントに受け入れられていません。 Azure 管理者または担当者と協力して、適切な権限を持っていることを確認してください。
CMK アプリを Azure にインストールすると、暗号化キー識別子をアドビに送信できます。 左側のナビゲーションで「Keys」を選択し、次に送信するキーの名前を選択します。
キーの最新バージョンを選択すると、その詳細ページが表示されます。ここから、オプションでキーに対して許可する操作を設定できます。少なくとも、キーには Wrap Key および Unwrap Key 権限が付与されている必要があります。
「キー識別子」フィールドには、キーの URI 識別子が表示されます。次の手順で使用するために、この URI 値をコピーします。
Key Vault の URI を取得したら、POST リクエストを使用して CMK 設定エンドポイントに送信できます。
Key Vault とキーの名前のみがアドビに保存され、キーのバージョンは保存されません。
リクエスト
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"
}
}'
プロパティ | 説明 |
---|---|
name |
設定の名前。この値は、後の手順で設定のステータスを確認する際に必要なため、覚えておいてください。この値は、大文字と小文字を区別します。 |
type |
設定タイプ。 BYOK_CONFIG に設定する必要があります。 |
imsOrgId |
組織 ID。これは、x-gw-ims-org-id ヘッダーで指定される値と同じである必要があります。 |
configData |
設定に関する次の詳細が含まれます。
|
応答
正常な応答は、設定ジョブの詳細を返します。
{
"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": "{IMS_ORG}",
"status": "NEW"
},
"status": "CREATED"
}
このジョブは、数分以内に処理を完了する必要があります。
設定リクエストのステータスを確認するには、GET リクエストを実行します。
リクエスト
確認する設定の name
をパスに追加し(以下の例では config1
)、BYOK_CONFIG
に設定された configType
クエリパラメーターを含める必要があります。
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}'
応答
正常な応答は、ジョブのステータスを返します。
{
"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": "{IMS_ORG}",
"subscriptionId": "cf978863-7325-47b1-8fd9-554b9fdb6c36",
"id": "4df7886b-a122-4391-880b-47888d5c5b92",
"rowType": "BYOK_KEY"
}
この status
属性には、次の意味を持つ 4 つの値のいずれかを指定できます。
RUNNING
:Platform がキーと Key Vault にアクセスできることを検証します。UPDATE_EXISTING_RESOURCES
:システムは、組織内のすべてのサンドボックスのデータストアに Key Vault とキー名を追加しています。COMPLETED
:Key Vault とキー名がデータストアに追加されました。FAILED
:問題が発生しました。主にキー、Key Vault、またはマルチテナントのアプリ設定に関連しています。上記の手順を完了すると、組織で CMK が正常に有効になります。 Platform に取り込まれたデータは、Azure Key Vault のキーを使用して暗号化および復号化されるようになりました。データへの Platform アクセスを取り消す場合は、アプリケーションに関連付けられているユーザーの役割を Azure 内の Key Vault から削除できます。
アプリケーションへのアクセスを無効にした後、Platform でデータにアクセスできなくなるまで、数分から 24 時間かかる場合があります。アプリケーションへのアクセスを再度有効にすると、データが再び使用可能になるまで、同じように遅延時間が発生します。
Key Vault、キー、または CMK アプリが無効になり、Platform でデータにアクセスできなくなると、そのデータに関連するダウンストリーム操作ができなくなります。 設定を変更する前に、Platform でのデータアクセスができなくなることによるダウンストリームの影響を理解しておく必要があります。