Creare una connessione sorgente SFTP utilizzando l'API Flow Service

NOTA

Il connettore SFTP è in versione beta. Le funzioni e la documentazione sono soggette a modifiche. Per ulteriori informazioni sull'utilizzo dei connettori con etichetta beta, vedere Panoramica delle sorgenti.

Questa esercitazione utilizza l'API Flow Service per guidarti attraverso i passaggi necessari per connettere Experience Platform a un server SFTP (Secure File Transfer Protocol).

Introduzione

Questa guida richiede una buona conoscenza dei seguenti componenti di Adobe Experience Platform:

  • Origini: Experience Platform consente l'acquisizione di dati da varie fonti, fornendo al contempo la possibilità di strutturare, etichettare e migliorare i dati in arrivo tramite i servizi Piattaforma.
  • Sandbox: Experience Platform fornisce sandbox virtuali che dividono una singola istanza della piattaforma in ambienti virtuali separati per sviluppare e sviluppare applicazioni per esperienze digitali.
IMPORTANTE

Si consiglia di evitare la presenza di newline o ritorni a capo durante l'assimilazione di oggetti JSON con una connessione sorgente SFTP. Per aggirare il limite, utilizzate un singolo oggetto JSON per riga e più righe per i file successivi.

Le sezioni seguenti forniscono informazioni aggiuntive che sarà necessario conoscere per collegarsi correttamente a un server SFTP utilizzando l'API Flow Service.

Raccogli credenziali richieste

Affinché Flow Service possa connettersi a SFTP, è necessario fornire valori per le seguenti proprietà di connessione:

Credenziali Descrizione
host Nome o indirizzo IP associato al server SFTP.
username Il nome utente con accesso al server SFTP.
password La password per il server SFTP.
privateKeyContent Il contenuto della chiave privata SSH con codifica Base64. Formato della chiave privata SSH OpenSSH (RSA/DSA).
passPhrase La frase di autorizzazione o la password per decifrare la chiave privata se il file chiave o il contenuto chiave sono protetti da una frase di autorizzazione. Se PrivateKeyContent è protetto da password, questo parametro deve essere utilizzato con la passphrase PrivateKeyContent come valore.

Lettura di chiamate API di esempio

Questa esercitazione fornisce esempi di chiamate API per dimostrare come formattare le richieste. Questi includono percorsi, intestazioni richieste e payload di richieste formattati correttamente. Viene inoltre fornito un JSON di esempio restituito nelle risposte API. Per informazioni sulle convenzioni utilizzate nella documentazione per le chiamate API di esempio, consultate la sezione relativa a come leggere chiamate API di esempio nella guida alla risoluzione dei problemi del Experience Platform .

Raccogli valori per le intestazioni richieste

Per effettuare chiamate alle API della piattaforma, è innanzitutto necessario completare l'esercitazione sull'autenticazione a1/>. Completando l'esercitazione sull'autenticazione, vengono forniti i valori per ciascuna delle intestazioni richieste in tutte chiamate API di Experience Platform, come illustrato di seguito:

  • Authorization: Bearer {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}

Tutte le risorse in Experience Platform, incluse quelle appartenenti a Flow Service, sono isolate in sandbox virtuali specifiche. Tutte le richieste alle Platform API richiedono un'intestazione che specifica il nome della sandbox in cui verrà eseguita l'operazione:

  • x-sandbox-name: {SANDBOX_NAME}

Tutte le richieste che contengono un payload (POST, PUT, PATCH) richiedono un'intestazione aggiuntiva per il tipo di supporto:

  • Content-Type: application/json

Creare una connessione

Una connessione specifica un'origine e contiene le credenziali per tale origine. È necessaria una sola connessione, in quanto può essere utilizzata per creare più flussi di dati per inserire dati diversi.

Creazione di una connessione SFTP tramite autenticazione di base

Per creare una connessione SFTP utilizzando l'autenticazione di base, effettuare una richiesta POST all'API Flow Service fornendo al contempo i valori per le connessioni host, userName e password.

Formato API

POST /connections

Richiesta

Per creare una connessione SFTP, è necessario fornire l'ID univoco della specifica di connessione come parte della richiesta POST. L'ID della specifica di connessione per SFTP è b7bf2577-4520-42c9-bae9-cad01560f7bc.

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: {IMS_ORG}' \
    -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}",
                "userName": "{USERNAME}",
                "password": "{PASSWORD}"
            }
        },
        "connectionSpec": {
            "id": "b7bf2577-4520-42c9-bae9-cad01560f7bc",
            "version": "1.0"
        }
    }'
Proprietà Descrizione
auth.params.host Il nome host del server SFTP.
auth.params.username Nome utente associato al server SFTP.
auth.params.password La password associata al server SFTP.
connectionSpec.id ID specifica connessione server SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc

Risposta

Una risposta corretta restituisce l'identificatore univoco (id) della connessione appena creata. Questo ID è necessario per esplorare il server SFTP nell'esercitazione successiva.

{
    "id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
    "etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}

Creare una connessione SFTP utilizzando l'autenticazione a chiave pubblica SSH

Per creare una connessione SFTP utilizzando l'autenticazione a chiave pubblica SSH, effettuare una richiesta POST all'API Flow Service fornendo al contempo i valori per le connessioni host, userName, privateKeyContent e passPhrase.

Formato API

POST /connections

Richiesta

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: {IMS_ORG}' \
    -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}",
                "userName": "{USERNAME}",
                "privateKeyContent": "{PRIVATE_KEY_CONTENT}",
                "passPhrase": "{PASSPHRASE}"
            }
        },
        "connectionSpec": {
            "id": "b7bf2577-4520-42c9-bae9-cad01560f7bc",
            "version": "1.0"
        }
    }'
Proprietà Descrizione
auth.params.host Il nome host del server SFTP.
auth.params.username Nome utente associato al server SFTP.
auth.params.privateKeyContent Il contenuto della chiave privata SSH con codifica base64. Formato della chiave privata SSH OpenSSH (RSA/DSA).
auth.params.passPhrase La frase di autorizzazione o la password per decifrare la chiave privata se il file chiave o il contenuto chiave sono protetti da una frase di autorizzazione. Se PrivateKeyContent è protetto da password, questo parametro deve essere utilizzato con la passphrase PrivateKeyContent come valore.
connectionSpec.id ID specifica connessione server SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc

Risposta

Una risposta corretta restituisce l'identificatore univoco (id) della connessione appena creata. Questo ID è necessario per esplorare il server SFTP nell'esercitazione successiva.

{
    "id": "bf367b0d-3d9b-4060-b67b-0d3d9bd06094",
    "etag": "\"1700cc7b-0000-0200-0000-5e3b3fba0000\""
}

Passaggi successivi

Seguendo questa esercitazione, hai creato una connessione SFTP utilizzando l'API Flow Service e hai ottenuto il valore ID univoco della connessione. Puoi utilizzare questo ID connessione per esplorare gli archivi cloud utilizzando l'API del servizio di flusso o i dati del parquet di acquisizione tramite l'API del servizio di flusso.

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free