Il repository dell'SDK Embed di Looker include codice campione e una demo dell'SDK Embed. A causa dei requisiti di sicurezza di Looker, la demo richiede un po' di configurazione. La demo richiede anche il segreto di incorporamento di Looker. Il segreto di incorporamento concede l'accesso a tutti i tuoi dati, quindi tieni presente quanto segue:
- Non condividere il segreto con nessuno a cui non vuoi concedere l'accesso completo alla tua istanza.
- Non reimpostare il secret se lo stai già utilizzando in un altro contesto.
- Non configurare il codice per memorizzare il segreto nel browser web.
Passaggio 1: attiva l'incorporamento nell'istanza di Looker
Questo è documentato in modo più dettagliato nella pagina della documentazione relativa all'incorporamento firmato.
- Vai ad Amministrazione > Incorporamento della piattaforma nell'istanza di Looker. Per farlo sono necessari i privilegi amministrativi.
- Per impostazione predefinita, il server demo viene eseguito su
http://localhost:8080
. Se aggiungi questo indirizzo alla lista consentita dei domini incorporati, puoi consentire alla demo di ricevere messaggi da Looker. - Attiva l'autenticazione incorporata.
- Per visualizzare il segreto di incorporamento, devi reimpostarlo. Copia il segreto in un luogo sicuro.
Passaggio 2: personalizza le impostazioni della demo per l'istanza di Looker
Fornisci il secret di incorporamento al server. Per farlo puoi scegliere tra diverse opzioni:
- Impostalo come
LOOKER_EMBED_SECRET
nell'ambiente shell. - Crea un file denominato
.env
nella directory principale dell'SDK. Aggiungi una riga al file:LOOKER_EMBED_SECRET="YourLookerSecret"
Fornisci l'indirizzo host dell'istanza di Looker al server utilizzando uno dei seguenti metodi:
- Impostalo come
LOOKER_WEB_URL
nell'ambiente shell. - Aggiungi
LOOKER_WEB_URL="yourinstance.looker.com:yourport"
al file.env
.
Modifica il file ENV per specificare gli ID dei contenuti che vuoi incorporare.
# 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
Modifica il file demo/demo_user.json
in modo che sia appropriato per il tipo di utente che vuoi incorporare.
{
// 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" },
}
Passaggio 3: crea ed esegui la demo
Per creare ed eseguire la demo, segui i passaggi per il server appropriato.
Server nodo
- Esegui
npm install
- Esegui
npm start
Il server stamperà l'host e la porta su cui è in esecuzione. Se è diverso da http://localhost:8080
, devi aggiungerlo alla lista consentita dei domini incorporati.
Server Python
- Esegui
npm install
- Esegui
npm run python
Il server stamperà l'host e la porta su cui è in esecuzione.
Potresti dover pip install six
per installare il livello di compatibilità Python 2/3.