[Ultimate]{class="badge positive"}

Flow Service API を使用した Azure Event Hubs ソース接続の作成

IMPORTANT
Real-time Customer Data Platform Ultimate を購入したユーザーは、ソースカタログで Azure Event Hubs ソースを利用できます。

このチュートリアルでは、Flow Service API を使用して Azure Event Hubs (以下「Event Hubs」)をExperience Platformに接続する方法について説明します。

はじめに

このガイドでは、Adobe Experience Platform の次のコンポーネントに関する十分な知識が必要です。

  • ソース:Experience Platform を使用すると、データを様々なソースから取得しながら、Platform サービスを使用して受信データの構造化、ラベル付け、拡張を行うことができます。
  • サンドボックス:Experience Platform には、単一の Platform インスタンスを別々の仮想環境に分割して、デジタルエクスペリエンスアプリケーションの開発と発展に役立つ仮想サンドボックスが用意されています。

以下の節では、Flow Service API を使用して Event Hubs を Platform に正しく接続するために必要な追加情報を示します。

必要な資格情報の収集

Flow Service を Event Hubs アカウントに接続するには、次の接続プロパティの値を指定する必要があります。

標準認証
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
資格情報 説明
sasKeyName 承認ルールの名前。SAS キー名とも呼ばれます。
sasKey Event Hubs 名前空間のプライマリキー。 Event Hubs リストを入力するには、sasKey が対応する sasPolicymanage 権限が設定されている必要があります。
namespace アクセスする Event Hub の名前空間。 Event Hub 名前空間は、一意のスコーピングコンテナを提供し、このコンテナでは 1 つ以上の Event Hubs を作成できます。
connectionSpec.id 接続仕様は、ベース接続とソース接続の作成に関連する認証仕様などの、ソースのコネクタプロパティを返します。Event Hubs 接続仕様 ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。
SAS 認証
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
資格情報 説明
sasKeyName 承認ルールの名前。SAS キー名とも呼ばれます。
sasKey Event Hubs 名前空間のプライマリキー。 Event Hubs リストを入力するには、sasKey が対応する sasPolicymanage 権限が設定されている必要があります。
namespace アクセスする Event Hub の名前空間。 Event Hub 名前空間は、一意のスコーピングコンテナを提供し、このコンテナでは 1 つ以上の Event Hubs を作成できます。
eventHubName Azure Event Hub 名を入力します。 Event Hub の名前について詳しくは、Microsoft ドキュメントを参照してください。
connectionSpec.id 接続仕様は、ベース接続とソース接続の作成に関連する認証仕様などの、ソースのコネクタプロパティを返します。Event Hubs 接続仕様 ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。

Event Hubs の共有アクセス署名(SAS)認証について詳しくは、Azure SAS の使用に関するガイドを参照してください。

Event Hub Azure Active Directory Auth
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
資格情報 説明
tenantId 権限をリクエストするテナント ID。 テナント ID は、GUID またはわかりやすい名前として書式設定できます。 注意:テナント ID は、Microsoft Azure インターフェイスでは「ディレクトリ ID」と呼ばれます。
clientId アプリに割り当てられたアプリケーション ID。 この ID は、Azure Active Directory ーザーを登録した Microsoft Entra ID ポータルから取得できます。
clientSecretValue アプリを認証するためにクライアント ID と共に使用されるクライアント秘密鍵。 クライアントの秘密鍵は、クライアントを登録した Microsoft Entra ID ポータルから取得でき Azure Active Directory す。
namespace アクセスする Event Hub の名前空間。 Event Hub 名前空間は、一意のスコーピングコンテナを提供し、このコンテナでは 1 つ以上の Event Hubs を作成できます。

Azure Active Directory について詳しくは、Microsoft Entra ID の使用に関する Azure ガイドを参照してください。

Azure Active Directory 認証をスコープとするイベント ハブ
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
資格情報 説明
tenantId 権限をリクエストするテナント ID。 テナント ID は、GUID またはわかりやすい名前として書式設定できます。 注意:テナント ID は、Microsoft Azure インターフェイスでは「ディレクトリ ID」と呼ばれます。
clientId アプリに割り当てられたアプリケーション ID。 この ID は、Azure Active Directory ーザーを登録した Microsoft Entra ID ポータルから取得できます。
clientSecretValue アプリを認証するためにクライアント ID と共に使用されるクライアント秘密鍵。 クライアントの秘密鍵は、クライアントを登録した Microsoft Entra ID ポータルから取得でき Azure Active Directory す。
namespace アクセスする Event Hub の名前空間。 Event Hub 名前空間は、一意のスコーピングコンテナを提供し、このコンテナでは 1 つ以上の Event Hubs を作成できます。
eventHubName Azure Event Hub 名を入力します。 Event Hub の名前について詳しくは、Microsoft ドキュメントを参照してください。

これらの値について詳しくは、 この Event Hubs ドキュメントを参照してください。

Platform API の使用

