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 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 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 del administrador - Acciones.

En esta página, se describe cómo iniciar un servidor de Action Hub local para usar acciones de Looker que admitan resultados transmitidos o que usen OAuth de Google. Para configurar tu propio servidor de Action Hub 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 una configuración de contenedor o máquina virtual (VM) para el servidor de Action Hub.
  2. Configura las credenciales de OAuth de Google.
  3. Configura la pantalla de consentimiento de Google OAuth.
  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 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 de forma interna debe poder conectarse 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 que acabas de crear, haz lo siguiente:

  • Asegúrate de que esté instalado Node 12.13.
  • 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

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

Crea las credenciales de OAuth de Google

Para crear tu ID de cliente y secreto del 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 uno 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 que se indican en 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 URIs de redireccionamiento autorizados para las consolas de Google Drive y Hojas de cálculo de Google, en los que 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 el 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 brindarles 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 vuelve 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, sigue estos pasos:

  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 al usuario, ingresa una dirección de correo electrónico para que se muestre 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 a la página principal de la aplicación, que debe estar alojado en el mismo dominio raíz que tu unidad central 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 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 izquierda, haz clic en Credenciales para volver a configurar tus credenciales de OAuth.

Una vez que hayas configurado la pantalla de consentimiento de OAuth, si estabas en el proceso de configurar las 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 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, sino solo 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 de tu centro de acciones local

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 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 centro de acciones. Tu centro de acciones debería aparecer en 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 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 tu centro de acciones.

Próximo paso

El siguiente paso es publicar la aplicación que creaste en la Consola de API de Google. Para publicarlo, 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 tardar un tiempo y requerirá algunos pasos de verificación con Google.