Flow Service API を使用した SFTP ベース接続の作成
Last update: Tue Sep 24 2024 00:00:00 GMT+0000 (Coordinated Universal Time)
ベース接続は、ソースと Adobe Experience Platform 間の認証済み接続を表します。
このチュートリアルでは、Flow Service API を使用して SFTP (セキュアファイル転送プロトコル)のベース接続を作成する手順について説明します。
はじめに
このガイドでは、Adobe Experience Platform の次のコンポーネントに関する十分な知識が必要です。
- ソース:Experience Platform を使用すると、様々なソースからデータを取得しながら、Platform サービスを使用して受信データの構造化、ラベル付け、拡張を行うことができます。
- サンドボックス:Experience Platform には、単一の Platform インスタンスを別々の仮想環境に分割し、デジタルエクスペリエンスアプリケーションの開発と発展に役立つ仮想サンドボックスが用意されています。
SFTP ソース接続を持つ JSON オブジェクトを取り込む場合は、改行や改行を避けることをお勧めします。 この制限を回避するには、1 行に 1 つの JSON オブジェクトを使用し、複数の行を使用してファイルを送信します。
次の節では、Flow Service API を使用して SFTP サーバーに正常に接続するために必要な追加情報を示しています。
必要な資格情報の収集
認証資格情報の取得方法の手順について詳しくは、SFTP 認証ガイドを参照してください。
Platform API への呼び出しを正常に実行する方法について詳しくは、Platform API の概要を参照してください。
ベース接続の作成
作成した後は、SFTP ベース接続の認証タイプを変更できません。 認証タイプを変更するには、新しいベース接続を作成する必要があります。
ベース接続は、ソースと Platform 間の情報(ソースの認証資格情報、現在の接続状態、固有のベース接続 ID など)を保持します。ベース接続 ID により、ソース内からファイルを参照および移動し、データタイプやフォーマットに関する情報を含む、取り込みたい特定の項目を識別することができます。
SFTP ソースは、基本認証と SSH 公開鍵を使用した認証の両方をサポートしています。 この手順では、アクセス権を付与するサブフォルダーへのパスを指定することもできます。
ベース接続 ID を作成するには、/connections
エンドポイントに POST リクエストを実行し、SFTP 認証資格情報をリクエストパラメーターの一部として使用します。
SFTP コネクタは、RSA または DSA タイプの OpenSSH キーをサポートしています。 主要なファイルの内容が "-----BEGIN [RSA/DSA] PRIVATE KEY-----"
で始まり、"-----END [RSA/DSA] PRIVATE KEY-----"
で終わることを確認してください。 秘密鍵ファイルが PPK 形式のファイルの場合は、PuTTY ツールを使用して、PPK 形式から OpenSSH 形式に変換します。
API 形式
基本認証
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": "SFTP connector with password",
"description": "SFTP connector password",
"auth": {
"specName": "Basic Authentication for sftp",
"params": {
"host": "{HOST}",
"port": 22,
"userName": "{USERNAME}",
"password": "{PASSWORD}",
"maxConcurrentConnections": 5,
"folderPath": "acme/business/customers/holidaySales",
"disableChunking": "true"
}
},
"connectionSpec": {
"id": "b7bf2577-4520-42c9-bae9-cad01560f7bc",
"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 7-row-2 8-row-2 |
|
プロパティ |
説明 |
auth.params.host |
SFTP サーバーのホスト名。 |
auth.params.port |
SFTP サーバーのポート。 この整数値のデフォルトは 22 です。 |
auth.params.username |
SFTP サーバーに関連付けられたユーザー名。 |
auth.params.password |
SFTP サーバーに関連付けられたパスワード。 |
auth.params.maxConcurrentConnections |
Platform を SFTP に接続する際に指定した同時接続の最大数。 有効にする場合、この値は 1 以上に設定する必要があります。 |
auth.params.folderPath |
アクセス権を付与するフォルダーへのパス。 |
auth.params.disableChunking |
SFTP サーバーがチャンクをサポートするかどうかを決定するために使用されるブール値です。 |
connectionSpec.id |
SFTP サーバー接続仕様 ID:b7bf2577-4520-42c9-bae9-cad01560f7bc |
|
accordion |
応答 |
リクエストが成功した場合は、新しく作成した接続の一意の ID (id )が返されます。 この ID は、次のチュートリアルで SFTP サーバーを探索するために必要になります。
code language-json |
{
"id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
"etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}
|
|
SSH 公開鍵認証
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": "SFTP connector with SSH authentication",
"description": "SFTP connector with SSH authentication",
"auth": {
"specName": "SSH PublicKey Authentication for sftp",
"params": {
"host": "{HOST}",
"port": 22,
"userName": "{USERNAME}",
"privateKeyContent": "{PRIVATE_KEY_CONTENT}",
"passPhrase": "{PASSPHRASE}",
"maxConcurrentConnections": 5,
"folderPath": "acme/business/customers/holidaySales",
"disableChunking": "true"
}
},
"connectionSpec": {
"id": "b7bf2577-4520-42c9-bae9-cad01560f7bc",
"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 7-row-2 8-row-2 9-row-2 |
|
プロパティ |
説明 |
auth.params.host |
SFTP サーバーのホスト名。 |
auth.params.port |
SFTP サーバーのポート。 この整数値のデフォルトは 22 です。 |
auth.params.username |
SFTP サーバーに関連付けられたユーザー名。 |
auth.params.privateKeyContent |
Base64 でエンコードされた SSH 秘密鍵のコンテンツ。 OpenSSH キーのタイプは、RSA または DSA のいずれかに分類する必要があります。 |
auth.params.passPhrase |
キーファイルまたはキーの内容がパスフレーズによって保護されている場合に秘密鍵を復号化するためのパスフレーズまたはパスワード。 PrivateKeyContent がパスワードで保護されている場合、このパラメーターは、PrivateKeyContent のパスフレーズを値として使用する必要があります。 |
auth.params.maxConcurrentConnections |
Platform を SFTP に接続する際に指定した同時接続の最大数。 有効にする場合、この値は 1 以上に設定する必要があります。 |
auth.params.folderPath |
アクセス権を付与するフォルダーへのパス。 |
auth.params.disableChunking |
SFTP サーバーがチャンクをサポートするかどうかを決定するために使用されるブール値です。 |
connectionSpec.id |
SFTP サーバー接続仕様 ID: b7bf2577-4520-42c9-bae9-cad01560f7bc |
|
accordion |
応答 |
リクエストが成功した場合は、新しく作成した接続の一意の ID (id )が返されます。 この ID は、次のチュートリアルで SFTP サーバーを探索するために必要になります。
code language-json |
{
"id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
"etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}
|
|