Platform API への呼び出しを正常に実行する方法について詳しくは、Platform API の概要を参照してください。

ベース接続の作成

TIP
作成した後は、Event Hubs ベース接続の認証タイプを変更できません。 認証タイプを変更するには、新しいベース接続を作成する必要があります。

ソース接続を作成する最初の手順は、Event Hubs ソースを認証し、ベース接続 ID を生成することです。ベース接続 ID を使用すると、ソース内を移動してファイルを探索し、データのタイプや形式に関する情報など、取り込みたい特定の項目を識別できます。

ベース接続 ID を作成するには、/connections エンドポイントに対して POST リクエストを実行し、その際に Event Hubs 認証資格情報をリクエストパラメーターの一部として指定します。

API 形式

POST /connections
標準認証

標準認証を使用してアカウントを作成するには、/connections エンドポイントに対してPOSTリクエストを行い、sasKeyNamesasKeynamespace の値を指定します。

accordion
リクエスト
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Azure Event Hubs connection",
      "description": "Connector for Azure Event Hubs",
      "auth": {
          "specName": "Azure EventHub authentication credentials",
          "params": {
              "sasKeyName": "{SAS_KEY_NAME}",
              "sasKey": "{SAS_KEY}",
              "namespace": "{NAMESPACE}"
          }
      },
      "connectionSpec": {
          "id": "bf9f5905-92b7-48bf-bf20-455bc6b60a4e",
          "version": "1.0"
      }
  }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
プロパティ 説明
auth.params.sasKeyName 承認ルールの名前。SAS キー名とも呼ばれます。
auth.params.sasKey 生成された共有アクセス署名。
auth.params.namespace アクセスする Event Hubs の名前空間。
connectionSpec.id Event Hubs 接続仕様 ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。
accordion
応答

リクエストが成功した場合は、一意の ID(id)を含め、新しく作成されたベース接続の詳細が返されます。この接続 ID は、次の手順でソース接続を作成する際に必要になります。

code language-json
{
    "id": "4cdbb15c-fb1e-46ee-8049-0f55b53378fe",
    "etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}
SAS 認証

SAS 認証を使用してアカウントを作成するには、/connections エンドポイントに対してPOSTリクエストを行い、sasKeyNamesasKeynamespaceeventHubName の値を指定します。

accordion
リクエスト
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Azure Event Hubs connection",
      "description": "Connector for Azure Event Hubs",
      "auth": {
          "specName": "Azure EventHub authentication credentials",
          "params": {
              "sasKeyName": "{SAS_KEY_NAME}",
              "sasKey": "{SAS_KEY}",
              "namespace": "{NAMESPACE}",
              "eventHubName": "{EVENT_HUB_NAME}
          }
      },
      "connectionSpec": {
          "id": "bf9f5905-92b7-48bf-bf20-455bc6b60a4e",
          "version": "1.0"
      }
  }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
プロパティ 説明
auth.params.sasKeyName 承認ルールの名前。SAS キー名とも呼ばれます。
auth.params.sasKey 生成された共有アクセス署名。
auth.params.namespace アクセスする Event Hubs の名前空間。
params.eventHubName Event Hubs ソースの名前。
connectionSpec.id Event Hubs 接続仕様 ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。
accordion
応答

リクエストが成功した場合は、一意の ID(id)を含め、新しく作成されたベース接続の詳細が返されます。この接続 ID は、次の手順でソース接続を作成する際に必要になります。

code language-json
{
    "id": "4cdbb15c-fb1e-46ee-8049-0f55b53378fe",
    "etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}
Event Hub Azure Active Directory Auth

Azure Active Directory Auth を使用してアカウントを作成するには、tenantIdclientIdclientSecretValuenamespace の値を指定したうえで、/connections エンドポイントに対してPOSTリクエストを行います。

accordion
リクエスト
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Azure Event Hubs connection",
      "description": "Connector for Azure Event Hubs",
      "auth": {
          "specName": "Event Hub Azure Active Directory Auth",
          "params": {
              "tenantId": "{TENANT_ID}",
              "clientId": "{CLIENT_ID}",
              "clientSecretValue": "{CLIENT_SECRET_VALUE}",
              "namespace": "{NAMESPACE}"
          }
      },
      "connectionSpec": {
          "id": "bf9f5905-92b7-48bf-bf20-455bc6b60a4e",
          "version": "1.0"
      }
  }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2
プロパティ 説明
auth.params.tenantId アプリケーションのテナント ID。 注意:テナント ID は、Microsoft Azure インターフェイスでは「ディレクトリ ID」と呼ばれます。
auth.params.clientId 組織のクライアント ID。
auth.params.clientSecretValue 組織のクライアントシークレット値。
auth.params.namespace アクセスする Event Hubs の名前空間。
connectionSpec.id Event Hubs 接続仕様 ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。
accordion
応答

リクエストが成功した場合は、一意の ID(id)を含め、新しく作成されたベース接続の詳細が返されます。この接続 ID は、次の手順でソース接続を作成する際に必要になります。

