Flow Service API を使用した Amazon S3 ベース接続の作成
ベース接続は、ソースと Adobe Experience Platform 間の認証済み接続を表します。
このチュートリアルでは、Flow Service API を使用して Amazon S3 (以下「S3」)のベース接続を作成する手順について説明します。
はじめに
このガイドでは、Adobe Experience Platform の次のコンポーネントに関する十分な知識が必要です。
次の節では、Flow Service API を使用して S3 ストレージに正常に接続するために必要な追加情報を示しています。
必要な資格情報の収集
Flow Service を S3 ストレージに接続するには、次の接続プロパティの値を指定する必要があります。
s3AccessKey
s3SecretKey
serviceUrl
serviceUrl
の形式は https://s3.{REGION}.amazonaws.com/)
です。bucketName
-
)のみを使用でき、IP アドレスとしてフォーマットすることはできません。folderPath
s3SessionToken
connectionSpec.id
ecadc60c-7455-4d87-84dc-2a0e293d997b
です。基本について詳しくは、 このドキュメント Amazon Web Services を参照してくだい。
Platform API の使用
Platform API への呼び出しを正常に実行する方法について詳しくは、Platform API の概要を参照してください。
ベース接続の作成
ベース接続は、ソースと Platform 間の情報(ソースの認証資格情報、現在の接続状態、固有のベース接続 ID など)を保持します。ベース接続 ID により、ソース内からファイルを参照および移動し、データタイプやフォーマットに関する情報を含む、取り込みたい特定の項目を識別することができます。
ベース接続 ID を作成するには、/connections
エンドポイントに POST リクエストを実行し、S3 認証資格情報をリクエストパラメーターの一部として使用します。
API 形式
POST /connections
リクエスト
次のリクエストは、S3 のベース接続を作成します。
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": "Amazon S3 base connection",
"description": "Amazon S3 base connection with temporary session token",
"auth": {
"specName": "Access Key",
"params": {
"s3AccessKey": "{S3_ACCESS_KEY}",
"s3SecretKey": "{S3_SECRET_KEY}",
"s3SessionToken": "{S3_SESSION_TOKEN}
}
},
"connectionSpec": {
"id": "ecadc60c-7455-4d87-84dc-2a0e293d997b",
"version": "1.0"
}
}'
auth.params.s3AccessKey
auth.params.s3SecretKey
auth.params.s3SessionToken
connectionSpec.id
ecadc60c-7455-4d87-84dc-2a0e293d997b
応答
リクエストが成功した場合は、一意の ID(id
)を含む、新しく作成した接続の詳細が返されます。この ID は、次のチュートリアルでストレージを調査するために必要になります。
{
"id": "4cb0c374-d3bb-4557-b139-5712880adc55",
"etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}
次の手順
このチュートリアルでは、API を使用して S3 接続を作成し、一意の ID を応答本文の一部として取得しました。 この接続 ID を使用して Flow Service API を使用したクラウドストレージの調査を行うことができます。
付録
次の節では、S3 ソースの使用に関する追加情報を示します。
S3 セッショントークンの更新
s3SessionToken
は一時的なもので、有効期限が切れたら更新する必要があります。 API にセッションリクエストを実行することで、ベースPATCHに関連付けられたセッショントークン Flow Service 更新できます。 S3 の一時的セキュリティ資格情報について詳しくは、S3 概要を参照してください。
If-Match
ヘッダーは、PATCH リクエストを行う際に必要です。このヘッダーの値は、更新する接続の一意の etag です。API 形式
PATCH /connections
リクエスト
次のリクエストは、S3 のベース接続を作成します。
curl -X PATCH \
'https://platform.adobe.io/data/foundation/flowservice/connections/4cb0c374-d3bb-4557-b139-5712880adc55' \
-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}' \
-H 'If-Match: "1700d77b-0000-0200-0000-5e3b41a10000"'
-d '[
{
"op": "replace",
"path": "/auth/params/s3SessionToken",
"value": "{SESSION_TOKEN}"
}
]'
op
add
、replace
、remove
があります。path
value
応答
正常な応答では、ベース接続 ID と更新された etag が返されます。Flow Service API に GET リクエストを実行し、その際に接続 ID を指定することで、更新を検証できます。
{
"id": "4cb0c374-d3bb-4557-b139-5712880adc55",
"etag": "\"3600e378-0000-0200-0000-5f40212f0000\""
}