El repositorio del SDK de incorporación de Looker incluye código de muestra y una demostración del SDK de incorporación. 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 incorporado otorga acceso a todos tus datos, por lo que debes tener en cuenta lo siguiente:
- No compartas el secreto con nadie que no quieras que tenga acceso completo a tu instancia.
- No restablezcas el secreto si ya lo usas en otro contexto.
- No configures el 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 Inserción firmada.
- Navega a Administrador > Incorporación de la plataforma en tu instancia de Looker. Para ello, se requieren privilegios de administrador.
- 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. - Activa Incrustar autenticación.
- 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 de tu instancia de Looker
Proporciona el secreto de incorporación al servidor. Puedes hacerlo de las siguientes 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 la dirección del host de tu instancia de Looker al servidor con uno de los siguientes métodos:
- Configúralo 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
- Ejecuta
npm install
- Ejecuta
npm start
El servidor imprimirá el host y el puerto en el 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
- Ejecuta
npm install
- Ejecuta
npm run python
El servidor imprimirá el host y el puerto en el que se está ejecutando.
Es posible que debas pip install six
para instalar la capa de compatibilidad de Python 2/3.