Creare una connessione base SFTP utilizzando l'API Flow Service
Last update: Tue Sep 24 2024 00:00:00 GMT+0000 (Coordinated Universal Time)
Una connessione di base rappresenta la connessione autenticata tra un'origine e Adobe Experience Platform.
Questo tutorial illustra i passaggi necessari per creare una connessione di base per SFTP (Secure File Transfer Protocol) utilizzando Flow Service API.
Introduzione
Questa guida richiede una buona conoscenza dei seguenti componenti di Adobe Experience Platform:
- Origini: Experience Platform consente di acquisire dati da varie origini e allo stesso tempo di strutturare, etichettare e migliorare i dati in arrivo tramite i servizi di Platform.
- Sandbox: Experience Platform fornisce sandbox virtuali che suddividono una singola istanza Platform in ambienti virtuali separati, utili per le attività di sviluppo e aggiornamento delle applicazioni di esperienza digitale.
Si consiglia di evitare il ritorno a capo o a nuove righe durante l'acquisizione di oggetti JSON con una connessione di origine SFTP. Per aggirare il limite, utilizza un singolo oggetto JSON per riga e utilizza più righe per i file successivi.
Le sezioni seguenti forniscono informazioni aggiuntive che è necessario conoscere per connettersi correttamente a un server SFTP utilizzando l'API Flow Service.
Raccogli le credenziali richieste
Leggi la SFTP guida all'autenticazione per i passaggi dettagliati su come recuperare le credenziali di autenticazione.
Per informazioni su come effettuare correttamente chiamate alle API di Platform, consulta la guida in guida introduttiva alle API di Platform.
Creare una connessione di base
Una volta creata, non è possibile modificare il tipo di autenticazione di una connessione di base SFTP. Per modificare il tipo di autenticazione, è necessario creare una nuova connessione di base.
Una connessione di base mantiene le informazioni tra l’origine e Platform, incluse le credenziali di autenticazione dell’origine, lo stato corrente della connessione e l’ID univoco della connessione di base. L’ID della connessione di base consente di esplorare e navigare tra i file dall’interno dell’origine e identificare gli elementi specifici che desideri acquisire, comprese le informazioni relative ai tipi di dati e ai formati.
L'origine SFTP supporta sia l'autenticazione di base che l'autenticazione tramite la chiave pubblica SSH. Durante questo passaggio, puoi anche designare il percorso della sottocartella a cui desideri fornire l’accesso.
Per creare un ID di connessione di base, effettuare una richiesta POST all'endpoint /connections
fornendo le credenziali di autenticazione SFTP come parte dei parametri della richiesta.
Il connettore SFTP supporta una chiave OpenSSH di tipo RSA o DSA. Assicurarsi che il contenuto del file chiave inizi con "-----BEGIN [RSA/DSA] PRIVATE KEY-----"
e termini con "-----END [RSA/DSA] PRIVATE KEY-----"
. Se il file della chiave privata è in formato PPK, utilizzare lo strumento PuTTY per convertire il formato PPK in OpenSSH.
Formato API
Autenticazione di base
accordion |
Richiesta |
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 |
|
Proprietà |
Descrizione |
auth.params.host |
Il nome host del server SFTP. |
auth.params.port |
Porta del server SFTP. Il valore predefinito è 22. |
auth.params.username |
Il nome utente associato al server SFTP. |
auth.params.password |
La password associata al server SFTP. |
auth.params.maxConcurrentConnections |
Il numero massimo di connessioni simultanee specificate durante la connessione di Platform a SFTP. Se attivato, questo valore deve essere impostato su almeno 1. |
auth.params.folderPath |
Percorso della cartella a cui desideri fornire l’accesso. |
auth.params.disableChunking |
Valore booleano utilizzato per determinare se il server SFTP supporta o meno il chunking. |
connectionSpec.id |
ID della specifica di connessione al server SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc |
|
accordion |
Risposta |
In caso di esito positivo, la risposta restituisce l'identificatore univoco (id ) della connessione appena creata. Questo ID è necessario per esplorare il server SFTP nella prossima esercitazione.
code language-json |
{
"id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
"etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}
|
|
Autenticazione chiave pubblica SSH
accordion |
Richiesta |
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 |
|
Proprietà |
Descrizione |
auth.params.host |
Il nome host del server SFTP. |
auth.params.port |
Porta del server SFTP. Il valore predefinito è 22. |
auth.params.username |
Il nome utente associato al server SFTP. |
auth.params.privateKeyContent |
Il contenuto della chiave privata SSH con codifica Base64. Il tipo di chiave OpenSSH deve essere classificato come RSA o DSA. |
auth.params.passPhrase |
La passphrase o password per decrittografare la chiave privata se il file di chiave o il contenuto della chiave è protetto da una passphrase. Se PrivateKeyContent è protetto da password, questo parametro deve essere utilizzato con la passphrase di PrivateKeyContent come valore. |
auth.params.maxConcurrentConnections |
Il numero massimo di connessioni simultanee specificate durante la connessione di Platform a SFTP. Se attivato, questo valore deve essere impostato su almeno 1. |
auth.params.folderPath |
Percorso della cartella a cui desideri fornire l’accesso. |
auth.params.disableChunking |
Valore booleano utilizzato per determinare se il server SFTP supporta o meno il chunking. |
connectionSpec.id |
ID della specifica di connessione al server SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc |
|
accordion |
Risposta |
In caso di esito positivo, la risposta restituisce l'identificatore univoco (id ) della connessione appena creata. Questo ID è necessario per esplorare il server SFTP nella prossima esercitazione.
code language-json |
{
"id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
"etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}
|
|