Demostración del SDK de incorporación

El repositorio del SDK de Embed incluye código de muestra y una demostración sencilla del SDK de Embed. Debido a la atención de Looker a la seguridad, 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 incorporación otorga acceso a todos tus datos, por lo que debes tener en cuenta lo siguiente:

  • No compartas tu secreto con ninguna persona que 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 Incorporación de inicio de sesión único (SSO).

  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 a las http://localhost:8080. Si agregas esa dirección a la lista de dominios permitidos incorporada, puedes habilitar la demostración para recibir mensajes de Looker.
  3. Activa Incorporar autenticación.
  4. Para ver el secreto insertado, debes restablecerlo. Copia el secreto en un lugar seguro.

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

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

  • Configúralo 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 tu dirección de host de la instancia de Looker al servidor de la siguiente manera:

  • Configúralo como LOOKER_EMBED_HOST en tu entorno de shell.
  • Agregando LOOKER_EMBED_HOST="yourinstance.looker.com:yourport" al archivo .env

Edita el archivo demo/demo_config.ts a fin de que sea apropiado para las páginas que deseas incorporar.

// The address of your Looker instance. Required.
export const lookerHost = 'self-signed.looker.com:9999'

// A dashboard that the user can see. Set to 0 to disable dashboard.
export const dashboardId = 1
// A Look that the user can see. Set to 0 to disable look.
export const lookId = 1

Edita el archivo demo/demo_user.json a fin de que sea apropiado 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

Servidor de nodos

  1. Ejecución npm install
  2. Ejecución npm start

El servidor imprimirá en qué host y puerto se está ejecutando. Si es diferente de http://localhost:8080, deberás agregarla a tu lista de dominios permitidos incorporada.

Servidor Python

  1. Ejecución npm install
  2. Ejecución npm run python

El servidor imprimirá en qué host y puerto se está ejecutando.

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