Mit der Einmalanmeldung (SSO) können Sie Ihren Nutzern sichere Look-, Explore-, Dashboard- oder LookML-Dashboards präsentieren, ohne dass dafür separate Looker-Anmeldungen erforderlich sind. Stattdessen werden Nutzer ü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 freigeben 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 geheimen Schlüssel von Looker.
Richtiges Hosting für SSO-Einbettung
Einige Browser (Internet Explorer und Safari zum Zeitpunkt der Veröffentlichung dieser Mitteilung) verwenden standardmäßig eine Cookierichtlinie, die Cookies von Drittanbietern blockiert. Da Looker Cookies für die Nutzerauthentifizierung verwendet, ist es nicht möglich, den eingebetteten iFrame domainübergreifend zu authentifizieren, es sei denn, der Nutzer ändert die Cookie-Datenschutzeinstellungen des Browsers. Wenn Sie beispielsweise Informationen in https://mycompany.com
einbetten möchten, müssen Sie dafür sorgen, dass sich Looker auf einer Subdomain wie https://analytics.mycompany.com
befindet.
Wenn Looker Ihre Instanz hostet, wenden Sie sich an den Looker-Support, um die erforderliche DNS-Konfiguration einzurichten. Öffnen Sie die Supportanfrage von Looker, indem Sie auf Kontakt klicken.
Wenn Sie eine vom Kunden gehostete Looker-Instanz haben, achten Sie darauf, dass sich die Anwendung, die SSO-Einbettung verwendet, in derselben Basisdomain befindet wie Ihre Looker-Instanz.
Sichtbarkeit von Clients mit einem geschlossenen System steuern
Es ist üblich, dass Looker-Nutzer bei einer SSO-Einbettungskonfiguration Daten für ihre eigenen Kunden präsentieren und Clients aus verschiedenen Unternehmen oder Gruppen haben, die sich nicht kennen. In diesem Szenario empfehlen wir Ihnen, Looker als geschlossenes System zu konfigurieren, das auch als mehrinstanzenfähige Installation bezeichnet wird. In einem geschlossenen System sind die Inhalte isoliert, sodass Nutzer aus verschiedenen Gruppen sich nicht kennen. Aus diesem Grund empfehlen wir Ihnen, die Option Geschlossenes System zu aktivieren, bevor Sie externen Nutzern Zugriff auf Ihre Instanz gewähren.
Weitere Informationen finden Sie auf der Dokumentationsseite Ein System von Zugriffsebenen entwerfen und konfigurieren und in den Dokumentation zu den Best Practices für die Sicherheit eingebetteter Analysen.
Geheimen Schlüssel von Looker generieren
Wenn Sie überprüfen möchten, ob eine Anfrage für die Einbettung von SSO seriös ist und nicht von einer anderen Person gefälscht wurde, müssen Sie zuerst ein Secret für die Einbettung generieren. Anleitung:
- Rufen Sie in Looker im Abschnitt Admin die Seite Embed auf.
- Wählen Sie im Drop-down-Menü Einmalanmeldung (SSO) einbetten die Option Aktiviert aus und klicken Sie auf Aktualisieren.
- Klicken Sie auf die Schaltfläche Secret zurücksetzen, um das eingebettete Secret zu generieren. Achten Sie darauf, dieses Secret an einen sicheren Ort zu kopieren, da Sie es nicht wieder von Looker abrufen können, ohne es zurückzusetzen. Durch das Zurücksetzen des Schlüssels werden alle Einbettungen deaktiviert, die den alten Schlüssel verwendet haben.
Jeder Nutzer mit Zugriff auf den geheimen Schlüssel kann eine URL für den Zugriff auf ein beliebiges Modell erstellen, mit dem die Looker-Instanz ohne entsprechende Berechtigung verbunden ist. Schützen Sie das SSO-Einbettungsgeheimnis wie bei der Verwaltung von Anmeldedaten für Ihre eingebettete Looker-Instanz und lassen Sie die SSO-Einbettung deaktiviert, wenn Sie sie nicht verwenden.
URL zum Einbetten erstellen
Für die Erstellung der richtigen URL ist es erforderlich, dass 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 werden die Informationen erläutert, die Sie für diese Skripts angeben müssen.
Erforderliche Looker-Informationen erfassen
Zunächst sollten Sie sich überlegen, welche Informationen enthalten sein sollen. Folgendes wird benötigt:
URL einbetten
Rufen Sie die URL des Designs, des Berichts oder des Dashboards ab, das Sie einbetten möchten. Entfernen Sie dann die Domain und platzieren Sie /embed
vor dem Pfad:
Element | Normales URL-Muster | URL einbetten |
---|---|---|
Look | https://instance_name.looker.com/ looks/4 |
/embed/looks/4 |
Explore | 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 |
Legacy-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. Im Entwicklungsmodus vorgenommene Änderungen, die sich auf Inhalte auswirken und noch nicht in der 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: Diese Art von Berechtigung gilt für die gesamte Looker-Instanz. Eingebettete Nutzer mit instanzweiten Berechtigungen können bestimmte Funktionen in der gesamten Looker-Instanz ausführen, haben aber keinen Zugriff auf Inhalte, die auf Modellen basieren, die im Modellsatz ihrer Rolle nicht 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 auf der folgenden Liste stehen, werden für das Einbetten von SSO nicht unterstützt:
Berechtigung | Hängt von ab | Typ | Definition |
---|---|---|---|
access_data |
– | Modellspezifisch | Ermöglicht dem Nutzer den Zugriff auf Daten (erforderlich für das Ansehen von Looks, Dashboards oder Erkundungen) |
see_lookml_dashboards |
access_data |
Modellspezifisch | Nutzer können LookML-Dashboards sehen |
see_looks |
access_data |
Modellspezifisch | Ermöglicht Nutzern das Ansehen von Looks |
see_user_dashboards |
see_looks |
Modellspezifisch | Nutzer können benutzerdefinierte Dashboards sehen und Ordner in einer eingebetteten Datei durchsuchen |
explore |
see_looks |
Modellspezifisch | Nutzer können die Seiten „Entdecken“ sehen |
create_table_calculations |
explore |
Instanzweit | Erforderlich, um Tabellenberechnungen aus einem Tab „Entdecken“ zu erstellen |
save_content |
see_looks |
Instanzweit | Nutzer dürfen Änderungen an Looks und Dashboards vornehmen und speichern |
send_outgoing_webhook |
see_looks |
Modellspezifisch | Nutzer können Dashboards und Looks für einen beliebigen Webhook planen |
send_to_s3 |
see_looks |
Modellspezifisch | Nutzer können Dashboards und Looks für einen Amazon S3-Bucket planen |
send_to_sftp |
see_looks |
Modellspezifisch | Nutzer können Dashboards und Looks auf einem SFTP-Server planen |
schedule_look_emails |
see_looks |
Modellspezifisch | Nutzer können damit Dashboards und Looks an ihre eigene E-Mail-Adresse (diese werden mit einem Nutzerattribut namens „email“) festgelegt oder an eine E-Mail-Adresse gesendet, die im Rahmen der Zulassungsliste für E-Mail-Domains festgelegt ist. Nutzer mit der Berechtigung create_alerts dürfen Warnmeldungen an eine E-Mail-Adresse senden, die innerhalb der Zulassungsliste für E-Mail-Domains liegt. |
schedule_external_look_emails |
schedule_look_ emails |
Modellspezifisch | Der Nutzer kann Dashboards planen und sieht an, dass er an jede E-Mail-Adresse gesendet wird. Ermöglicht Nutzern mit create_alerts -Berechtigungen das Senden von Benachrichtigungen an E-Mail-Domains. |
send_to_ integration |
see_looks |
Modellspezifisch | Ermöglicht es Nutzern, Looker-Inhalte an in Looker integrierte Drittanbieterdiensteüber den Looker Action Hub bereitzustellen. Diese Berechtigung hat nichts mit Datenaktionen zu tun. |
create_alerts |
see_looks |
Instanzweit | Nutzer können Benachrichtigungen auf Dashboard-Kacheln erstellen, um Benachrichtigungen zu erhalten, wenn bestimmte Bedingungen erfüllt oder überschritten werden. Nutzer können eigene Warnungen und die Warnungen anderer Nutzer 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 | Der Nutzer darf die Ergebnisse einer Abfrage mit einem bestimmten Limit herunterladen |
download_without_limit |
see_looks |
Instanzweit | Ermöglicht dem Nutzer, die Ergebnisse einer Abfrage ohne Begrenzung herunterzuladen |
see_sql |
see_looks |
Modellspezifisch | Nutzer können SQL für Abfragen und alle SQL-Fehler sehen, die durch das Ausführen von Abfragen auftreten |
see_drill_overlay |
access_data |
Modellspezifisch | Ermöglicht es dem Nutzer, ohne die vollständige Seite „Erkunden“ zu bohren. |
embed_browse_spaces |
– | Instanzweit | Aktiviert den Inhaltsbrowser, sodass ein Nutzer in einem eingebetteten Ordner Ordner durchsuchen kann. Jeder Nutzer mit eingebetteten embed_browse_spaces -Berechtigungen hat Zugriff auf einen persönlichen eingebetteten Ordner und auf den freigegebenen Ordner deiner Organisation, falls vorhanden. Die Berechtigung embed_browse_spaces wird für Nutzer mit der Berechtigung save_content empfohlen, damit sie Ordner auswählen können, wenn sie auswählen, wo Inhalte gespeichert werden sollen. Um die Inhalte in 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 | Nutzer mit der Berechtigung save_content können Inhalte im freigegebenen Ordner der Organisation speichern, falls vorhanden. Nutzer mit der Berechtigung save_content , aber nicht mit der Berechtigung embed_save_shared_space haben nur die Möglichkeit, Inhalte in ihrem persönlichen Einbettungsordner zu speichern. |
Modellzugriff
Legen Sie fest, auf welche LookML-Modelle der Nutzer Zugriff haben soll. Dies ist einfach eine Liste von Modellnamen.
Nutzerattribute
Legen Sie gegebenenfalls die Nutzerattribute des Nutzers fest. Sie benötigen den Namen des Nutzerattributs aus Looker sowie den Wert, den der Nutzer für dieses Attribut haben sollte.
Gruppen
Bestimmen Sie, zu welchen Gruppen der Nutzer gegebenenfalls gehören soll. Sie benötigen die Gruppen-IDs anstelle der Gruppennamen. Wenn Sie einer Looker-Gruppe einen Nutzer mit SSO-Einbettung hinzufügen, können Sie den Zugriff dieses Nutzers auf Looker-Ordner verwalten. SSO-eingebettete Nutzer haben Zugriff auf alle Ordner, die für die Mitglieder ihrer Looker-Gruppen freigegeben sind.
Sie können auch den Parameter external_group_id
verwenden, um eine Gruppe außerhalb der regulären Looker-Gruppen zu erstellen. In diesem Fall haben SSO-Einbettungsnutzer mit derselben external_group_id
Zugriff auf einen freigegebenen Ordner namens „Group“, 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 Admin-Bereich von Looker als eingebettete Rolle angezeigt. Wenn die Parameter permissions
, models
und group_ids
alle in der eingebetteten URL angegeben sind, gilt die eingebettete Rolle hinzugefügt zu allen Rollen, die bereits den im Parameter group_ids
aufgeführten Gruppen zugewiesen sind. Dies entspricht den Standardrollen, da alle Rollen in Looker additiv sind.
Angenommen, Sie haben eine vorhandene Gruppe in Looker mit der Gruppen-ID 1
und diese Gruppe hat bereits die Berechtigung explore
für ein Modell mit dem Namen model_one
und Sie erstellen eine Einbettungs-URL mit den folgenden Parametern:
group_ids
=[1]
permissions
=["access_data","see_looks"]
models
=["model_two"]
In diesem Fall übernimmt der eingebettete Nutzer die Möglichkeit, die Daten in model_one
anzusehen und zu untersuchen. Die mit den vorherigen Parametern erstellte Einbettungsrolle gewährt außerdem die Möglichkeit, die Daten in model_two
anzusehen.
URL zum Einbetten erstellen
Eine SSO-Einbettungs-URL hat das folgende Format:
https://HOST/login/embed/EINBETTEN 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.
Wenn du eingebettete JavaScript-Ereignisse verwendest, musst du ein embed_domain
(die Domain, in der der iFrame verwendet wird) am Ende der eingebetteten URL einfügen:
embed_domain
wird nach der Einbettungs-URL und vor allen Parametern eingefügt. Bei vorhandenen Parametern wie nonce=62
würde das Hinzufügen von embed_domain
so aussehen:
Wenn du das Embed SDK verwendest, musst du embed_domain
hinzufügen und sdk=2
am Ende der eingebetteten URL einfügen. Das sieht dann so aus:
Mit dem Parameter sdk=2
kann Looker feststellen, ob das SDK vorhanden ist, und zusätzliche Funktionen des SDK 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 | Beliebige Zeichenfolge, die Sie mögen. Sie darf jedoch nicht innerhalb einer Stunde wiederholt werden und muss kürzer als 255 Zeichen sein. Dadurch wird verhindert, dass ein Angreifer die URL eines legitimen Nutzers noch einmal einreicht, um Informationen zu sammeln, die er nicht haben sollte. |
JSON-String | "22b1ee700ef3dc2f500fb7" |
time |
Ja | Die aktuelle Zeit als UNIX-Zeitstempel. | Integer | 1407876784 |
session_length |
Ja | Die Anzahl der Sekunden, die der Nutzer in Looker angemeldet bleibt, zwischen 0 und 2.592.000 Sekunden (30 Tage). | Integer | 86400 |
external_user_id |
Ja | Eine eindeutige Kennung für den Nutzer in der Anwendung, in die Looker eingebettet wird. Looker verwendet diesen Wert, um SSO-Nutzer 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. Wenn also ein Nutzer beispielsweise in zwei Kontexten unterschiedliche Berechtigungen hat, benötigt er zwei verschiedene externe Nutzer-IDs. Achte darauf, dass du aus Sicherheitsgründen nicht dieselbe external_user_id bei verschiedenen eingebetteten Sitzungen für verschiedene interaktive Nutzer verwendest. |
JSON-String | "user-4" |
permissions |
Ja | Die Liste der Berechtigungen des Nutzers. Eine Liste der 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 soll. | Stringarray | [ "model_one", "model_two" ] |
group_ids |
Nein | Die Liste der Looker-Gruppen, in denen der Nutzer Mitglied sein sollte, falls vorhanden. Verwenden Sie Gruppen-IDs anstelle von Gruppennamen. | Array von Ganzzahlen | [4, 3] |
external_group_id |
Nein | Eine eindeutige Kennung für die Gruppe, der der Nutzer in der Anwendung angehört, in die Looker eingebettet wird. Nutzer mit der Berechtigung zum Speichern von Inhalten und zur Freigabe einer externen Gruppen-ID 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 gegebenenfalls haben sollte. Enthält eine Liste von Nutzerattributnamen, gefolgt vom Wert des Nutzerattributs. Wenn dein LookML-Modell lokalisiert ist, kannst du das Nutzerattribut locale in der eingebetteten URL verwenden, um eine Sprache für den Einbettungscode anzugeben. Wenn Sie beispielsweise den Parameter user_attributes { "locale" : "fr_FR" } einfügen, wird das Einbetten als Sprache auf Französisch geladen. |
Hash der Strings | { "vendor_id" : "17", "company" : "xactness" } |
access_filters |
Ja | In Looker 3.10 wurde dieser Parameter eingestellt, ist aber weiterhin in der URL erforderlich. Verwenden Sie access_filters mit einem leeren Platzhalter, z. B. access_filters={} . |
Leerer Platzhalter | {} |
first_name |
Nein | Der Vorname des Nutzers. Wenn Sie das Feld leer lassen, behält first_name den Wert der letzten Anfrage bei oder lautet „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 bei oder lautet „Einbetten“, wenn noch kein Nachname festgelegt wurde. |
JSON-String | "Jones" |
user_timezone |
Nein | Wenn Sie nutzerspezifische Zeitzonen aktiviert haben, legen Sie den Wert der Option Betrachterzeitzone im Drop-down-Menü Zeitzone im eingebetteten Design oder Dashboard fest. Mit diesem Parameter wird die Zeitzone, in der die Inhalte angezeigt werden, nicht direkt geändert. Der Nutzer muss im Drop-down-Menü die gewünschte Zeitzone auswählen. Die gültigen Werte finden Sie auf der Referenzseite zur SSO-Einbettung der Zeitzone. Tipp für das Chatteam: Wenn Sie möchten, dass für Ihre eingebetteten Inhalte standardmäßig die Zeitzone des Nutzers verwendet wird, haben Sie folgende Möglichkeiten: ?query_timezone=user_timezone der Einbettungs-URL hinzu. Beispiel:/embed/dashboards/1?query_timezone=user_timezone |
JSON-String oder null | "US/Pacific" - oder - null |
force_logout_login |
Ja | Wenn ein normaler Looker-Nutzer bereits in Looker angemeldet ist und ein SSO-basiertes Element aufruft, können Sie Folgendes auswählen: 1) Das Element mit seinen aktuellen Anmeldedaten ansehen oder 2) mit den SSO-Anmeldedaten abgemeldet und wieder angemeldet werden. |
Boolesch (wahr oder falsch) | true |
Alle vorherigen Parameter sind erforderlich, aber jeder Parameter mit „Nein“ in der Spalte „Wert erforderlich?“ kann mit einem leeren Wert verwendet werden. Sie können beispielsweise group_ids []
oder user_attributes {}
verwenden.
Unterschrift
So generieren Sie die Signatur:
- Erfassen 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 (erfordert einen leeren Platzhalter)
- Host, gefolgt von
- Alle Werte mit Ausnahme von „Host und URL einbetten“ im JSON-Format formatieren
- Werte mit Zeilenumbrüchen verketten (
\n
) - HMAC-Signierung des verketteten Strings mit Ihrem Looker-Einbettungs-Secret
Codierung
Im letzten Schritt wird die URL codiert.
Vor der Codierung der URL könnte eine korrekt formatierte Einbettungs-URL, die alle möglichen Parameter verwendet, wie folgt 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, könnte sie so aussehen:
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 Endpunkt create_sso_embed_url
. Dieser verwendet eine Reihe von SSO-Einbettungsparametern, die die URL des einzubettenden Inhalts enthalten, und gibt eine vollständige, codierte, kryptografisch signierte SSO-URL zurück.
Wenn Sie diesen API-Endpunkt über einen 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 Domains 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 dann 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 zu Fehlerbehebungszwecken mit einer manuell erstellten SSO-URL zu vergleichen.
Weitere Informationen zur Looker API finden Sie auf der Seite Looker API.
Eingebettete URL testen
Um die finale URL zu testen, fügen Sie sie im Abschnitt Admin von Looker auf der Seite Embed (Einbinden) in das Feld Embed URI Validator (URI einbetten) ein. Mit dieser Option können Sie zwar nicht sehen, ob die von Ihnen festgelegten Daten und Berechtigungen korrekt eingerichtet sind, sie können jedoch prüfen, ob Ihre Authentifizierung korrekt funktioniert.