Demostración de la incorporación del SDK

El repositorio del SDK de Embed de Looker incluye código de muestra y una demostración del SDK de Embed. Debido a los requisitos de seguridad de Looker, la demostración requiere un poco de configuración. La demostración también requiere tu secreto de incorporación de Looker. El secreto de la incorporación otorga acceso a todos tus datos, por lo que debes tener en cuenta lo siguiente:

  • No compartas tu secreto con nadie a quien no quieras que tenga acceso completo a tu instancia.
  • No restablezcas tu secreto si ya lo estás usando en otro contexto.
  • No configures tu código para almacenar el secreto en el navegador web.

Paso 1: Habilita la incorporación en tu instancia de Looker

Esto se documenta con más detalle en la página de documentación Incrustación firmada.

  1. Navega a Admin > Platform Embed en tu instancia de Looker. Esto requiere privilegios de administrador.
  2. El servidor de demostración se ejecuta de forma predeterminada en http://localhost:8080. Si agregas esa dirección a la lista de entidades permitidas de dominios incorporados, puedes habilitar la demostración para que reciba mensajes de Looker.
  3. Activa la autenticación de incorporación.
  4. Para ver tu secreto de incorporación, debes restablecerlo. Copia el secreto en un lugar seguro.

Paso 2: Personaliza la configuración de la demostración para tu instancia de Looker

Proporciona tu secreto de incorporación al servidor. Puedes hacerlo de las siguientes maneras:

  • Establécelo como LOOKER_EMBED_SECRET en tu entorno de shell.
  • Crea un archivo llamado .env en la raíz del directorio del SDK. Agrega una línea a ese archivo: LOOKER_EMBED_SECRET="YourLookerSecret"

Proporciona la dirección del host de tu instancia de Looker al servidor con uno de los siguientes métodos:

  • Establécelo como LOOKER_WEB_URL en tu entorno de shell.
  • Agrega LOOKER_WEB_URL="yourinstance.looker.com:yourport" al archivo .env.

Edita el archivo ENV para especificar los IDs del contenido que deseas incorporar.

# Looker Embed Data Configuration
# Set to - if demo needs to ignore it

# Dashboard IDs
LOOKER_DASHBOARD_ID=1
LOOKER_DASHBOARD_ID_2=2
# Look ID
LOOKER_LOOK_ID=1
# Explore ID
LOOKER_EXPLORE_ID=model::explore
# Extension ID
LOOKER_EXTENSION_ID=extension::my-great-extension
# Report ID
LOOKER_REPORT_ID=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
# Query Visualization ID
LOOKER_QUERY_VISUALIZATION_ID=1234567890ABCDEF123456

Edita el archivo demo/demo_user.json para que sea adecuado para el tipo de usuario que deseas incorporar.

{
  // External embed user ID. IDs are not shared with regular users. Required
  "external_user_id": "user1",
  // First and last name. Optional
  "first_name": "Pat",
  "last_name": "Embed",
  // Duration before session expires, in seconds. Required.
  "session_length": 3600,
  // Enforce logging in with these permissions. Recommended.
  "force_logout_login": true,
  // External embed group ID. Optional.
  "external_group_id": "group1",
  // Looker Group IDs. Optional
  "group_ids": [],
  // Permissions. See documentation for details. Required.
  // Can any combination of:
  //   access_data
  //   see_looks
  //   see_user_dashboards
  //   see_lookml_dashboards
  //   explore
  //   create_table_calculations
  //   download_with_limit
  //   download_without_limit
  //   see_drill_overlay
  //   see_sql
  //   save_content
  //   embed_browse_spaces
  //   schedule_look_emails
  //   send_to_sftp
  //   send_to_s3
  //   send_outgoing_webhook
  //   schedule_external_look_emails
  "permissions": [
    "access_data",
    "see_looks",
    "see_user_dashboards",
    "explore",
    "save_content",
    "embed_browse_spaces"
  ],
  // Model access permissions. Required.
  "models": ["powered_by", "thelook"],
  // User attributes. Optional.
  "user_attributes": { "locale": "en_US" },
}

Paso 3: Compila y ejecuta la demostración

Para compilar y ejecutar la demostración, sigue los pasos del servidor correspondiente.

Servidor de nodos

  1. Ejecuta npm install
  2. Ejecuta npm start

El servidor imprimirá el host y el puerto en los que se está ejecutando. Si es diferente de http://localhost:8080, deberás agregarlo a tu lista de entidades permitidas de dominios incorporados.

Servidor de Python

  1. Ejecuta npm install
  2. Ejecuta npm run python

El servidor imprimirá el host y el puerto en los que se está ejecutando.

Es posible que debas ejecutar pip install six para instalar la capa de compatibilidad de Python 2/3.