Verbinding maken met Experience Platform via de Flow Service APIAmazon S3
Gemaakt voor:
- Ontwikkelaar
Lees deze gids om te leren hoe u uw Amazon S3 bronrekening met Adobe Experience Platform kunt verbinden gebruikend Flow Service API.
Aan de slag
Deze handleiding vereist een goed begrip van de volgende onderdelen van Adobe Experience Platform:
- Bronnen: Experience Platform staat gegevens toe om van diverse bronnen worden opgenomen terwijl het voorzien van u van de capaciteit om, inkomende gegevens te structureren te etiketteren en te verbeteren gebruikend Experience Platform diensten.
- Sandboxes: Experience Platform verstrekt virtuele zandbakken die één enkele Experience Platform instantie in afzonderlijke virtuele milieu's verdelen helpen digitale ervaringstoepassingen ontwikkelen en ontwikkelen.
Experience Platform API's gebruiken
Voor informatie over hoe te om vraag aan Experience Platform APIs met succes te maken, zie de gids op begonnen wordt met Experience Platform APIs.
Verbind Amazon S3 met Experience Platform op Azure
Lees de onderstaande stappen voor informatie over hoe u uw Amazon S3 -bron kunt verbinden met Experience Platform on Azure.
Vereiste referenties verzamelen
Flow Service kan alleen verbinding maken met uw Amazon S3 -opslag als u waarden opgeeft voor de volgende verbindingseigenschappen:
Credentials | Beschrijving |
---|---|
s3AccessKey | De toegangs belangrijkste identiteitskaart voor uw Amazon S3 emmer. |
s3SecretKey | De geheime sleutel-id voor uw Amazon S3 emmertje. |
serviceUrl | (Optioneel) Het aangepaste Amazon S3 -eindpunt waarmee verbinding moet worden gemaakt. Dit veld is vereist wanneer uw Amazon S3 emmertje regiospecifiek is. De notatie voor serviceUrl is: https://s3.{REGION}.amazonaws.com/) . |
bucketName | Het emmertje Amazon S3 bevat uw gegevens en de bijbehorende beschrijvende metagegevens. De naam van de Amazon S3 emmer moet tussen de drie en 63 tekens lang zijn en moet beginnen en eindigen met een letter of een getal. De naam van de emmertje kan slechts kleine letters, aantallen, of koppeltekens (- ) hebben, en kan niet als IP adres worden geformatteerd. |
folderPath | Het pad naar de map in de Amazon S3 emmer waarin uw gegevens zijn opgeslagen. Deze referentie is vereist wanneer de gebruiker toegang heeft beperkt. |
s3SessionToken | (Optioneel) Een tijdelijke token voor de korte termijn waarmee u gebruikers in niet-vertrouwde omgevingen tijdelijk toegang kunt geven tot uw Amazon S3 -bronnen. Zie het Amazon S3 overzichtvoor meer informatie. |
connectionSpec.id | De verbindingsspecificatie keert de schakelaareigenschappen van een bron, met inbegrip van authentificatiespecificaties met betrekking tot het creëren van de basis en bronverbindingen terug. De verbindingsspecificatie-id voor Amazon S3 is: ecadc60c-7455-4d87-84dc-2a0e293d997b . |
Voor meer informatie bij het worden begonnen, bezoek dit Amazon Web Services document.
Een basisverbinding maken voor Amazon S3 op Experience Platform in Azure
Een basisverbinding behoudt informatie tussen uw bron en Experience Platform, met inbegrip van de verificatiereferenties van uw bron, de huidige status van de verbinding, en uw unieke identiteitskaart van de basisverbinding. Met de ID van de basisverbinding kunt u bestanden verkennen en door bestanden navigeren vanuit uw bron en kunt u de specifieke items identificeren die u wilt opnemen, inclusief informatie over hun gegevenstypen en indelingen.
Als u een basis-verbindings-id wilt maken, vraagt u een POST-aanvraag naar het /connections
-eindpunt en geeft u de S3 -verificatiegegevens op als onderdeel van de aanvraagparameters.
API formaat
POST /connections
Verzoek
Met de volgende aanvraag wordt een basisverbinding voor Amazon S3 gemaakt:
Selecteren om aanvraagvoorbeeld weer te geven
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"
}
}'
Eigenschap | Beschrijving |
---|---|
auth.params.s3AccessKey | De toegangstoets die aan uw S3 emmertje is gekoppeld. |
auth.params.s3SecretKey | Uw geheime sleutel die aan uw S3 emmer is gekoppeld. |
auth.params.s3SessionToken | (Optioneel) De tijdelijke token S3 voor de korte termijn die wordt gebruikt om toegang te krijgen tot uw emmertje. |
connectionSpec.id | De S3 connection specification ID: ecadc60c-7455-4d87-84dc-2a0e293d997b |
Reactie
Een succesvolle reactie keert details van de pas gecreëerde verbinding, met inbegrip van zijn uniek herkenningsteken (id
) terug. Deze id is vereist om uw opslag te verkennen in de volgende zelfstudie.
Selecteren om reactievoorbeeld weer te geven
{
"id": "4cb0c374-d3bb-4557-b139-5712880adc55",
"etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}
Uw S3 sessietoken bijwerken
s3SessionToken
is tijdelijk en moet worden bijgewerkt wanneer het verloopt. U kunt het sessietoken dat aan uw basisverbinding is gekoppeld, bijwerken door een PATCH-aanvraag in te dienen bij de Flow Service API. Zie het S3 overzichtvoor meer informatie over tijdelijke veiligheidsgeloofsbrieven voor S3.
If-Match
is vereist wanneer een PATCH-aanvraag wordt ingediend. De waarde voor deze header is de unieke tag van de verbinding die u wilt bijwerken.API formaat
PATCH /connections
Verzoek
Met de volgende aanvraag wordt een basisverbinding voor Amazon S3 gemaakt:
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
en remove
.path
value
Reactie
Een geslaagde reactie retourneert uw basis-verbindings-id en een bijgewerkt label. U kunt de update verifiëren door een GET-aanvraag in te dienen bij de Flow Service API en tegelijkertijd uw verbinding-id op te geven.
{
"id": "4cb0c374-d3bb-4557-b139-5712880adc55",
"etag": "\"3600e378-0000-0200-0000-5f40212f0000\""
}
Verbinding maken Amazon S3 met Experience Platform op Amazon Web Services (AWS)
Lees de onderstaande stappen voor informatie over hoe u uw Amazon S3 -bron kunt verbinden met Experience Platform op AWS.
Vereisten
Als u uw Amazon S3 -account wilt verbinden met Experience Platform op AWS, moet u over het volgende beschikken:
- Een AWS-account met toegang tot de Amazon S3 emmertje of map die u wilt verbinden.
- De benodigde IAM-machtigingen die
s3:GetObject
- ens3:ListBucket
-handelingen toestaan.
Haal de rol IAM voor uw emmer toestemmingen terug
API formaat
GET /connectionSpecs/{CONNECTION_SPEC_ID}/configs?authType={AUTH_TYPE}
Verzoek
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}' \
Reactie
Een succesvolle reactie keert uw Rol IAM terug. Deze waarde is vereist in de volgende stap voor het instellen van machtigingen in uw Amazon S3 emmertje.
{
"configParams": {
"IAMRole": "{IAM_ROLE}"
}
}
Machtigingen instellen in uw Amazon S3 emmertje
- Login aan uw rekening in de Console van het Beheer van AWS.
- Navigeer naar het emmertje van Amazon S3 en selecteer vervolgens Permissions .
- Bewerk het emmerbeleid en voeg de volgende machtigingen toe:
IAM_ROLE_TO_ALLOW_LIST
is de IAM-rol die in de vorige stap via de API is opgehaald. U moet {YOUR_BUCKET_NAME} vervangen door de werkelijke naam van de Amazon S3 emmertje. Als u toegang wilt geven tot een specifieke map, moet u {YOUR_FOLDER_NAME} ook vervangen door de naam van de map waartoe u toegang wilt geven.{
"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}"
}
]
}
Een basisverbinding maken voor Amazon S3 op Experience Platform in AWS
API formaat
POST /connections
Verzoek
Met de volgende aanvraag wordt een basisverbinding voor Amazon S3 gemaakt:
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"
}
}'
auth.params.bucketName
Reactie
Een succesvolle reactie keert details van de pas gecreëerde verbinding, met inbegrip van zijn uniek herkenningsteken (id
) terug. Deze id is vereist om uw opslag te verkennen in de volgende zelfstudie.
{
"id": "4cb0c374-d3bb-4557-b139-5712880adc55",
"etag": "\"1700d77b-0000-0200-0000-5e3b41a10000\""
}
Volgende stappen
Door deze zelfstudie te volgen, hebt u een S3-verbinding gemaakt met behulp van API's en is een unieke id opgehaald als onderdeel van de hoofdtekst van de reactie. U kunt deze verbindingsidentiteitskaart gebruiken om wolkenopslag te onderzoeken gebruikend de Dienst API van de Stroom.