Creare una connessione di base SFTP utilizzando l'API Flow Service

Una connessione di base rappresenta la connessione autenticata tra un'origine e Adobe Experience Platform.

Questa esercitazione descrive i passaggi necessari per creare una connessione di base per SFTP (Secure File Transfer Protocol) utilizzando l' Flow Service API.

Introduzione

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

  • Origini: L’Experience Platform consente di acquisire dati da varie sorgenti e allo stesso tempo di strutturare, etichettare e migliorare i dati in arrivo tramite i servizi Platform.
  • Sandbox: Experience Platform fornisce sandbox virtuali che suddividono una singola istanza di Platform in ambienti virtuali separati per sviluppare e sviluppare applicazioni di esperienza digitale.
IMPORTANTE

Si consiglia di evitare l’esecuzione di nuove righe o ritorni a capo durante l’acquisizione di oggetti JSON con una connessione sorgente 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 sarà necessario conoscere per connettersi correttamente a un server SFTP utilizzando l'API Flow Service.

Raccogli credenziali richieste

Affinché Flow Service possa connettersi a SFTP, è necessario fornire i 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 Password per il server SFTP.
privateKeyContent Contenuto della chiave privata SSH codificata Base64. Il tipo di chiave OpenSSH deve essere classificato come RSA o DSA.
passPhrase La frase o password per decrittografare la chiave privata se il file di chiave o il contenuto della chiave sono protetti da una frase di passaggio. Se privateKeyContent è protetto da password, è necessario utilizzare questo parametro con la passphrase del contenuto della chiave privata come valore.
connectionSpec.id La specifica di connessione restituisce le proprietà del connettore di un'origine, incluse le specifiche di autenticazione relative alla creazione delle connessioni di base e di origine. L'ID della specifica di connessione per SFTP è: b7bf2577-4520-42c9-bae9-cad01560f7bc.

Utilizzo delle API di Platform

Per informazioni su come effettuare correttamente le chiamate alle API di Platform, consulta la guida guida introduttiva alle API di Platform .

Creare una connessione di base

Una connessione di base conserva le informazioni tra l'origine e la piattaforma, incluse le credenziali di autenticazione dell'origine, lo stato corrente della connessione e l'ID di connessione di base univoco. L’ID di connessione di base consente di esplorare e navigare tra i file di origine e di identificare gli elementi specifici da acquisire, comprese le informazioni relative ai tipi di dati e ai formati corrispondenti.

Per creare un ID di connessione di base, invia una richiesta POST all'endpoint /connections fornendo le credenziali di autenticazione SFTP come parte dei parametri della richiesta.

Creare una connessione SFTP utilizzando l'autenticazione di base

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

Formato API

POST /connections

Richiesta

La seguente richiesta crea una connessione di base per SFTP utilizzando l'autenticazione di base:

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 Password associata al server SFTP.
connectionSpec.id ID delle specifiche di connessione del server SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc

Risposta

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

{
    "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 di base SFTP utilizzando l’autenticazione a chiave pubblica SSH, invia una richiesta POST all’API Flow Service fornendo al contempo i valori per le connessioni host, userName, privateKeyContent e passPhrase.

IMPORTANTE

Il connettore SFTP supporta una chiave OpenSSH di tipo RSA o DSA. Assicurati 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 è un file in formato PPK, utilizza lo strumento PuTTY per convertire da PPK a formato OpenSSH.

Formato API

POST /connections

Richiesta

La seguente richiesta crea una connessione di base per SFTP utilizzando l’autenticazione a chiave pubblica SSH:

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 Il nome utente associato al server SFTP.
auth.params.privateKeyContent Contenuto della chiave privata SSH codificata Base64. Il tipo di chiave OpenSSH deve essere classificato come RSA o DSA.
auth.params.passPhrase La frase o password per decrittografare la chiave privata se il file di chiave o il contenuto della chiave sono protetti da una frase di passaggio. Se PrivateKeyContent è protetto da password, questo parametro deve essere utilizzato con la passphrase PrivateKeyContent come valore.
connectionSpec.id ID delle specifiche di connessione del server SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc

Risposta

Una risposta corretta restituisce l'identificatore univoco (id) della nuova connessione 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 acquisire i dati del parquet utilizzando l'API del servizio di flusso.

In questa pagina