Cómo configurar un centro de acciones local para acciones que usan OAuth y transmisión

Si una instancia de Looker alojada por el cliente no puede comunicarse con el centro de acciones alojado por Looker, es posible que los administradores de Looker no puedan habilitar acciones que admitan resultados transmitidos o que usen OAuth. Además, es posible que los usuarios de Looker experimenten consultas que se detienen cuando envían o programan datos para acciones que admiten resultados transmitidos y que no puedan configurar acciones de OAuth.

Para usar las integraciones de Looker, el Centro de acciones de Looker y la instancia de Looker deben poder comunicarse entre sí. Los administradores de instancias alojadas por el cliente que deseen leer sobre soluciones adecuadas para la arquitectura de su instancia pueden consultar las recomendaciones que se describen en la sección Consideraciones para las instancias alojadas por el cliente de la página de documentación Cómo compartir datos a través de un centro de acción.

Si la instancia usa un certificado SSL emitido por una autoridad certificadora (AC) que no se encuentra en esta lista de certificados raíz, es posible que las acciones de OAuth y transmisión no se puedan usar en una instancia de Looker alojada por el cliente.

Para ver las acciones configuradas para admitir resultados transmitidos o OAuth, consulta la lista de servicios integrados de Looker en la página de documentación Configuración del administrador: Acciones.

En esta página, se describe cómo iniciar un servidor local del centro de acciones para usar las acciones de Looker que admiten resultados transmitidos o que usan OAuth de Google. Para configurar tu propio servidor local de Action Hub, crea un contenedor o una máquina virtual (VM) que aloje una copia clonada del código del repo de Looker Action Hub y, luego, sigue estos pasos, como se describe con más detalle en las siguientes secciones:

  1. Crea un contenedor o una configuración de máquina virtual (VM) para el servidor del centro de acciones.
  2. Configura las credenciales de OAuth de Google.
  3. Configura la pantalla de consentimiento de Google OAuth.
  4. Configura tus variables de entorno.
  5. Genera una clave de API.
  6. Inicia el nuevo centro de acción.
  7. Agrega el nuevo centro de acciones a tu instancia de Looker.

Cómo crear una configuración de contenedor o máquina virtual (VM) para el servidor del centro de acciones

Tu VM o contenedor debe cumplir con los siguientes requisitos y dependencias de asignación y red:

Looker recomienda asignar 2 subprocesos de CPU/CPU virtual y, al menos, 2 GB de memoria para este contenedor o VM. Si esperas un uso intensivo de tus acciones, considera aumentar la memoria más allá de los 2 GB.

Requisitos de red

Tu centro de acciones debe tener una dirección IP estática o una dirección que se pueda resolver a través de un sistema de nombres de dominio (DNS) interno.

Tu red debe admitir los siguientes requisitos de comunicación:

  • La instancia de Looker debe poder comunicarse con el centro de acciones.
  • La autenticación de Google debe poder comunicarse con el centro de acciones.
  • Un navegador conectado internamente debe poder acceder al centro de acciones.
  • El centro de acción debe poder comunicarse con los servidores de Google Drive.

Dependencias necesarias

Cuando clones el repo de acciones de Looker en tu VM o contenedor recién creado, haz lo siguiente:

  • Asegúrate de que Node 12.13 esté instalado.
  • Ejecuta yarn install para instalar los paquetes necesarios.

Una vez que hayas configurado tu entorno, deberás crear credenciales de OAuth de Google para el servidor de tu centro de acción en la consola de la API de Google Cloud.

Configura las credenciales de OAuth de Google

Para configurar las credenciales de OAuth de Google para tus acciones, deberás hacer lo siguiente:

Cómo crear las credenciales de OAuth de Google

Para crear tu ID de cliente y secreto del cliente de Google OAuth, haz lo siguiente:

  1. Ve a la página Administrar recursos de Google Cloud y haz clic en CREAR PROYECTO para crear un proyecto nuevo.

    Para obtener más información sobre cómo crear un proyecto, consulta la guía Crea y administra proyectos.

  2. Una vez que se cree tu proyecto nuevo, selecciónalo.
  3. En la barra lateral izquierda de la consola, navega a la página APIs y servicios > Credenciales.
  4. Haz clic en Crear credenciales.
  5. En el menú desplegable, haz clic en ID de cliente de OAuth.
  6. Es posible que debas configurar una pantalla de consentimiento de OAuth. Si es así, sigue las instrucciones de la sección Configura la pantalla de consentimiento de OAuth que se encuentra más adelante en esta página y, luego, continúa con el paso 7.
  7. En Tipo de aplicación, selecciona Aplicación web.
  8. Proporciona el nombre de tu aplicación en el campo Nombre.
  9. En la sección Orígenes autorizados de JavaScript, agrega la dirección raíz de la aplicación de Looker que usas de forma interna.
  10. Configura los URIs de redireccionamiento autorizados para las consolas de Google Drive y Hojas de cálculo de Google, en las que ACTION_HUB_BASE_URL es la dirección de tu centro de acción:
                https://<ACTION_HUB_BASE_URL>/actions/google_sheets/oauth_redirect
                https://<ACTION_HUB_BASE_URL>/actions/google_drive/oauth_redirect
            
  11. Haz clic en el botón Crear para generar tu ID de cliente de OAuth y el secreto del cliente de OAuth. Necesitarás ambos más adelante.

Esta página de la Consola de API de Google te permite configurar una pantalla de consentimiento para todas las aplicaciones de tu proyecto, lo que permite a los usuarios otorgar acceso a sus datos y les proporciona un vínculo a cualquier documentación legal o de privacidad. Si ya completaste este paso o no necesitas configurar una pantalla de consentimiento, omite esta sección y regresa a la ventana de la terminal para configurar tus variables de entorno, como se describe en Cómo configurar tus variables de entorno más adelante en esta página.

