Erste Schritte mit SSO-Einbettung

Mit der Einmalanmeldung (SSO) können Sie Ihren Nutzern sichere eingebettete Looks, Dashboards, Dashboards oder LookML-Dashboards präsentieren, ohne dass dafür ein separater Looker-Log-in erforderlich ist. Nutzer werden stattdessen über Ihre eigene Anwendung authentifiziert.

Für die SSO-Einbettung wird eine spezielle Looker-URL erstellt, die Sie in einem iFrame verwenden. Die URL enthält die Informationen, die Sie teilen möchten, die ID des Nutzers in Ihrem System und die Berechtigungen, die dieser Nutzer haben soll. Anschließend signieren Sie die URL mit einem von Looker bereitgestellten geheimen Schlüssel.

Richtiges Hosting für SSO-Einbettung

Für einige Browser (zum Zeitpunkt der Erstellung dieses Dokuments) werden standardmäßig Cookie-Richtlinien verwendet, die Drittanbieter-Cookies blockieren. Da Looker Cookies zur Nutzerauthentifizierung verwendet, ist der Versuch, den eingebetteten iFrame domainübergreifend zu authentifizieren, in diesen Browsern nur möglich, wenn der Nutzer die Cookie-Datenschutzeinstellungen des Browsers ändert. Wenn Sie beispielsweise Informationen in https://mycompany.com einbetten möchten, muss Looker in einer Subdomain wie https://analytics.mycompany.com enthalten sein.

Wenn Looker Ihre Instanz hostet, wenden Sie sich an den Looker-Support, um die erforderliche DNS-Konfiguration einzurichten. Öffnen Sie die Looker-Hilfe von Looker, indem Sie auf Kontakt klicken.

Wenn Sie eine vom Kunden gehostete Looker-Instanz haben, müssen Sie darauf achten, dass sich die Anwendung, die die SSO-Einbettung verwendet, auf derselben Basisdomain befindet wie Ihre Looker-Instanz.

Sichtbarkeit von Clients mit einem geschlossenen System steuern

Es ist üblich, dass Looker-Nutzer in einer Konfiguration mit SSO-Einbettung Daten für ihre eigenen Kunden freigeben und Kunden aus verschiedenen Unternehmen oder Gruppen haben, die sich nicht kennen. In diesem Szenario empfehlen wir Ihnen, zum Schutz der privaten Daten Ihrer Kunden Looker als geschlossenes System zu konfigurieren, das auch als mehrmandantenfähige Installation bezeichnet wird. In einem geschlossenen System sind die Inhalte isoliert, sodass Nutzer aus unterschiedlichen Gruppen nicht voneinander wissen. Aus diesem Grund empfehlen wir Ihnen, die Option Geschlossenes System zu aktivieren, bevor Sie externen Nutzern Zugriff auf die Instanz gewähren.

Weitere Informationen finden Sie auf der Dokumentationsseite zum Erstellen und Konfigurieren eines Zugriffsebenens und in den Best Practices für die Sicherheit von eingebetteten Analysen.

Geheimen Schlüssel von Looker generieren

Wenn Sie überprüfen möchten, ob eine Anfrage zur SSO-Einbettung seriös ist und nicht von jemand anderem gefälscht wurde, müssen Sie zuerst ein „Einbettungsgeheimnis“ generieren. Anleitung:

  1. Rufen Sie in Looker im Abschnitt Verwaltung die Seite Einbetten auf.
  2. Wählen Sie im Drop-down-Menü Embed SSO Authentication (SSO-Authentifizierung einbetten) die Option Enabled (Aktiviert) aus und klicken Sie dann auf Update (Aktualisieren).
  3. Klicken Sie auf die Schaltfläche Secret zurücksetzen, um das eingebettete Secret zu generieren. Kopieren Sie dieses Secret unbedingt an einen sicheren Speicherort, da Sie es nicht wieder von Looker abrufen können, ohne es zurückzusetzen. Wenn Sie den Schlüssel zurücksetzen, werden alle Einbettungen abgebrochen, die den alten Schlüssel verwendet haben.

