Crear y configurar una conexión de Google Drive

En esta página se describe cómo crear y configurar una conexión de Google Drive en Integration Connectors. Para obtener más información sobre el conector de Google Drive, consulta el artículo sobre el conector de Google Drive.

Antes de empezar

En tu proyecto de Google Cloud, haz lo siguiente:

  • Asegúrate de que la conectividad de red esté configurada. Para obtener información sobre los patrones de red, consulta Conectividad de red.
  • Concede el rol de gestión de identidades y accesos roles/connectors.admin al usuario que configure el conector.
  • Asigna los roles de gestión de identidades y accesos roles/secretmanager.viewer y roles/secretmanager.secretAccessor a la cuenta de servicio que quieras usar para el conector.
  • Habilita los siguientes servicios:
    • secretmanager.googleapis.com (API Secret Manager)
    • connectors.googleapis.com (API Connectors)

    Para saber cómo habilitar servicios, consulta Habilitar servicios. Si estos servicios o permisos no se han habilitado en tu proyecto anteriormente, se te pedirá que los habilites cuando configures el conector.

Crear una conexión de Google Drive

Para crear una conexión de Google Drive, sigue estos pasos:

  1. En la Google Cloud consola, vaya a la página Conectores de integración > Conexiones.

    Ir a Conexiones

  2. Haz clic en Crear conexión.

    Aparecerá la página Crear conexión.

  3. En la sección Ubicación:
    1. Haz clic en Región y, a continuación, selecciona una ubicación para tu conexión.

      Para ver la lista de todas las regiones admitidas, consulta Ubicaciones.

    2. Haz clic en Siguiente.
  4. En la sección Detalles de la conexión, proporciona los siguientes datos:
    1. Conector: selecciona Google Drive.
    2. Versión del conector: selecciona la versión del conector que quieras usar.

      La versión del conector que selecciones dependerá de la versión de la API de Google Drive que quieras usar. Para obtener más información, consulta Versiones de conexión de Google Drive.

    3. Nombre de la conexión: introduce un nombre para la conexión.
    4. Descripción: (opcional) escribe una descripción de la conexión.
    5. También puedes habilitar Registro en la nube y, a continuación, seleccionar un nivel de registro. De forma predeterminada, el nivel de registro es Error.
    6. Cuenta de servicio: selecciona la cuenta de servicio que quieras usar para la conexión. Asegúrate de que la cuenta de servicio tenga los roles y permisos de gestión de identidades y accesos necesarios.
    7. Admite todas las unidades: marca esta casilla para habilitar el acceso a las unidades compartidas. Esta opción solo está disponible para Google Drive v2.
    8. Ajustes del nodo de conexión: (opcional) configura los ajustes del nodo de conexión.
      • Número mínimo de nodos: introduce el número mínimo de nodos de conexión.
      • Número máximo de nodos: introduce el número máximo de nodos de conexión.

      Un nodo es una unidad (o réplica) de una conexión que procesa transacciones. Se necesitan más nodos para procesar más transacciones en una conexión y, a la inversa, se necesitan menos nodos para procesar menos transacciones. Para saber cómo afectan los nodos a los precios de los conectores, consulta la sección Precios de los nodos de conexión. Si no introduces ningún valor, de forma predeterminada, el número mínimo de nodos será 2 (para mejorar la disponibilidad) y el máximo será 50.

    9. Haz clic en Siguiente.
  5. En la sección Authentication (Autenticación), selecciona y configura el tipo de autenticación de la conexión:

    Cuenta de servicio

    Selecciona esta opción si tu aplicación se ejecuta en una máquina virtual de Google Cloud y debe usar la cuenta de servicio adjunta de la VM para la autenticación.

    Para usar este tipo de autenticación, debes tener una cuenta de servicio con los roles y permisos de gestión de identidades y accesos necesarios para la autenticación.

    Para obtener información sobre cómo crear una cuenta de servicio, consulta el artículo Crear y gestionar cuentas de servicio. Para obtener información sobre cómo asignar roles a una cuenta de servicio, consulta el artículo Conceder, cambiar y revocar el acceso a los recursos.

    Detalles de conexión de ejemplo para el tipo de autenticación de cuenta de servicio

    Nombre del campo Detalles
    Ubicación us-central1
    Conector Google Drive
    Versión del conector 2
    Nombre de la conexión googledrive-ws-gcpaccount
    Habilitar Cloud Logging
    Cuenta de servicio 123456789012-compute@developer.gserviceaccount.com
    Número mínimo de nodos 2
    Número máximo de nodos 50
    Autenticación Autenticación con cuenta de servicio

    OAuth 2.0 - JWT Bearer

    Para configurar el tipo de autenticación de token de portador JWT de OAuth 2.0, haz lo siguiente:

    1. Crea una clave JSON de cuenta de servicio y descarga el archivo de clave JSON. Este archivo de clave se usa como certificado JWT para la conexión.
    2. Crea un secreto para almacenar el archivo de clave JSON o el certificado JWT.
    3. Proporciona los detalles del secreto al crear la conexión en Integration Connectors:
      • Certificado JWT: elige el secreto que contenga el certificado JWT.
      • Versión del secreto: selecciona la versión del secreto seleccionado.
      • Asunto de JWT: (opcional) introduce el asunto de JWT que quieras usar para la conexión. Se usa como campo sub en el token JWT.

    Detalles de conexión de ejemplo para el tipo de autenticación de OAuth 2.0 - JWT Bearer

    Nombre del campo Detalles
    Ubicación us-central1
    Conector Google Drive
    Versión del conector 2
    Nombre de la conexión googledrivejwt
    Habilitar Cloud Logging
    Cuenta de servicio 123456789012-compute@developer.gserviceaccount.com
    Número mínimo de nodos 2
    Número máximo de nodos 50
    Autenticación OAuth 2.0 - JWT Bearer
    Certificado JWT
    {
      "type": "service_account",
      "project_id": "sm****-****-******",
      "private_key_id": "0b***************************",
      "private_key": "-----BEGIN PRIVATE KEY-----\nO********************************************=\n-----END PRIVATE KEY-----\n",
      "client_email": "go**********************************8",
      "client_id": "10**********************",
      "auth_uri": "https:***********************",
      "token_uri": "https:************************",
      "auth_provider_x509_cert_url": "https:*********************",
      "client_x509_cert_url": "https:****************************************************",
      "universe_domain": "go********"
    }
    Versión de secreto 2

    Código de autorización de OAuth 2.0

    Usa este método si tu aplicación requiere que el usuario final interactúe a través de un inicio de sesión basado en navegador.

    Para configurar el tipo de autenticación de código de autorización de OAuth 2.0, haz lo siguiente:

    1. Crea credenciales de OAuth 2.0 para tu aplicación web. De esta forma, se crea un ID de cliente y el archivo JSON del secreto de cliente.
    2. Identifica los ámbitos de acceso que quieres conceder a tu aplicación.
    3. Crea un secreto para almacenar las credenciales de OAuth 2.0 (client_secret.json).
    4. Proporcione el ID de cliente, los ámbitos y los detalles del secreto al crear la conexión en Integration Connectors:
      • ID de cliente: introduce el ID de cliente creado para tu aplicación web.
      • Permisos: introduce una lista de los permisos que quieras separados por comas.
      • Secreto de cliente: elige el secreto que contenga las credenciales de OAuth 2.0.
      • Versión del secreto: selecciona la versión del secreto que hayas elegido.

    Detalles de conexión de ejemplo para el tipo de autenticación de código de autorización de OAuth 2.0

    Nombre del campo Detalles
    Ubicación europe‑west1
    Conector Google Drive
    Versión del conector 2
    Nombre de la conexión googledrive-wsconn-code
    Habilitar Cloud Logging
    Cuenta de servicio 123456789012-compute@developer.gserviceaccount.com
    Número mínimo de nodos 2
    Número máximo de nodos 50
    Autenticación OAuth 2.0: código de autorización
    ID de cliente CLIENT_ID
    Ámbitos https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/drive.appdata, https://www.googleapis.com/auth/drive.appfolder, https://www.googleapis.com/auth/drive.install, https://www.googleapis.com/auth/drive.metadata, https://www.googleapis.com/auth/drive.metadata.readonly, https://www.googleapis.com/auth/drive.activity, https://www.googleapis.com/auth/drive.activity.readonly, https://www.googleapis.com/auth/drive.apps.readonly, https://www.googleapis.com/auth/drive.scripts y https://www.googleapis.com/auth/drive.meet.readonly
    Secreto de cliente CLIENT_SECRET
    Versión de secreto 2
  6. Habilitar la anulación de la autenticación: (opcional) marca esta casilla para permitir que la conexión acepte una autenticación diferente de forma dinámica durante el tiempo de ejecución.
  7. Haz clic en Siguiente.
  8. En la sección Revisar, comprueba los detalles de la conexión y la autenticación. Siempre puedes hacer clic en cualquiera de las secciones anteriores para hacer los cambios que necesites.
  9. Haz clic en Crear.

    Integration Connectors empieza a crear la conexión con la configuración proporcionada. Este proceso tarda unos minutos en completarse. Una vez creada la conexión, se te redirigirá a la página Conexiones.

