Demo Incorpora SDK

Il repository SDK Embed di Looker include codice di esempio e una semplice demo dell'SDK Embed. A causa dell'attenzione di Looker alla sicurezza, la demo richiede un po' di configurazione. La demo richiede anche il tuo secret di incorporamento Looker. Il secret incorporato concede l'accesso a tutti i tuoi dati, quindi tieni presente quanto segue:

  • Non condividere il tuo secret con nessuno che non voglia avere accesso completo alla tua istanza.
  • Non reimpostare il secret se lo stai già utilizzando in un altro contesto.
  • Non configurare il codice per archiviare il secret nel browser web.

Passaggio 1: abilita l'incorporamento nell'istanza di Looker

Ciò è documentato in maggior dettaglio nella pagina della documentazione relativa all'incorporamento dei Single Sign-On (SSO).

  1. Vai ad Admin > Platform Embed (Amministrazione con piattaforma) nell'istanza di Looker. Sono necessari privilegi amministrativi.
  2. Il server demo viene eseguito per impostazione predefinita su http://localhost:8080. Se aggiungi questo indirizzo alla lista consentita di domini incorporati, puoi abilitare la demo per ricevere messaggi da Looker.
  3. Attiva l'opzione Autenticazione autenticazione.
  4. Per visualizzare il secret di incorporamento, devi reimpostarlo. Copia il secret in un posto sicuro.

Passaggio 2: personalizza le impostazioni demo per l'istanza di Looker

Fornisci il secret da incorporare al server. Puoi farlo in due modi:

  • Impostala come LOOKER_EMBED_SECRET nell'ambiente shell.
  • Crea un file denominato .env nella directory principale della directory sdk. Aggiungi una riga al file: LOOKER_EMBED_SECRET="YourLookerSecret"

Fornisci l'indirizzo host dell'istanza di Looker al server in uno dei seguenti modi:

  • Impostazione come LOOKER_EMBED_HOST nell'ambiente shell.
  • Aggiunta di LOOKER_EMBED_HOST="yourinstance.looker.com:yourport" al file .env.

Modifica il file demo/demo_config.ts in modo che sia appropriato per le pagine che vuoi incorporare.

// 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

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

Server nodo

  1. Esegui npm install
  2. Esegui npm start

Il server stampa l'host e la porta su cui è in esecuzione. Se è diverso da http://localhost:8080, dovrai aggiungerlo alla tua lista consentita di domini incorporati.

Server Python

  1. Esegui npm install
  2. Esegui npm run python

Il server stampa l'host e la porta su cui è in esecuzione.

pip install six potrebbe essere necessario per installare il livello di compatibilità Python 2/3.