Para configurar la pantalla de consentimiento, haz lo siguiente:

  1. Haz clic en CONFIGURAR PANTALLA DE CONSENTIMIENTO.
  2. Selecciona si se trata de una aplicación interna o externa y haz clic en CREAR.
  3. Ingresa el nombre de tu aplicación en el campo Nombre de la app.
  4. En Correo electrónico de asistencia del usuario, ingresa una dirección de correo electrónico para que se muestre en la pantalla de consentimiento de OAuth para asistencia del usuario.
  5. De manera opcional, para el logotipo de la app, sube un archivo de imagen para usar en la pantalla de consentimiento de OAuth.
  6. De manera opcional, ingresa el vínculo a la página principal de la aplicación, que debe estar alojado en el mismo dominio raíz que tu centro de acciones.
  7. De manera opcional, ingresa un vínculo a la política de privacidad de tu aplicación en el campo Vínculo a la política de privacidad de la aplicación. El vínculo debe estar alojado en el mismo dominio raíz que tu centro de acción.
  8. De manera opcional, ingresa un vínculo a las Condiciones del Servicio de tu aplicación en el campo Vínculo a las Condiciones del Servicio de la aplicación. El vínculo debe estar alojado en el mismo dominio raíz que tu centro de acción.
  9. En la sección Dominios autorizados, haz clic en AGREGAR DOMINIO y, luego, ingresa el dominio raíz que usa tu centro de acción.
  10. En el campo Información de contacto del desarrollador, ingresa un correo electrónico con el que Google pueda comunicarse contigo.
  11. Haz clic en GUARDAR Y CONTINUAR.
  12. En la sección Permisos, agrega los tipos de datos del usuario a los que debe acceder tu aplicación. Esto incluye el correo electrónico, el perfil, OpenID y https://mail.google.com. Dado que esta lista incluye información sensible del usuario, Google deberá verificar tu pantalla de consentimiento de OAuth antes de que se pueda publicar.
  13. Haz clic en GUARDAR Y CONTINUAR.
  14. De manera opcional, en la sección Usuarios de prueba, agrega a los usuarios que quieras que tengan acceso al centro de acciones antes de la verificación.
  15. Haz clic en GUARDAR Y CONTINUAR.
  16. Haz clic en VOLVER AL PANEL.
  17. En la barra lateral de la izquierda, haz clic en Credenciales para volver a configurar tus credenciales de OAuth.

Una vez que hayas configurado tu pantalla de consentimiento de OAuth, si estabas en el proceso de configurar credenciales de OAuth de Google, vuelve al paso 7 de ese procedimiento y termina de configurar las credenciales. De lo contrario, puedes volver a la ventana de la terminal para establecer tus variables de entorno.

Cómo configurar tus variables de entorno

En tu entorno de VM o contenedor, configura estas variables de entorno:

    ACTION_HUB_LABEL=<your action hub label name>
        ACTION_HUB_SECRET=<some secret>
        ACTION_HUB_BASE_URL=<your action hub base address>
            # For example https://actions.company.com
            # DO NOT INCLUDE A TRAILING SLASH
        GOOGLE_SHEET_CLIENT_ID=<OAuth client ID>
        GOOGLE_SHEET_CLIENT_SECRET=<OAuth client secret>
        GOOGLE_DRIVE_CLIENT_ID=<OAuth client ID>
        GOOGLE_DRIVE_CLIENT_SECRET=<OAuth client secret>

Deberías poder usar el mismo OAuth client ID y OAuth client secret para Google Drive y Google Sheets. Sin embargo, es mejor tener configurados ambos conjuntos de tokens de la API de Google.

También debes establecer la clave de encriptación:

    CIPHER_MASTER="<hex aes-256 key>"

Esta clave no se usa para la encriptación a largo plazo, sino solo para encriptar state durante un flujo de OAuth. A continuación, se muestra un ejemplo de una clave aes-256 hexadecimal:

    C4EFBBE2C364248419776459A00F2F4017CE77E29D9E8F64940687EA440A0CC9

Cómo generar una clave de API

Para obtener tu clave de API, ejecuta este comando:

y arn generate-api-key

Conserva la clave generada para usarla más adelante en la configuración. Esta clave se genera en función de ACTION_HUB_SECRET.

Cómo iniciar tu servidor local del centro de acciones

Para iniciar tu centro de acciones, ejecuta este comando:

yarn start

Cómo agregar tu Centro de acciones a tu instancia de Looker

Para agregar tu centro de acciones a tu instancia de Looker, haz lo siguiente:

  1. En Looker, navega a la página Actions en Platform en el panel Admin.
  2. Desplázate hasta la parte inferior de la página y haz clic en el botón Agregar Action Hub.
  3. Ingresa tu ACTION_HUB_BASE_URL y haz clic en Agregar Action Hub. El centro de acción debería aparecer debajo de un encabezado nuevo con su nombre y ACTION_HUB_BASE_URL. Tus acciones de Google Drive y Hojas de cálculo de Google deberían aparecer bajo este encabezado.
  4. Si la conexión falla, ingresa el api-key que generaste antes en el campo Token de autorización y haz clic en el vínculo Actualizar en la parte superior del encabezado del centro de acciones.
  5. Habilita tus acciones de Google Drive y Hojas de cálculo de Google, y verifica que estén configuradas correctamente en el centro de acciones.

Próximo paso

El siguiente paso es publicar la aplicación que creaste en la Consola de API de Google. Para publicar, ve a la página Pantalla de consentimiento de OAuth y haz clic en el botón Enviar para verificación. Ten en cuenta que el proceso de publicación de la aplicación puede tardar un tiempo y requerirá algunos pasos de verificación con Google.