Jeder Nutzer mit Zugriff auf den geheimen Schlüssel kann eine URL für den Zugriff auf alle Modelle erstellen, mit denen die Looker-Instanz wie alle Nutzer mit entsprechender Berechtigung verbunden ist. Schützen Sie das SSO-Einbettungsgeheimnis wie bei Administrator-Anmeldedaten für Ihre eingebettete Looker-Instanz. Lassen Sie die SSO-Einbettung deaktiviert, wenn Sie sie nicht verwenden.

Einbettungs-URL erstellen

Für die korrekte URL müssen Sie Code schreiben, damit Sie die URL richtig mit Ihrem geheimen Schlüssel codieren und weitere sicherheitsrelevante Elemente generieren können. In unserem GitHub-Repository für SSO-Beispiele finden Sie mehrere Beispielskripts. In den folgenden Abschnitten wird beschrieben, welche Informationen zu diesen Skripts erforderlich sind.

Erforderliche Looker-Informationen erfassen

Als Ausgangspunkt für die Erstellung Ihrer URL müssen Sie zuerst alle Informationen angeben, die Sie einschließen müssen. Folgendes wird benötigt:

URL einbetten

Rufen Sie die URL des Look-, Explore- oder Dashboard-Elements ab, das Sie einbetten möchten. Entfernen Sie dann die Domain und setzen Sie /embed vor dem Pfad:

Element Normales URL-Muster URL einbetten
Look https://instance_name.looker.com/
looks/4
/embed/looks/4
Erkunden https://instance_name.looker.com/
explore/my_model/my_explore
/embed/explore/my_model/my_explore
Benutzerdefiniertes Dashboard https://instance_name.looker.com/
dashboards-next/1
/embed/dashboards-next/1
Benutzerdefiniertes
altes Dashboard
https://instance_name.looker.com/
dashboards/1
/embed/dashboards/1
LookML-Dashboard https://instance_name.looker.com/
dashboards-next/my_model::my_dashboard
/embed/dashboards-next/my_model::my_dashboard
Altes LookML-
Dashboard
https://instance_name.looker.com/
dashboards/my_model::my_dashboard
/embed/dashboards/my_model::my_dashboard

Eingebetteter Inhalt spiegelt immer die Produktionsversion des Inhalts wider. Änderungen, die im Entwicklungsmodus vorgenommen werden und sich auf den Inhalt auswirken und noch nicht für die Produktion bereitgestellt wurden, werden nicht in eine Einbettung aufgenommen.

Berechtigungen

Mit einem Berechtigungssatz wird festgelegt, was ein Nutzer oder eine Gruppe tun kann. Berechtigungen können auf zwei Arten angewendet werden:

  • Modellspezifisch: Dieser Berechtigungstyp wird nur auf die Modellsätze angewendet, die zur selben Rolle gehören.
  • Instanzweit: Dieser Berechtigungstyp gilt für die Looker-Instanz als Ganzes. Nutzer mit instanzweiten Berechtigungen einbetten können bestimmte Funktionen in der gesamten Looker-Instanz, aber können nicht auf Inhalte zugreifen, die auf Modellen basieren, die nicht im Modellsatz der Rolle enthalten sind.

Legen Sie die Berechtigungen fest, die der Nutzer haben soll. Die folgende Liste enthält alle verfügbaren Berechtigungen für die SSO-Einbettung. Berechtigungen, die nicht in der folgenden Liste aufgeführt sind, werden für die Einbettung von SSO nicht unterstützt:

