Flow Service API를 사용하여 Amazon S3을(를) Experience Platform에 연결

Flow Service API를 사용하여 Amazon S3 소스 계정을 Adobe Experience Platform에 연결하는 방법에 대해 알아보려면 이 안내서를 참조하십시오.

시작하기

이 안내서를 사용하려면 Adobe Experience Platform의 다음 구성 요소에 대해 이해하고 있어야 합니다.

  • 소스: Experience Platform을 사용하면 Platform 서비스를 사용하여 들어오는 데이터를 구조화하고 레이블을 지정하고 개선하는 기능을 제공하는 동시에 다양한 소스에서 데이터를 수집할 수 있습니다.
  • 샌드박스: Experience Platform은 단일 Platform 인스턴스를 별도의 가상 환경으로 분할하여 디지털 경험 애플리케이션을 개발하고 발전시키는 데 도움이 되는 가상 샌드박스를 제공합니다.

Platform API 사용

Platform API를 성공적으로 호출하는 방법에 대한 자세한 내용은 Platform API 시작에 대한 안내서를 참조하십시오.

Azure의 Experience Platform에 Amazon S3 연결 azure

Amazon S3 원본을 Azure의 Experience Platform에 연결하는 방법에 대한 자세한 내용은 아래 단계를 참조하세요.

필요한 자격 증명 수집

Flow Service이(가) Amazon S3 저장소에 연결하려면 다음 연결 속성에 대한 값을 제공해야 합니다.

자격 증명
설명
s3AccessKey
Amazon S3 버킷의 액세스 키 ID입니다.
s3SecretKey
Amazon S3 버킷의 비밀 키 ID입니다.
serviceUrl
(선택 사항) 연결할 사용자 지정 Amazon S3 끝점입니다. 이 필드는 Amazon S3 버킷이 지역에 따라 다를 때 필요합니다. serviceUrl의 형식은 https://s3.{REGION}.amazonaws.com/)입니다.
bucketName
Amazon S3 버킷에는 데이터 및 해당 설명 메타데이터가 포함되어 있습니다. Amazon S3 버킷 이름은 3자에서 63자 사이여야 하며 문자 또는 숫자로 시작하고 끝나야 합니다. 버킷 이름에는 소문자, 숫자 또는 하이픈(-)만 사용할 수 있으며 IP 주소 형식을 지정할 수 없습니다.
folderPath
데이터가 저장된 Amazon S3 버킷의 폴더에 대한 경로입니다. 이 자격 증명은 사용자가 액세스를 제한한 경우에 필요합니다.
s3SessionToken
(선택 사항) 신뢰할 수 없는 환경의 사용자에게 Amazon S3 리소스에 대한 임시 액세스를 제공할 수 있는 단기 임시 토큰입니다. 자세한 내용은 Amazon S3 개요를 참조하세요.
connectionSpec.id
연결 사양은 기본 및 소스 연결 만들기와 관련된 인증 사양을 포함하여 소스의 커넥터 속성을 반환합니다. Amazon S3의 연결 사양 ID는 ecadc60c-7455-4d87-84dc-2a0e293d997b입니다.

시작하기에 대한 자세한 내용은 이 Amazon Web Services 문서를 참조하세요.

Azure의 Experience Platform에서 Amazon S3에 대한 기본 연결 만들기

기본 연결은 소스의 인증 자격 증명, 연결의 현재 상태 및 고유한 기본 연결 ID를 포함하여 소스와 플랫폼 간에 정보를 유지합니다. 기본 연결 ID를 사용하면 소스 내에서 파일을 탐색 및 탐색하고 데이터 유형 및 형식에 대한 정보를 포함하여 수집할 특정 항목을 식별할 수 있습니다.

기본 연결 ID를 만들려면 S3 인증 자격 증명을 요청 매개 변수의 일부로 제공하는 동안 /connections 끝점에 POST 요청을 하십시오.

API 형식

POST /connections

요청

다음 요청은 Amazon S3에 대한 기본 연결을 만듭니다.

요청 예제를 보려면 선택
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": "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"
        }
    }'
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2
속성 설명
auth.params.s3AccessKey S3 버킷과 연결된 액세스 키입니다.
auth.params.s3SecretKey S3 버킷과 연계된 비밀 키.
auth.params.s3SessionToken (선택 사항) 버킷에 액세스하는 데 사용되는 단기, 임시 S3 토큰입니다.
connectionSpec.id S3 연결 사양 ID: ecadc60c-7455-4d87-84dc-2a0e293d997b

응답

응답이 성공하면 고유 식별자(id)를 포함하여 새로 만든 연결의 세부 정보가 반환됩니다. 다음 자습서에서 저장소를 탐색하려면 이 ID가 필요합니다.

응답 예를 보려면 선택
code language-json
{
    "id": "4cb0c374-d3bb-4557-b139-5712880adc55",
    "etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}

S3 세션 토큰 업데이트

s3SessionToken은(는) 임시이며 만료되면 업데이트해야 합니다. Flow Service API에 PATCH 요청을 하여 기본 연결과 연결된 세션 토큰을 업데이트할 수 있습니다. S3의 임시 보안 자격 증명에 대한 자세한 내용은 S3 개요를 참조하십시오.

IMPORTANT
PATCH 요청을 할 때 If-Match 헤더가 필요합니다. 이 헤더의 값은 업데이트하려는 연결의 고유한 태그입니다.

API 형식

PATCH /connections

요청

다음 요청은 Amazon S3에 대한 기본 연결을 만듭니다.

요청 예제를 보려면 선택
code language-shell
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}"
        }
    ]'
