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 en Looker, es posible que los administradores de Looker no puedan habilitar acciones que admitan los resultados transmitidos o que usen OAuth. Además, es posible que los usuarios de Looker experimenten consultas colgadas cuando envían o programan datos a acciones que admiten resultados transmitidos y es posible 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 estén interesados en leer sobre las soluciones adecuadas para la arquitectura de su instancia pueden consultar las recomendaciones que se describen en la sección Consideraciones para instancias alojadas por el cliente de la página de documentación Cómo compartir datos a través de un centro de acciones.

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

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

En esta página, se describe cómo iniciar un servidor del concentrador de acciones locales para usar acciones de Looker que admiten resultados transmitidos o que usan OAuth de Google. Para configurar tu propio servidor de concentrador de acciones local, crea un contenedor o una máquina virtual (VM) que aloje una copia clonada del código del repositorio 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 OAuth de Google.
  4. Configura las variables de entorno.
  5. Genera una clave de API.
  6. Inicia el nuevo centro de acciones.
  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 de Action Hub

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

Looker recomienda asignar 2 subprocesos de CPU o CPU virtual y, al menos, 2 GB de memoria para este contenedor o VM. Si esperas que se usen mucho tus acciones, considera aumentar la memoria a más de 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.
  • Google Auth debe poder comunicarse con el centro de acciones.
  • Un navegador conectado internamente debe poder acceder al centro de acciones.
  • El centro de acciones debe poder conectarse a los servidores de Google Drive.

Dependencias necesarias

Cuando clones el repositorio de acciones de Looker en la VM o el contenedor recién creados, sigue estos pasos:

  • 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 tu servidor de centro de acciones en la Consola de la API de Google Cloud.

Configura las credenciales de OAuth de Google

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

Crea las credenciales de OAuth de Google

Para crear tu ID y secreto de cliente de OAuth de Google, sigue estos pasos:

  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 Cómo crear y administrar proyectos.

  2. Una vez que crees el 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 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 URI de redireccionamiento autorizados para las consolas de Google Drive y Hojas de cálculo de Google, donde ACTION_HUB_BASE_URL es la dirección de tu centro de acciones:
                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 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 las variables de entorno, como se describe en Cómo configurar las 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 mostrar en la pantalla de consentimiento de OAuth para la asistencia al usuario.
  5. De manera opcional, para el logotipo de la app, sube un archivo de imagen para usarlo en la pantalla de consentimiento de OAuth.
  6. De manera opcional, ingresa el vínculo de la página principal de la aplicación, que debería 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 acciones.
  8. De forma 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 acciones.
  9. En la sección Dominios autorizados, haz clic en AGREGAR DOMINIO y, luego, ingresa el dominio raíz que usa tu centro de acciones.
  10. En el campo Información de contacto del desarrollador, ingresa un correo electrónico al que Google pueda comunicarse contigo.
  11. Haz clic en GUARDAR Y CONTINUAR.
  12. En la sección Alcances, 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 de los usuarios, Google deberá verificar tu pantalla de consentimiento de OAuth para poder publicarla.
  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 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 las credenciales de Google OAuth, regresa al paso 7 de ese procedimiento y termina de configurar las credenciales. De lo contrario, puedes regresar a la ventana de la terminal para configurar las 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 los mismos OAuth client ID y OAuth client secret para Google Drive y Hojas de cálculo de Google. Sin embargo, es mejor configurar ambos conjuntos de tokens de la API de Google.

También establece la clave de encriptación:

    CIPHER_MASTER="<hex aes-256 key>"

Esta clave no se usa para la encriptación a largo plazo. Solo se usa para encriptar state durante un flujo de OAuth. El siguiente es un ejemplo de una clave hexadecimal AES-256:

    C4EFBBE2C364248419776459A00F2F4017CE77E29D9E8F64940687EA440A0CC9

Genera una clave de API

Para obtener tu clave de API, ejecuta el siguiente 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 el servidor del Centro de acciones locales

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, sigue estos pasos:

  1. En Looker, navega a la página Acciones en Plataforma en el panel Administrador.
  2. Desplázate hasta el final de la página y haz clic en el botón Agregar centro de acciones.
  3. Ingresa tu ACTION_HUB_BASE_URL y haz clic en Agregar centro de acciones. El centro de acciones debería aparecer debajo de un nuevo encabezado con su nombre y ACTION_HUB_BASE_URL. Tus acciones de Google Drive y Hojas de cálculo de Google deberían aparecer debajo de este encabezado.
  4. Si la conexión falla, ingresa el api-key que generaste antes en el campo Authorization Token y haz clic en el vínculo Refresh en la parte superior del encabezado del centro de acciones.
  5. Habilita las 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 solicitud puede demorar un tiempo y requerirá algunos pasos de verificación con Google.