Berechtigung Abhängig von Typ Definition
access_data Modellspezifisch Ermöglicht dem Nutzer den Zugriff auf Daten (erforderlich für das Ansehen von Looks, Dashboards oder Auswertungen)
see_lookml_dashboards access_data Modellspezifisch Nutzer können LookML-Dashboards aufrufen
see_looks access_data Modellspezifisch Ermöglicht Nutzern, Looks zu sehen
see_user_dashboards see_looks Modellspezifisch Ermöglicht es Nutzern, benutzerdefinierte Dashboards zu sehen und Ordner aus einem eingebetteten Element zu durchsuchen
explore see_looks Modellspezifisch Der Nutzer kann die Seiten zum Erkunden aufrufen
create_table_calculations explore Instanzweit Zum Erstellen von Tabellenberechnungen aus einer explorativen Datenanalyse erforderlich
save_content see_looks Instanzweit Ermöglicht Nutzern, Änderungen an Looks und Dashboards vorzunehmen und zu speichern
send_outgoing_webhook see_looks Modellspezifisch Ermöglicht dem Nutzer, Dashboards und Looks für einen beliebigen Webhook zu planen
send_to_s3 see_looks Modellspezifisch Ermöglicht dem Nutzer, Dashboards und Looks in einem Amazon S3-Bucket zu planen
send_to_sftp see_looks Modellspezifisch Ermöglicht Nutzern, Dashboards und Looks auf einem SFTP-Server zu planen
schedule_look_emails see_looks Modellspezifisch Ermöglicht es Nutzern, Dashboards und Looks zu planen, die an ihre eigene E-Mail-Adresse gesendet werden. Diese wird mit einem Nutzerattribut namens „email“ oder an eine E-Mail-Adresse gesendet, die innerhalb der in der Zulassungsliste für E-Mail-Domains festgelegten Einschränkungen liegt. Ermöglicht Nutzern mit create_alerts-Berechtigungen, Benachrichtigungen an eine E-Mail-Adresse zu senden, die innerhalb der in der Zulassungsliste für E-Mail-Domains festgelegten Einschränkungen liegt.
schedule_external_look_emails schedule_look_
emails
Modellspezifisch Ermöglicht dem Nutzer, Dashboards zu planen und an alle E-Mails zu senden. Ermöglicht Nutzern mit create_alerts-Berechtigungen das Senden von Benachrichtigungen an E-Mail-Domains.
send_to_
integration
see_looks Modellspezifisch Nutzer können Looker-Inhalte über den Looker Action Hub an die mit Looker integrierten Drittanbieterdienste bereitstellen. Diese Berechtigung hat nichts mit Datenaktionen zu tun.
create_alerts see_looks Instanzweit Ermöglicht dem Nutzer das Erstellen von Benachrichtigungen auf Dashboard-Kacheln, um Benachrichtigungen zu erhalten, wenn bestimmte Bedingungen erfüllt oder überschritten werden. Nutzer können ihre eigenen und andere öffentliche Benachrichtigungen bearbeiten, duplizieren und löschen. Wenn der Slack-Arbeitsbereich des Nutzers nicht mit der Looker-Instanz verbunden ist, kann er keine Benachrichtigungen erstellen, durch die Benachrichtigungen an Slack gesendet werden.
download_with_limit see_looks Instanzweit Ermöglicht dem Nutzer, die Ergebnisse einer Abfrage mit einem angewendeten Limit herunterzuladen
download_without_limit see_looks Instanzweit Ermöglicht dem Nutzer, die Ergebnisse einer Abfrage ohne Begrenzung herunterzuladen
see_sql see_looks Modellspezifisch Ermöglicht Nutzern, den SQL für Abfragen und alle SQL-Fehler zu sehen, die durch das Ausführen von Abfragen entstehen
see_drill_overlay access_data Modellspezifisch Damit können Nutzer weiterbohren, ohne die Seite „Entdecken“ öffnen zu müssen.
embed_browse_spaces Instanzweit Aktiviert den Inhaltsbrowser, sodass ein Nutzer Ordner in einem eingebetteten Bereich durchsuchen kann. Alle Nutzer mit Einbettung, denen embed_browse_spaces gewährt wurde, erhalten Zugriff auf einen persönlichen Einbettungsordner und gegebenenfalls auf den freigegebenen Ordner Ihrer Organisation.

Die Berechtigung embed_browse_spaces wird für Nutzer mit der Berechtigung save_content empfohlen, damit sie bei der Auswahl des Speicherorts für Inhalte die Ordner durchsuchen können.