table 0-row-2 1-row-2 2-row-2 3-row-2
매개변수 설명
op 연결을 업데이트하는 데 필요한 작업을 정의하는 데 사용되는 작업 호출입니다. 작업에는 add, replaceremove이(가) 포함됩니다.
path 업데이트할 매개 변수의 경로입니다.
value 매개 변수를 업데이트할 새 값입니다.

응답

성공적인 응답은 기본 연결 ID와 업데이트된 etag를 반환합니다. 연결 ID를 제공하는 동안 Flow Service API에 대한 GET 요청을 하여 업데이트를 확인할 수 있습니다.

응답 예를 보려면 선택
code language-json
{
    "id": "4cb0c374-d3bb-4557-b139-5712880adc55",
    "etag": "\"3600e378-0000-0200-0000-5f40212f0000\""
}

Amazon Web Services(AWS)의 Experience Platform에 Amazon S3 연결 aws

AVAILABILITY
이 섹션은 Amazon Web Services(AWS)에서 실행되는 Experience Platform 구현에 적용됩니다. 현재 AWS에서 실행 중인 Experience Platform은 제한된 수의 고객이 사용할 수 있습니다. 지원되는 Experience Platform 인프라에 대한 자세한 내용은 Experience Platform 멀티 클라우드 개요를 참조하세요.

Amazon S3 원본을 AWS의 Experience Platform에 연결하는 방법에 대한 자세한 내용은 아래 단계를 참조하세요.

전제 조건

Amazon S3 계정을 AWS의 Experience Platform에 연결하려면 다음이 필요합니다.

  • 연결할 Amazon S3 버킷 또는 폴더에 액세스할 수 있는 AWS 계정입니다.
  • s3:GetObjects3:ListBucket 작업을 허용하는 필수 IAM 권한입니다.

버킷 권한에 대한 IAM 역할 검색

API 형식

GET /connectionSpecs/{CONNECTION_SPEC_ID}/configs?authType={AUTH_TYPE}

요청

요청 예제를 보려면 선택
code language-shell
curl -X GET \
  'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs/ecadc60c-7455-4d87-84dc-2a0e293d997b/configs?authType=IamBasedAuthentication' \
  -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}' \

응답

응답이 성공하면 IAM 역할이 반환됩니다. Amazon S3 버킷에서 권한을 설정하려면 다음 단계에서 이 값이 필요합니다.

응답 예를 보려면 선택
code language-json
{
    "configParams": {
          "IAMRole": "{IAM_ROLE}"
    }
}

Amazon S3 버킷에서 권한 설정

  1. AWS 관리 콘솔에서 계정에 로그인합니다.
  2. Amazon S3 버킷으로 이동한 다음 Permissions ​을(를) 선택합니다.
  3. 버킷 정책을 편집하고 다음 권한을 추가합니다.
TIP
IAM_ROLE_TO_ALLOW_LIST은(는) 이전 단계에서 API를 통해 가져온 IAM 역할입니다. {YOUR_BUCKET_NAME}을(를) Amazon S3 버킷의 실제 이름으로 바꾸어야 합니다. 특정 폴더에 대한 액세스 권한을 부여하려면 {YOUR_FOLDER_NAME}도 액세스 권한을 부여할 폴더의 실제 이름으로 바꾸어야 합니다.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AEP Get Object Related Policy Prod",
            "Effect": "Allow",
            "Principal": {
                "AWS": "{IAM_ROLE_TO_ALLOW_LIST}"
            },
            "Action": "s3:Get*",
            "Resource": "arn:aws:s3:::{YOUR_BUCKET_NAME}/{YOUR_FOLDER_NAME}"
        },
        {
            "Sid": "AEP List Bucket Prod",
            "Effect": "Allow",
            "Principal": {
                "AWS": "{IAM_ROLE_TO_ALLOW_LIST}"
            },
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::{YOUR_BUCKET_NAME}"
        }
    ]
}

AWS의 Experience Platform에서 Amazon S3에 대한 기본 연결 만들기

API 형식

POST /connections

요청

다음 요청은 Amazon S3에 대한 기본 연결을 만듭니다.

예를 보려면 선택
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": "Amazon S3 base connection for Experience Platform on AWS",
      "description": "Amazon S3 base connection for Experience Platform on AWS",
      "auth": {
          "specName": "IAMRole Based",
          "params": {
              "bucketName": "{YOUR_BUCKET_NAME}"
          }
      },
      "connectionSpec": {
          "id": "ecadc60c-7455-4d87-84dc-2a0e293d997b",
          "version": "1.0"
      }
  }'
table 0-row-2 1-row-2
속성 설명
auth.params.bucketName Amazon S3 버킷의 이름입니다. 이전 단계에서 권한에 추가된 값과 동일한 값입니다.

응답

응답이 성공하면 고유 식별자(id)를 포함하여 새로 만든 연결의 세부 정보가 반환됩니다. 다음 자습서에서 저장소를 탐색하려면 이 ID가 필요합니다.

예를 보려면 선택
code language-json
{
    "id": "4cb0c374-d3bb-4557-b139-5712880adc55",
    "etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}

다음 단계

이 자습서에 따라 API를 사용하여 S3 연결을 만들었고 고유 ID를 응답 본문의 일부로 가져왔습니다. 이 연결 ID를 사용하여 흐름 서비스 API를 사용하여 클라우드 저장소 탐색할 수 있습니다.

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