SDK-Demo einbetten

Das Embed SDK-Repository von Looker enthält Beispielcode und eine einfache Demo des Embed SDK. Da Looker auf Sicherheit legt, muss die Demo etwas eingerichtet werden. Für die Demo ist außerdem das Embed-Secret von Looker erforderlich. Das eingebettete Secret ermöglicht den Zugriff auf alle Ihre Daten. Beachten Sie daher Folgendes:

  • Geben Sie Ihr Secret nicht an Personen weiter, die keinen vollständigen Zugriff auf die Instanz haben sollen.
  • Setzen Sie das Secret nicht zurück, wenn Sie es bereits in einem anderen Kontext verwenden.
  • Richten Sie Ihren Code nicht so ein, dass das Secret im Webbrowser gespeichert wird.

Schritt 1: Einbetten in der Looker-Instanz aktivieren

Weitere Informationen hierzu finden Sie auf der Dokumentationsseite Einmalanmeldung (SSO).

  1. Rufen Sie auf der Looker-Instanz Admin > Plattformeinbettung auf. Dafür sind Administratorberechtigungen erforderlich.
  2. Der Demoserver wird standardmäßig um http://localhost:8080 ausgeführt. Wenn Sie die Adresse der Zulassungsliste der eingebetteten Domain hinzufügen, können Sie im Demomodus festlegen, dass Nachrichten von Looker empfangen werden sollen.
  3. Aktivieren Sie Authentifizierung einbetten.
  4. Damit Sie das eingebettete Secret sehen können, müssen Sie es zurücksetzen. Kopieren Sie das Secret an einen sicheren Ort.

Schritt 2: Demoeinstellungen für die Looker-Instanz anpassen

Geben Sie das Einbettungs-Secret auf dem Server an. Dafür gibt es verschiedene Möglichkeiten:

  • Legen Sie ihn in Ihrer Shell-Umgebung als LOOKER_EMBED_SECRET fest.
  • Erstellen Sie im Stammverzeichnis des SDK-Verzeichnisses eine Datei mit dem Namen .env. Fügen Sie der Datei eine Zeile hinzu: LOOKER_EMBED_SECRET="YourLookerSecret"

Geben Sie die Adresse des Hosts Ihrer Looker-Instanz an den Server an:

  • Sie legen sie in Ihrer Shell-Umgebung als LOOKER_EMBED_HOST fest.
  • LOOKER_EMBED_HOST="yourinstance.looker.com:yourport" wird zur Datei .env hinzugefügt.

Bearbeiten Sie die Datei demo/demo_config.ts so, dass sie für die Seiten geeignet ist, die Sie einbetten möchten.

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

Bearbeiten Sie die Datei demo/demo_user.json so, dass sie dem Typ des Nutzers entspricht, den Sie einbetten möchten.

{
  // 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" },
}

Schritt 3: Demo erstellen und ausführen

Knotenserver

  1. Führen Sie npm install aus
  2. Führen Sie npm start aus

Der Server druckt den Host und den Port aus, auf dem er ausgeführt wird. Wenn sie sich von http://localhost:8080 unterscheidet, müssen Sie sie der Liste der eingebetteten Domains hinzufügen.

Python-Server

  1. Führen Sie npm install aus
  2. Führen Sie npm run python aus

Der Server druckt den Host und den Port aus, auf dem er ausgeführt wird.

Möglicherweise müssen Sie pip install six installieren, um die Python 2/3-Kompatibilitätsebene zu installieren.