Um die Inhalte in den Ordnern zu sehen, benötigt der Nutzer außerdem die Berechtigungen see_looks, see_user_dashboards und see_lookml_dashboards.
embed_save_shared_space Instanzweit Ermöglicht es Nutzern mit der Berechtigung save_content, Inhalte im freigegebenen Ordner der Organisation zu speichern (falls vorhanden). Nutzer mit der Berechtigung save_content, aber nicht der Berechtigung embed_save_shared_space können nur Inhalte in ihrem persönlichen Einbettungsordner speichern.

Modellzugriff

Ermitteln, auf welche LookML-Modelle der Nutzer Zugriff haben sollte Dies ist einfach eine Liste mit Modellnamen.

Nutzerattribute

Ermitteln Sie, welche Nutzerattribute der Nutzer haben sollte. Sie benötigen den Namen des Nutzerattributs aus Looker und den Wert, den der Nutzer für dieses Attribut haben sollte.

Gruppen

Legen Sie gegebenenfalls fest, zu welchen Gruppen der Nutzer gehören soll. Sie brauchen die Gruppen-IDs, nicht die Gruppennamen. Wenn Sie einen Nutzer mit SSO-Einbettung zu einer Looker-Gruppe hinzufügen, können Sie den Zugriff des Nutzers auf Looker-Ordner verwalten. Nutzer mit SSO-Einbettung haben Zugriff auf alle Ordner, die für Mitglieder ihrer Looker-Gruppen freigegeben sind.

Sie können auch den Parameter external_group_id verwenden, um eine Gruppe zu erstellen, die außerhalb der regulären Looker-Gruppen liegt. In diesem Fall hat ein Nutzer, der sich die Einmalanmeldung (SSO) mit demselben external_group_id befindet, Zugriff auf den freigegebenen Ordner „Gruppe“, der für die externe Gruppe eindeutig ist.

Eingebettete Rollen

Die Parameter permissions und models erstellen eine Rolle für den eingebetteten Nutzer. Diese Rolle wird auf der Seite Nutzer im Abschnitt Admin von Looker als eingebettete Rolle angezeigt. Wenn die Parameter permissions, models und group_ids alle in der eingebetteten URL angegeben sind, wird die eingebettete Rolle allen Rollen, die den im group_ids-Parameter aufgeführten Gruppen zugewiesen sind, hinzugefügt. Dies entspricht den Standardrollen, da alle Rollen in Looker additiv sind.

Beispiel: Sie haben in Looker eine Gruppe mit der Gruppen-ID 1, die bereits die Berechtigung explore für ein Modell mit dem Namen model_one hat. Außerdem erstellen Sie eine eingebettete URL mit den folgenden Parametern:

  • group_ids = [1]
  • permissions = ["access_data","see_looks"]
  • models = ["model_two"]

In diesem Fall übernimmt der eingebettete Nutzer die Fähigkeit, die Daten in model_one aufzurufen und zu analysieren. Die mit den vorherigen Parametern erstellte Einbettungsrolle gewährt dann ebenfalls die Berechtigung zum Aufrufen der Daten in model_two.

Einbettungs-URL erstellen

Eine eingebettete SSO-URL hat das folgende Format:

https://HOST/login/Embed/EMBED URL?PARAMETERS&signature=SIGNATURE

Host

Der Host ist der Ort, an dem Ihre Looker-Instanz gehostet wird. Beispiel: analytics.mycompany.com. Geben Sie die Portnummer an, wenn Sie die Portweiterleitung nicht aktiviert haben, z. B. analytics.mycompany.com:9999.

URL einbetten

Die Einbettungs-URL wurde zuvor festgelegt. Sie hat folgendes Format:

  • /embed/looks/4
  • /embed/explore/my_model/my_explore
  • /embed/dashboards-next/1 oder /embed/dashboards/1
  • /embed/dashboards-next/my_model::my_dashboard oder /embed/dashboards/my_model::my_dashboard

