[ベータ版]{class="badge informative"}
API でのソースのプライベートリンクのサポート
プライベートリンク機能を使用して、Adobe Experience Platform ソースの接続先となるプライベートエンドポイントを作成できます。 プライベート IP アドレスを使用してソースを仮想ネットワークに安全に接続し、パブリック IP を不要にし、攻撃対象領域を削減します。 複雑なファイアウォールやネットワークアドレス翻訳設定の必要性を排除し、データトラフィックが承認済みのサービスにのみ到達するようにすることで、ネットワーク設定を簡素化します。
このガイドでは、API を使用してプライベートエンドポイントを作成および使用する方法について説明します。
基本を学ぶ
このガイドは、Adobe Experience Platform の次のコンポーネントを実際に利用および理解しているユーザーを対象としています。
Platform API の使用
Platform API を正常に呼び出す方法について詳しくは、Platform API の概要のガイドを参照してください。
プライベートエンドポイントの作成 create-private-endpoint
プライベートエンドポイントを作成するには、/privateEndpoints
に対して POST リクエストを実行します。
API 形式
POST /privateEndpoints
リクエスト
次のリクエストは、プライベートエンドポイントを作成します。
code language-shell |
---|
|
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 | |
---|---|
プロパティ | 説明 |
name |
プライベートエンドポイントの名前。 |
subscriptionId |
Azure サブスクリプションに関連付けられた ID。 詳しくは、Azure のガイド からサブスクリプションとテナント ID を取得する Azure Portal を参照してください。 |
resourceGroupName |
Azure のリソースグループの名前。 リソースグループには、Azure ソリューションに関連するリソースが含まれています。 詳しくは、Azure リソースグループの管理 に関するガイドを参照してください。 |
resourceName |
リソースの名前。 Azure えば、リソースとは、仮想マシン、Web アプリ、データベースなどのインスタンスを指します。 詳しくは、Azure リソースマネージャーについて に関する Azure ガイド参照してください。 |
fqdns |
ソースの完全修飾ドメイン名。 このプロパティは、Snowflake ソースを使用する場合にのみ必要です。 |
connectionSpec.id |
使用しているソースの接続仕様 ID。 |
connectionSpec.version |
使用している接続仕様 ID のバージョン。 |
応答
応答が成功すると、次の値が返されます。
code language-json |
---|
|
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 | |
---|---|
プロパティ | 説明 |
id |
新しく作成したプライベートエンドポイントの ID。 |
name |
プライベートエンドポイントの名前。 |
subscriptionId |
Azure サブスクリプションに関連付けられた ID。 詳しくは、Azure のガイド からサブスクリプションとテナント ID を取得する Azure Portal を参照してください。 |
resourceGroupName |
Azure のリソースグループの名前。 リソースグループには、Azure ソリューションに関連するリソースが含まれています。 詳しくは、Azure リソースグループの管理 に関するガイドを参照してください。 |
resourceName |
リソースの名前。 Azure えば、リソースとは、仮想マシン、Web アプリ、データベースなどのインスタンスを指します。 詳しくは、Azure リソースマネージャーについて に関する Azure ガイド参照してください。 |
fqdns |
ソースの完全修飾ドメイン名。 このプロパティは、Snowflake ソースを使用する場合にのみ必要です。 |
connectionSpec.id |
使用しているソースの接続仕様 ID。 |
connectionSpec.version |
使用している接続仕様 ID のバージョン。 |
state |
プライベートエンドポイントの現在の状態。 有効な状態は次のとおりです。
|
プライベートエンドポイントのリストの取得 retrieve-private-endpoints
組織内の特定のサンドボックスからプライベートエンドポイントのリストを取得するには、/privateEndpoints
にGET リクエストを実行します。
API 形式
GET /privateEndpoints
リクエスト
次のリクエストでは、組織内に存在するすべてのプライベートエンドポイントのリストを取得します。
code language-shell |
---|
|
応答
応答が成功すると、組織内のプライベートエンドポイントのリストが返されます。
code language-json |
---|
|
特定のソースのプライベートエンドポイントのリストを取得 retrieve-private-endpoints-by-source
特定のソースに対応するプライベートエンドポイントのリストを取得するには、/privateEndpoints
エンドポイントに対してGET リクエストを実行し、ソースの connectionSpec.id
を指定します。
API 形式
GET /privateEndpoints?property=connectionSpec.id=={CONNECTION_SPEC_ID}
{CONNECTION_SPEC_ID}
リクエスト
次のリクエストは、接続仕様 ID 4c10e202-c428-4796-9208-5f1f5732b1cf
のソースに対応するすべてのプライベートエンドポイントのリストを取得します。
code language-shell |
---|
|
応答
応答が成功すると、接続仕様 ID 4c10e202-c428-4796-9208-5f1f5732b1cf
を持つソースに対応するすべてのプライベートエンドポイントのリストが返されます。
code language-json |
---|
|
プライベートエンドポイントの取得 retrieve-specific-private-endpoint
特定のプライベートエンドポイントを取得するには、/privateEndpoints
にGET リクエストを実行し、取得するプライベートエンドポイントの ID を指定します。
API 形式
GET /privateEndpoints/{PRIVATE_ENDPOINT_ID}
{PRIVATE_ENDPOINT_ID}
リクエスト
次のリクエストは、ID 2c5699b0-b9b6-486f-8877-ee5e21fe9a9d
のプライベートエンドポイントを取得します。
code language-shell |
---|
|
応答
応答が成功すると、次の ID を持つプライベートエンドポイントが返されます。2c5699b0-b9b6-486f-8877-ee5e21fe9a9d
code language-json |
---|
|
プライベートエンドポイントの解決 resolve-private-endpoint
API 形式
GET /privateEndpoints?op=autoResolve
リクエスト
code language-shell |
---|
|
応答
code language-json |
---|
|
Enable Interactive Authoring enable-interactive-authoring
Interactive Authoring は、接続やアカウントの調査やデータのプレビューなどの機能に使用されます。 Interactive Authoring を有効にするには、/privateEndpoints/interactiveAuthoring
に対して POST リクエストを実行し、クエリパラメーターの演算子として enable
を指定します。
API 形式
POST /privateEndpoints/interactiveAuthoring?op=enable
op
op
の値を enable
に設定します。リクエスト
次のリクエストは、プライベートエンドポイントの Interactive Authoring を有効にし、TTL を 60 分に設定します。
code language-shell |
---|
|
table 0-row-2 1-row-2 | |
---|---|
プロパティ | 説明 |
autoTerminationMinutes |
Interactive Authoring の TTL (有効期間)は分単位です。 Interactive Authoring は、接続やアカウントの調査やデータのプレビューなどの機能に使用されます。 最大 TTL は 120 分に設定できます。 デフォルト TTL は 60 分です。 |
応答
リクエストが成功した場合は、HTTP ステータス 202 (許可済み)が返されます。
ステータス Interactive Authoring 取得 retrieve-interactive-authoring-status
プライベートエンドポイントに関する Interactive Authoring の現在のステータスを表示するには、/privateEndpoints/interactiveAuthoring
に対してGET リクエストを実行します。
API 形式
GET /privateEndpoints/interactiveAuthoring
リクエスト
次のリクエストは、Interactive Authoring のステータスを取得します。
code language-shell |
---|
|
応答
code language-json |
---|
|
table 0-row-2 1-row-2 | |
---|---|
プロパティ | 説明 |
status |
Interactive Authoring のステータス。 有効な値は disabled 、enabling 、enabled です。 |
プライベートエンドポイントを削除 delete-private-endpoint
プライベートエンドポイントを削除するには、/privateEndpoints
にDELETE リクエストを実行し、削除するエンドポイントの ID を指定します。
API 形式
DELETE /privateEndpoints/{PRIVATE_ENDPOINT_ID}
{PRIVATE_ENDPOINT_ID}
リクエスト
次のリクエストは、ID 02a74b31-a566-4a86-9cea-309b101a7f24
のプライベートエンドポイントを削除します。
code language-shell |
---|
|
応答
リクエストが成功した場合は、HTTP ステータス 200 (成功)が返されます。 削除を確認するには、GET リクエストを実行し、削除された ID をクエリパラメーターとして /privateEndpoints
に指定します。
フローサービス flow-service
Flow Service API と組み合わせてプライベートエンドポイントを使用する方法については、次の節を参照してください。
プライベートエンドポイントとの接続の作成 create-base-connection
Experience Platformのプライベートエンドポイントとの接続を作成するには、/connections
API の Flow Service エンドポイントに対して POST リクエストを実行します。
API 形式
POST /connections/
リクエスト
次のリクエストは、プライベートエンドポイントも使用して、Snowflake 用の認証済みベース接続を作成します。
code language-shell |
---|
|
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 | |
---|---|
プロパティ | 説明 |
name |
ベース接続の名前。 |
description |
(オプション)接続に関する追加情報を提供する説明。 |
auth.specName |
ソースをExperience Platformに接続するために使用される認証。 |
auth.params.connectionString |
Snowflake 接続文字列。 詳しくは、Snowflake API 認証ガイドを参照してください。 |
auth.params.usePrivateLink |
プライベートエンドポイントを使用しているかどうかを判断するブール値。 プライベートエンドポイントを使用している場合、この値を true に設定します。 |
connectionSpec.id |
Snowflake の接続仕様 ID |
connectionSpec.version |
Snowflake 接続仕様 ID のバージョン。 |
応答
リクエストが成功した場合は、新しく生成されたベース接続 ID と etag が返されます。
code language-json |
---|
|
特定のプライベートエンドポイントに関連付けられている接続を取得します retrieve-connections-by-endpoint
特定のプライベートエンドポイントに関連付けられている接続を取得するには、/connections
エンドポイントに対してGET リクエストを実行し、プライベートエンドポイントの ID をクエリパラメーターとして指定します。
API 形式
GET /connections?property=auth.params.privateEndpointId=={PRIVATE_ENDPOINT_ID}
リクエスト
次のリクエストは、ID 02a74b31-a566-4a86-9cea-309b101a7f24
のプライベートエンドポイントに関連付けられている既存の接続を取得します。
code language-shell |
---|
|
応答
応答が成功すると、クエリされたプライベートエンドポイントに関連付けられた接続のリストが返されます。
code language-json |
---|
|
任意のプライベートエンドポイントに関連付けられている接続の取得 retrieve-connections
任意のプライベートエンドポイントに関連付けられている接続を取得するには、/connections
エンドポイントに対してGET リクエストを実行し、クエリパラメーターとして property=auth.params.usePrivateLink==true
を指定します。
API 形式
GET /connections?property=auth.params.usePrivateLink==true
リクエスト
次のリクエストでは、プライベートエンドポイントを使用する、組織内のすべての接続を取得します。
code language-shell |
---|
|
応答
応答が成功すると、プライベートエンドポイントに関連付けられているすべての接続が返されます。
code language-json |
---|
|
付録
API のプライベートリンクを使用する方法について Azure、この節を参照してください。
プライベートリンクに接続するための Snowflake アカウントの設定
プライベートリンクで Snowflake ソースを使用するには、次の前提条件の手順を完了する必要があります。
まず、Snowflake でサポートチケットを発行し、アカウントの の地域の Azure エンドポイントサービスリソース IDSnowflake をリクエストする必要があります。 Snowflake チケットを発行するには、次の手順に従います。
- Snowflake UI に移動し、メールアカウントを使用してログインします。 この手順では、プロファイル設定でメールが検証されていることを確認する必要があります。
- ユーザーメニュー を選択し、サポート を選択してサポートにアクセス Snowflake ます。
- サポートケースを作成するには、「+ Support Case」を選択します。 次に、関連する詳細をフォームに入力し、必要なファイルを添付します。
- 終了したら、ケースを送信します。
エンドポイントリソース ID の形式は次のとおりです。
subscriptions/{SUBSCRIPTION_ID}/resourceGroups/az{REGION}-privatelink/providers/microsoft.network/privatelinkservices/sf-pvlinksvc-az{REGION}
code language-shell |
---|
|
{SUBSCRIPTION_ID}
a1b2c3d4-5678-90ab-cdef-1234567890ab
{REGION}
azwestus2
プライベートリンク設定の詳細の取得
プライベートリンク設定の詳細を取得するには、Snowflake で次のコマンドを実行する必要があります。
USE ROLE accountadmin;
SELECT key, value::varchar
FROM TABLE(FLATTEN(input => PARSE_JSON(SYSTEM$GET_PRIVATELINK_CONFIG())));
次に、以下のプロパティの値を取得します。
privatelink-account-url
regionless-privatelink-account-url
privatelink_ocsp-url
値を取得したら、次の呼び出しを実行して、Snowflake のプライベートリンクを作成できます。
リクエスト
次のリクエストは、Snowflake のプライベートエンドポイントを作成します。
code language-shell |
---|
|
code language-shell |
---|
|
Azure Blob および Azure Data Lake Gen2 のプライベートエンドポイントを承認
Azure Blob および Azure Data Lake Gen2 ソースに対するプライベートエンドポイントリクエストを承認するには、Azure Portal にログインします。 左側のナビゲーションで「Data storage」を選択し、「Security + networking」タブに移動して「Networking」を選択します。 次に、「Private endpoints」を選択して、お使いのアカウントに関連付けられているプライベートエンドポイントとその現在の接続状態のリストを表示します。 保留中のリクエストを承認するには、目的のエンドポイントを選択し、「Approve」をクリックします。