Creación de un conector SFTP mediante la Flow Service API

NOTE

El conector SFTP está en versión beta. Las funciones y la documentación están sujetas a cambios. Consulte la descripción general de Fuentes para obtener más información sobre el uso de conectores con etiquetas beta.

Flow Service se utiliza para recopilar y centralizar datos de clientes de diversas fuentes dentro de Adobe Experience Platform. El servicio proporciona una interfaz de usuario y una API RESTful desde la que se pueden conectar todas las fuentes admitidas.

Este tutorial utiliza la Flow Service API para guiarle por los pasos para conectarse Experience Platform a un servidor SFTP (Protocolo seguro de transferencia de archivos).

Si prefiere utilizar la interfaz de usuario en Experience Platform, el tutorial de la interfaz de usuario proporciona instrucciones paso a paso para realizar acciones similares.

Primeros pasos

Esta guía requiere un conocimiento práctico de los siguientes componentes de Adobe Experience Platform:

  • Fuentes: Experience Platform permite la ingesta de datos desde varias fuentes, al tiempo que le permite estructurar, etiquetar y mejorar los datos entrantes mediante Platform servicios.
  • Simuladores: Experience Platform proporciona entornos limitados virtuales que dividen una sola Platform instancia en entornos virtuales independientes para ayudar a desarrollar y desarrollar aplicaciones de experiencia digital.

Las secciones siguientes proporcionan información adicional que deberá conocer para conectarse correctamente a un servidor SFTP mediante la Flow Service API.

Recopilar las credenciales necesarias

Para Flow Service conectarse a SFTP, debe proporcionar valores para las siguientes propiedades de conexión:

Credencial Descripción
host El nombre o la dirección IP asociados con el servidor SFTP.
username El nombre de usuario con acceso al servidor SFTP.
password La contraseña del servidor SFTP.
privateKeyContent Contenido de clave privada SSH codificada en Base64. Formato SSH de clave privada OpenSSH (RSA/DSA).
passPhrase La frase de contraseña o la contraseña para descifrar la clave privada si el archivo de clave o el contenido de la clave están protegidos por una frase de contraseña. Si PrivateKeyContent está protegido con contraseña, este parámetro debe usarse con la frase de contraseña de PrivateKeyContent como valor.

Leer llamadas de API de muestra

Este tutorial proporciona ejemplos de llamadas a API para mostrar cómo dar formato a las solicitudes. Estas incluyen rutas, encabezados requeridos y cargas de solicitud con el formato adecuado. También se proporciona el JSON de muestra devuelto en las respuestas de API. Para obtener información sobre las convenciones utilizadas en la documentación de las llamadas de API de muestra, consulte la sección sobre cómo leer llamadas de API de ejemplo en la guía de solución de problemas Experience Platform .

Recopilar valores para encabezados necesarios

Para realizar llamadas a Platform API, primero debe completar el tutorial deautenticación. Al completar el tutorial de autenticación se proporcionan los valores para cada uno de los encabezados necesarios en todas las llamadas Experience Platform de API, como se muestra a continuación:

  • Autorización: Portador {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}

Todos los recursos de Experience Platform, incluidos los que pertenecen al Flow Service, están aislados en entornos limitados virtuales específicos. Todas las solicitudes a Platform las API requieren un encabezado que especifique el nombre del entorno limitado en el que se realizará la operación:

  • x-sandbox-name: {SANDBOX_NAME}

Todas las solicitudes que contienen una carga útil (POST, PUT, PATCH) requieren un encabezado de tipo de medio adicional:

  • Content-Type: application/json

Crear una conexión

Una conexión especifica un origen y contiene sus credenciales para ese origen. Solo se requiere una conexión por cuenta de SFTP, ya que se puede utilizar para crear varios conectores de origen para introducir datos diferentes.

Creación de una conexión SFTP mediante autenticación básica

Para crear una conexión SFTP mediante autenticación básica, realice una solicitud de POST a la Flow Service API mientras proporciona valores para los valores host, userNamey passwordde la conexión.

Formato API

POST /connections

Solicitud

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"
        }
    }'
Propiedad Descripción
auth.params.host El nombre de host del servidor SFTP.
auth.params.username El nombre de usuario asociado al servidor SFTP.
auth.params.password La contraseña asociada al servidor SFTP.
connectionSpec.id ID de especificación de conexión del servidor SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc

Respuesta

Una respuesta correcta devuelve el identificador único (id) de la conexión recién creada. Este ID es necesario para explorar el servidor SFTP en el siguiente tutorial.

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

Creación de una conexión SFTP mediante autenticación de clave pública SSH

Para crear una conexión SFTP mediante la autenticación de clave pública SSH, realice una solicitud de POST a la Flow Service API mientras proporciona valores para la conexión host, userName, privateKeyContenty passPhrase.

Formato API

POST /connections

Solicitud

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"
        }
    }'
Propiedad Descripción
auth.params.host El nombre de host del servidor SFTP.
auth.params.username El nombre de usuario asociado al servidor SFTP.
auth.params.privateKeyContent Contenido de clave privada SSH codificada en base64. Formato SSH de clave privada OpenSSH (RSA/DSA).
auth.params.passPhrase La frase de contraseña o la contraseña para descifrar la clave privada si el archivo de clave o el contenido de la clave están protegidos por una frase de contraseña. Si PrivateKeyContent está protegido con contraseña, este parámetro debe usarse con la frase de contraseña de PrivateKeyContent como valor.
connectionSpec.id ID de especificación de conexión del servidor SFTP: b7bf2577-4520-42c9-bae9-cad01560f7bc

Respuesta

Una respuesta correcta devuelve el identificador único (id) de la conexión recién creada. Este ID es necesario para explorar el servidor SFTP en el siguiente tutorial.

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

Pasos siguientes

Siguiendo este tutorial, ha creado una conexión SFTP mediante la Flow Service API y ha obtenido el valor de ID único de la conexión. Puede utilizar este ID de conexión para explorar almacenamientos en la nube mediante la API de servicio de flujo o ingesta de datos de parqué mediante la APIde servicio de flujo.

En esta página