Das bedeutet, dass das Muster /embed//embed/ in der finalen URL angezeigt wird. Das ist richtig.

Wenn Sie eingebettete JavaScript-Ereignisse verwenden, müssen Sie embed_domain (die Domain, in der der iFrame verwendet wird) an das Ende der eingebetteten URL anhängen:

„/Embed/looks/4“
🏆
/https://mywebsite.com

embed_domain wird nach der eingebetteten URL und vor allen Parametern hinzugefügt. Wenn Sie vorhandene Parameter wie nonce=62 haben, würde das Hinzufügen von embed_domain so aussehen:

„/Embed/looks/4?nonce=626“
🏆
`/Embed/Looks/4?Embed_domain=https://IhreWebsite.de?nonce=626`

Wenn Sie das Embed SDK verwenden, sollten Sie den embed_domain und auch sdk=2 am Ende der eingebetteten URL einfügen. Das sieht dann so aus:

„/Embed/looks/4“
🏆
`/Embed/Looks/4?Embed_domain=https://IhreWebsite.de&sdk=2`

Mit dem sdk=2-Parameter kann Looker feststellen, ob das SDK vorhanden ist, und zusätzliche Funktionen des SDKs nutzen. Das SDK kann diesen Parameter nicht selbst hinzufügen, da er Teil der signierten SSO-URL ist.

Parameter

Die folgenden URL-Parameter werden verwendet, um die erforderlichen Informationen für die SSO-Einbettung anzugeben:

Parameter Wert erforderlich? Beschreibung Datentyp Beispiel
nonce Ja Sie können einen beliebigen String festlegen. Dieser darf jedoch nicht innerhalb einer Stunde wiederholt werden und muss weniger als 255 Zeichen lang sein.

Damit wird verhindert, dass ein Angreifer die URL eines legitimen Nutzers noch einmal einreicht, um die gewünschten Informationen zu erfassen.
JSON-String "22b1ee700ef3dc2f500fb7"
time Ja Die aktuelle Zeit als UNIX-Zeitstempel. Integer 1407876784
session_length Ja Die Anzahl von Sekunden, die der Nutzer zwischen 0 und 2.592.000 Sekunden (30 Tage) in Looker angemeldet bleiben soll. Integer 86400
external_user_id Ja Eine eindeutige Kennung für den Nutzer in der Anwendung, die Looker einbettet. In Looker wird dieser Wert verwendet, um SSO-eingebettete Nutzer voneinander zu unterscheiden.

Sie erstellen diesen String und es kann ein beliebiger Wert sein. Dieser Wert muss jedoch für einen bestimmten Satz von Berechtigungen, Nutzerattributen und Modellen eindeutig sein. Beispiel: Ein und derselbe Nutzer hat in zwei Kontexten unterschiedliche Berechtigungen.

Achte aus Sicherheitsgründen darauf, nicht dasselbe external_user_id für verschiedene eingebettete Sitzungen für verschiedene interaktive Nutzer zu verwenden.
JSON-String "user-4"
permissions Ja Die Liste der Berechtigungen, die der Nutzer haben sollte.

Eine Liste der zulässigen Berechtigungen finden Sie im Abschnitt Berechtigungen auf dieser Seite.
Stringarray [
  "access_data",
  "see_looks"
]
models Ja Die Liste der Modellnamen, auf die der Nutzer Zugriff haben sollte. Stringarray [
  "model_one",
  "model_two"
]
group_ids Nein Die Liste der Looker-Gruppen, in denen der Nutzer Mitglied sein sollte. Verwenden Sie Gruppen-IDs anstelle von Gruppennamen. Array von Ganzzahlen [4, 3]
external_group_id Nein Eine eindeutige Kennung für die Gruppe, zu der der Nutzer in der Anwendung gehört, in die Looker eingebettet ist (falls gewünscht).