Usar la conexión de Google Drive en una integración

Una vez que hayas creado la conexión, estará disponible tanto en Apigee Integration como en Application Integration. Puedes usar la conexión en una integración a través de la tarea Conectores.

  • Para saber cómo crear y usar la tarea Conectores en la integración de Apigee, consulta Tarea Conectores.
  • Para saber cómo crear y usar la tarea Conectores en Application Integration, consulta Tarea Conectores.

Para ver la lista de entidades y operaciones admitidas, consulta Entidades y operaciones admitidas. Para obtener información sobre las acciones específicas de los conectores que se admiten, consulta Acciones admitidas.

Ejemplos de casos prácticos en Application Integration

En los siguientes ejemplos se muestra cómo usar la tarea Conectores de Application Integration para realizar operaciones con la conexión de Google Drive que hayas configurado.

Ejemplo: listar todos los archivos

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Files en la lista Entity.
  3. Selecciona la operación List y, a continuación, haz clic en Hecho.
  4. En la sección Entrada de tarea de la tarea Conectores, puede definir filterClause según los requisitos del cliente.
  5. El valor de filterClause siempre debe incluirse entre comillas simples (") con este formato.

    Puede usar filterClause para filtrar un conjunto de registros en función de cualquier columna.

Ejemplo: obtener los detalles de un archivo

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Files en la lista Entity.
  3. Selecciona la operación Get y, a continuación, haz clic en Hecho.
  4. Asigna el valor "1wsHFAusizqFe5O2" a entityId, que es la clave que se va a transferir. Para definir el entityId, en la sección Data Mapper (Asignador de datos) de Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor (Abrir editor de asignación de datos) y, a continuación, introduzca "1wsHFAusizqFe5O2" en el campo Input Value (Valor de entrada) y elija el entityId como variable local.
  5. El valor de entityId debe enviarse directamente, como "1wsHFAusizqFe5O2". En este caso, "1wsHFAusizqFe5O2" es el valor de clave principal único que se transfiere.

Ejemplo: eliminar un archivo

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Files en la lista Entity.
  3. Selecciona la operación Delete y, a continuación, haz clic en Hecho.
  4. Asigna a entityId el valor "1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L", que es la clave que se va a transferir. Para definir el entityId, en la sección Data Mapper (Asignador de datos) de Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor (Abrir editor de asignación de datos) y, a continuación, introduzca "1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L" en el campo Input Value (Valor de entrada) y elija el entityId como variable local.
  5. Si la entidad tiene dos claves empresariales o primarias compuestas, en lugar de especificar el entityId, también puede definir filterClause como id='1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L'.

Ejemplo: crear un archivo

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Files en la lista Entity.
  3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
  4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload como variable local.
  5.   { "FileData": " ",
      "Name": "creategcpshareddrivedocxfile.docx", 
      "MIMEType": "application/vnd.google-apps.document",
      "Encoding": "BASE64"}
    

    Si la integración se realiza correctamente, el parámetro de respuesta connectorOutputPayload de la tarea del conector tendrá un valor similar al siguiente:

    { "Id": "1C48uLda6lyeakx2hOUdwnib-qtFOAhlpR_Ja2AmPvTU"}
    

Ejemplo: Crear una unidad compartida

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Drives en la lista Entity.
  3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
  4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload como variable local.
  5.   {"Name": "SharedDrive7"}
    

    Si la integración se realiza correctamente, el parámetro de respuesta connectorOutputPayload de la tarea del conector tendrá un valor similar al siguiente:

      {"Id": "0AN6y5wEvVrmPUk9PVA"}
    

Ejemplo: Crear un permiso para un archivo, una carpeta o una unidad compartida

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Permissions en la lista Entity.
  3. Selecciona la operación Create y, a continuación, haz clic en Hecho.
  4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload como variable local.
  5.   {"ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L",
      "Role": "COMMENTER",
      "Type": "USER",
      "EmailAddress": "charlie@altostrat.com"}
    

    Si la integración se realiza correctamente, el parámetro de respuesta connectorOutputPayload de la tarea del conector tendrá un valor similar al siguiente:

      { "PermissionId": "10596783046483894074",
      "ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L"}
    

Ejemplo: actualizar los detalles de un archivo

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Files en la lista Entity.
  3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
  4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload/filterClause como variable local.
      {"Name": "New Updated file"}
    
  5. Define el entityId del archivo. Para definir el entityId, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload/filterClause como variable local.

    En lugar de especificar el entityId, también puedes definir filterClause como 1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm.

  6. Al ejecutar este ejemplo, se devuelve una respuesta similar a la siguiente en la variable de salida connectorOutputPayload de la tarea del conector:

    {"Id": "1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm">}

Ejemplo: Actualizar un permiso de un archivo, una carpeta o una unidad compartida

  1. En el cuadro de diálogo Configure connector task, haz clic en Entities.
  2. Selecciona Permissions en la lista Entity.
  3. Selecciona la operación Update y, a continuación, haz clic en Hecho.
  4. En la sección Data Mapper (Asignador de datos) de la tarea Data Mapping (Asignación de datos), haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload/filterClause como variable local.
  5. (PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA')
    { "Role": "READER"}
    
  6. Define el entityId del permiso. Para definir el entityId, haga clic en Open Data Mapping Editor y, a continuación, introduzca un valor similar al siguiente en el campo Input Value y elija entityId/connectorInputPayload/filterClause como variable local.

    En lugar de especificar el entityId, también puede definir filterClause como PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA'.

    Al ejecutar este ejemplo, se devuelve una respuesta similar a la siguiente en la variable de salida connectorOutputPayload de la tarea del conector:

      {"PermissionId": "10596783046483894074",
      "ResourceId": "0AKfRSSy6kZbfUk9PVA"}