code language-json
{
    "id": "4cdbb15c-fb1e-46ee-8049-0f55b53378fe",
    "etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}
Azure Active Directory 認証をスコープとするイベント ハブ

Azure Active Directory Auth を使用してアカウントを作成するには、tenantIdclientIdclientSecretValuenamespaceeventHubName の値を指定したうえで、/connections エンドポイントに対してPOSTリクエストを行います。

accordion
リクエスト
code language-shell
curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Azure Event Hubs connection",
      "description": "Connector for Azure Event Hubs",
      "auth": {
          "specName": "Event Hub Scoped Azure Active Directory Auth",
          "params": {
              "tenantId": "{TENANT_ID}",
              "clientId": "{CLIENT_ID}",
              "clientSecretValue": "{CLIENT_SECRET_VALUE}",
              "namespace": "{NAMESPACE}",
              "eventHubName": "{EVENT_HUB_NAME}"
          }
      },
      "connectionSpec": {
          "id": "bf9f5905-92b7-48bf-bf20-455bc6b60a4e",
          "version": "1.0"
      }
  }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2
プロパティ 説明
auth.params.tenantId アプリケーションのテナント ID。 注意:テナント ID は、Microsoft Azure インターフェイスでは「ディレクトリ ID」と呼ばれます。
auth.params.clientId 組織のクライアント ID。
auth.params.clientSecretValue 組織のクライアントシークレット値。
auth.params.namespace アクセスする Event Hubs の名前空間。
auth.params.eventHubName Event Hubs ソースの名前。
connectionSpec.id Event Hubs 接続仕様 ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。
accordion
応答

リクエストが成功した場合は、一意の ID(id)を含め、新しく作成されたベース接続の詳細が返されます。この接続 ID は、次の手順でソース接続を作成する際に必要になります。

code language-json
{
    "id": "4cdbb15c-fb1e-46ee-8049-0f55b53378fe",
    "etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}

ソース接続の作成

TIP
Event Hubs コンシューマーグループは、特定の時間に 1 つのフローに対してのみ使用できます。

ソース接続は、データの取り込み元となる外部ソースへの接続を作成および管理します。ソース接続は、データソース、データ形式、データフローの作成に必要なソース接続 ID などの情報で構成されます。ソース接続インスタンスは、テナントと組織に固有です。

ソース接続を作成するには、Flow Service API の /sourceConnections エンドポイントに POST リクエストを実行します。

API 形式

POST /sourceConnections

リクエスト

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
  -H 'authorization: Bearer {ACCESS_TOKEN}' \
  -H 'content-type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -d '{
      "name": "Azure Event Hubs source connection",
      "description": "A source connection for Azure Event Hubs",
      "baseConnectionId": "4cdbb15c-fb1e-46ee-8049-0f55b53378fe",
      "connectionSpec": {
          "id": "bf9f5905-92b7-48bf-bf20-455bc6b60a4e",
          "version": "1.0"
      },
      "data": {
          "format": "json"
      },
      "params": {
          "eventHubName": "{EVENT_HUB_NAME}",
          "dataType": "raw",
          "reset": "latest",
          "consumerGroup": "{CONSUMER_GROUP}"
      }
  }'
プロパティ
説明
name
ソース接続の名前。 ソース接続の情報を検索する際に使用できるので、ソース接続の名前はわかりやすいものにしてください。
description
指定するとソース接続に関する詳細情報を含めることができるオプションの値。
baseConnectionId
前の手順で生成された Event Hubs ソースの接続 ID。
connectionSpec.id
Event Hubs の固定接続仕様 ID。この ID は bf9f5905-92b7-48bf-bf20-455bc6b60a4e です。
data.format
取り込む Event Hubs データの形式。現在、サポートされているデータ形式は json のみです。
params.eventHubName
Event Hubs ソースの名前。
params.dataType
このパラメーターは、取り込まれるデータのタイプを定義します。raw および xdm を含むデータタイプがサポートされています。
params.reset
このパラメーターは、データの読み取り方法を定義します。 latest を使用すると、最新のデータから読み取りを開始でき、earliest を使用すると、ストリーム内の最初の使用可能なデータから読み取りを開始できます。 このパラメーターはオプションです。指定しない場合、デフォルトは earliest になります。
params.consumerGroup
Event Hubs に使用するパブリッシュまたは購読のメカニズム。 このパラメーターはオプションです。指定しない場合、デフォルトは $Default になります。 詳しくは、この Event Hubs イベントコンシューマーに関するガイドを参照してください。 メモ:Event Hubs コンシューマーグループは、特定の時間に 1 つのフローに対してのみ使用できます。

次の手順

このチュートリアルでは、Flow Service API を使用して Event Hubs ソース接続を作成しました。 次のチュートリアルでは、このソース接続 ID を使用して、 Flow Service API を使用したストリーミングデータフローの作成を行います。

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089