Nutzer, die Inhalte speichern und eine externe Gruppen-ID teilen dürfen, können Inhalte in einem freigegebenen Looker-Ordner namens „Gruppe“ speichern und bearbeiten.
JSON-String "Accounting"
user_attributes Nein Die Liste der Nutzerattribute, die der Nutzer haben sollte, falls vorhanden. Enthält eine Liste von Nutzerattributnamen, gefolgt vom Wert des Nutzerattributs.

Wenn Ihr LookML-Modell lokalisiert ist, können Sie das Nutzerattribut locale in der eingebetteten URL verwenden, um eine Sprache für die Einbettung anzugeben. Beispielsweise würde das Einbetten des Parameters user_attributes { "locale" : "fr_FR" } dazu führen, dass die Einbettung als Sprache geladen wird.
Hash von Strings {
  "vendor_id" : "17",
  "company" : "xactness"
}
access_filters Ja In Looker 3.10 ist dieser Parameter veraltet, in der URL aber noch erforderlich. Verwenden Sie access_filters mit einem leeren Platzhalter, z. B. access_filters={}. Platzhalter ist leer {}
first_name Nein Der Vorname des Nutzers. Wenn Sie das Feld leer lassen, behält first_name den Wert der letzten Anfrage bei oder „Embed“ (Einbetten), wenn noch kein Vorname festgelegt wurde. JSON-String "Alice"
last_name Nein Der Nachname des Nutzers. Wenn Sie das Feld leer lassen, behält last_name den Wert der letzten Anfrage oder „Einbetten“ bei, wenn noch kein Nachname festgelegt wurde. JSON-String "Jones"
user_timezone Nein Wenn Sie nutzerspezifische Zeitzonen aktiviert haben, legen Sie den Wert der Option Zeitzone des Zuschauers im Drop-down-Menü Zeitzone im eingebetteten Look oder Dashboard fest. Durch diesen Parameter wird die Zeitzone, in der die Inhalte zu sehen sind, nicht direkt geändert. Der Nutzer muss im Drop-down-Menü die gewünschte Zeitzone auswählen.

Auf der Dokumentationsseite zum Einbinden der SSO-Zeitzone finden Sie gültige Werte.

Tipp für das Chat-Team: Wenn Ihre eingebetteten Inhalte standardmäßig auf die Zeitzone des Nutzers abgestimmt werden sollen, verwenden Sie eine der folgenden Methoden:

  • Fügen Sie der eingebetteten URL den Parameter ?query_timezone=user_timezone hinzu. Beispiel:

    /embed/dashboards/1?query_timezone=user_timezone
  • Speichern Sie das eingebettete Dashboard oder prüfen Sie, ob für die Standardzeitzone die Zeitzone des Betrachters festgelegt ist. Dadurch wird die Zeitzone des Nutzers sowohl für eingebettete als auch für nicht eingebettete Nutzer standardmäßig verwendet.
  • JSON-String oder Null "US/Pacific"

    - oder -

    null
    force_logout_login Ja Wenn ein normaler Looker-Nutzer bereits in Looker angemeldet ist und sich ein eingebettetes SSO-Element ansieht, können Sie auswählen, ob

    1) das Element mit seinen aktuellen Anmeldedaten

    oder

    2) mit den SSO-Anmeldedaten abgemeldet und wieder angemeldet werden soll.
    Boolesch (wahr oder falsch) true

    Alle oben genannten Parameter sind erforderlich, aber jeder Parameter mit „Nein“ in der Spalte „Wert erforderlich?“ kann mit einem leeren Wert verwendet werden. Beispiel: group_ids [] oder user_attributes {}.

    Unterschrift

    Führen Sie die folgenden Schritte aus, um die Signatur zu generieren.

    1. Ermitteln Sie die folgenden Parameterwerte in dieser Reihenfolge:
      • Host, gefolgt von login/embed/ (z. B. analytics.mycompany.com/login/embed/)
      • URL einbetten
      • Nonce
      • Aktuelle Uhrzeit
      • Sitzungsdauer
      • Externe Nutzer-ID
      • Berechtigungen
      • Modelle
      • Gruppen-IDs
      • Externe Gruppen-ID
      • Nutzerattribute
      • Zugriffsfilter (leerer Platzhalter erforderlich)
    2. Alle Werte außer Host und URL als JSON formatieren
    3. Werte mit Zeilenumbrüchen (\n) verketten
    4. HMAC-Signatur zum verketteten String mit dem Looker-Einbettungsgeheimnis

    Codierung

    Im letzten Schritt wird die URL codiert.

    Vor der Codierung einer URL könnte eine korrekt formatierte URL, die alle möglichen Parameter enthält, so aussehen:

    https://analytics.mycompany.com/login/embed//embed/dashboards-next/1?
    nonce="22b1ee700ef3dc2f500fb7"&
    time=1407876784&
    session_length=86400&
    external_user_id="user-4"&
    permissions=["access_data","see_user_dashboards","see_looks"]&
    models=["model_one","model_two"]&
    group_ids=[4,3]&
    external_group_id="Allegra K"&
    user_attributes={"vendor_id":"17","company":"xactness"}&
    access_filters={}&
    first_name="Alice"&
    last_name="Jones"&
    user_timezone="US/Pacific"&
    force_logout_login=true&
    signature=123456789ABCDEFGHIJKL
    

    Wie bereits erwähnt, ist es richtig, dass /embed//embed/ in Ihrer URL erscheint.

    Nachdem Sie die URL codiert haben, sieht sie in etwa so aus:

    https://analytics.mycompany.com/login/embed/%2embed%2Fdashboards-next%2F1?
    nonce=%2222b1ee700ef3dc2f500fb7&%22&
    time=1407876784&
    session_length=86400&
    external_user_id=%22user-4%22&
    permissions=%5B%22access_data%22%2C%22see_user_dashboards%22%2C%22see_looks%22%5D&
    models=%5B%22model_one%22%2C%22model_two%22%5D&
    group_ids=%5B4%2C3%5D&
    external_group_id=%22Allegra%20K%22&
    user_attributes=%7B%22vendor_id%22%3A%2217%22%2C%22company%22%3A%22xactness%22%7D&
    access_filters%7B%7D%26%0A
    first_name=%22Alice%22&
    last_name=%22Jones%22&
    user_timezone=%22US%2FPacific%22&
    force_logout_login=true&
    signature=123456789ABCDEFGHIJKL
    

    API-Endpunkt create_sso_embed_url verwenden

    Die Looker API enthält den create_sso_embed_url-Endpunkt. Er nimmt eine Reihe von SSO-Einbettungsparametern an, die die URL des einzubettenden Inhalts enthalten, und gibt eine vollständige, codierte, kryptografisch signierte SSO-URL zurück.

    Wenn Sie diesen API-Endpunkt auf einem Webserver verwenden möchten, muss der Webserver in der Lage sein, sich mit Administratorberechtigungen bei der Looker API zu authentifizieren. Die Webserverdomain muss auch in der Zulassungsliste für die Domaineinbindung aufgeführt sein.

    Sie können auch den API Explorer auf Ihrer Looker-Instanz verwenden, um eine SSO-URL mit diesem Endpunkt zu generieren. Die SSO-URL muss genau kopiert werden und kann nur einmal verwendet werden. Andernfalls schlägt der Vorgang fehl. Die interaktive API-Dokumentation ist auch nützlich, um eine SSO-URL zu generieren und sie zur Fehlerbehebung mit einer manuell erstellten SSO-URL zu vergleichen.

    Weitere Informationen zur Looker API finden Sie auf der Seite Looker API-Übersicht.

    Einbettungs-URL testen

    Um die finale URL zu testen, fügen Sie sie im Abschnitt Admin (Looker) auf der Seite Embed (Dienst) in den Abschnitt URI URI (Validator) ein. Diese Option gibt zwar keinen Aufschluss darüber, ob die von Ihnen festgelegten Daten und Berechtigungen korrekt eingerichtet wurden, sie können jedoch prüfen, ob Ihre Authentifizierung ordnungsgemäß funktioniert.