OpenID Connect

Sie können Tableau Server zur Unterstützung von OpenID Connect für SSO (Single Sign-on) konfigurieren. OpenID Connect ist ein Standardauthentifizierungsprotokoll, über das sich Benutzer bei einem Identitätsanbieter (Identity Provider, IdP) wie beispielsweise Google oder Salesforce anmelden können. Nach der erfolgreichen Anmeldung bei ihrem IdP sind Benutzer dann automatisch bei Tableau Server angemeldet.

Die Konfiguration von OpenID Connect erfolgt in mehreren Schritten. Die Themen in diesem Abschnitt enthalten allgemeine Informationen zur Verwendung von Tableau Server mit OIDC und den Ablauf zur Konfiguration des IdPs und von Tableau Server.

Hinweis: Sofern nicht anders angegeben, gelten Informationen über die OIDC-Authentifizierung sowohl für die OIDC-Authentifizierung, die während der Einrichtung von Tableau Server in TSM konfiguriert wird, als auch für die OIDC-Authentifizierung, die mit Identitätspools(Link wird in neuem Fenster geöffnet) konfiguriert wird.

Authentifizierungsübersicht

In diesem Abschnitt wird der Authentifizierungsprozess via OpenID Connect (OIDC) mit Tableau Server beschrieben.

Ein Diagramm, das die Interaktion zwischen Tableau Server, Clients und OpenID Connect veranschaulicht.

1. Ein Benutzer versucht, sich von einem Client-Computer aus bei Tableau Server anzumelden.

2. Tableau Server leitet die Anforderung zur Authentifizierung an das IdP-Gateway weiter.

3. Der Benutzer wird zur Eingabe der Anmeldeinformationen aufgefordert und authentifiziert sich erfolgreich beim Identitätsanbieter. Der IdP gibt als Antwort eine Umleitungs-URL zu Tableau Server zurück. Die Umleitungs-URL enthält einen Autorisierungsscode für den Benutzer.

4. Der Client wird zu Tableau Server umgeleitet und legt den Autorisierungscode vor.

5. Tableau Server präsentiert dem IdP den Autorisierungscode des Clients zusammen mit seinen eigenen Kundenanmeldeinformationen. Tableau Server sind ebenfalls Kunde des IdP. Dieser Schritt soll Spoofing oder Man-in-the-Middle-Angriffe verhindern.

6. Der IdP gibt ein Zugriffstoken und ein ID-Token an Tableau Server zurück.

  • JSON-Webtoken-Validierung (JWT): Tableau Server führt standardmäßig eine Validierung des IdP-JWTs durch. Während der Erkennung ruft Tableau Server die öffentlichen Schlüssel ab, die durch jwks_uri im Discovery-Dokument der IdP-Konfiguration angegeben sind. Tableau Server stellt sicher, dass das ID-Token nicht abgelaufen ist, und überprüft anschließend die JSON-Websignatur (JWS), den Aussteller (IdP) und die Client-ID. Mehr über den JWT-Prozess erfahren Sie in der OpenID-Dokumentation, 10. Signaturen und Verschlüsselung(Link wird in neuem Fenster geöffnet), und im von der IETF vorgeschlagenen Standard JSON-Webtoken(Link wird in neuem Fenster geöffnet). Es wird empfohlen, die JWT-Validierung aktiviert zu lassen, es sei denn, sie wird von Ihrem Internetdienstanbieter nicht unterstützt.

  • Das ID-Token ist ein Satz an Attribut-Schlüssel-Paaren für den Benutzer. Die Schlüssel-Paare werden als Ansprüche bezeichnet. Im Folgenden finden Sie einen Identitätsanbieteranspruch für einen Benutzer:

    "sub"                     : "7gYhRR3HiRRCaRcgvY50ubrtjGQBMJW4rXbpPFpg2cptHP62m2sqowM7G1LwjN5"
    "email"                   : "alice@example.com",
    "email_verified"          : true,
    "name"                    : "Alice Adams",
    "given_name"              : "Alice",
    "family_name"             : "Adams",
    "phone_number"            : "+359 (99) 100200305",
    "profile"                 : "https://tableau.com/users/alice"		

7. Tableau Server identifiziert den Benutzer anhand der IdP-Ansprüche und schließt die Authentifizierungsanforderung aus Schritt 1 ab.Tableau Server sucht per Abgleich von „sub“ (Subject-ID) nach dem Kontoeintrag, der im Repository gespeichert ist, um das richtige Benutzerkonto zu identifizieren. Wenn kein Benutzerkonto mit dem „sub“-Anspruchswert gespeichert ist, sucht Tableau Server im Repository nach einem Benutzernamen, der mit dem „email“-Anspruch vom IdP übereinstimmt. Wenn der Benutzernamenabgleich erfolgreich ist, speichert Tableau Server den entsprechenden „sub“-Anspruch in dem Datensatz des Benutzers im Repository.Tableau Server kann so konfiguriert werden, dass für diesen Prozess unterschiedliche Ansprüche verwendet werden. Siehe Anforderungen für die Verwendung von OpenID Connect.

8. Tableau Server autorisiert den Benutzer.

Funktionsweise von Tableau mit OpenID Connect

OpenID Connect (OIDC) ist ein flexibles Protokoll, das zahlreiche Optionen für den Informationsaustausch zwischen einem Dienstanbieter (hier Tableau Server) und einem Identitätsanbieter (IdP) unterstützt. Die folgende Liste enthält Details zur Implementierung von OpenID Connect in Tableau Server. Diese Details vermitteln Ihnen ein besseres Verständnis dafür, welche Arten von Informationen von Tableau Server gesendet und erwartet werden, und wie ein IdP konfiguriert wird.

  • Tableau Server unterstützt nur den OpenID Authorization Code Flow (OpenID-Autorisierungscode-Ablauf), der in der finalen Spezifikation zu OpenID Connect(Link wird in neuem Fenster geöffnet) beschrieben ist.

  • Tableau Server setzt auf die Verwendung eines Discovery-Vorgangs oder einer Anbieter-URL, um die Metadaten zum OpenID-Anbieter abzurufen.Alternativ dazu können Sie auch ein statisches Discovery-Dokument in Tableau Server hosten. Weitere Informationen finden Sie unter Konfigurieren von Tableau Server für OpenID Connect.

  • Tableau Server unterstützt die client_secret_basic und client_secret_post-Clientauthentifizierung.

  • Tableau Server erwartet einen kid-Wert im JOSE-Header des id_token-Attributs. Dieser Wert wird mit einem der Schlüssel im JWK-Satz-Dokument abgeglichen, dessen URI durch den jwks_uri-Wert im OpenID Discovery-Dokument angegeben wird. Ein kid-Wert muss vorhanden sein, auch wenn das JWK-Satz-Dokument nur einen Schlüssel enthält.

  • Tableau Server Bietet keine OpenID-Unterstützung für den JWK x5c-Parameter oder die Verwendung von X.509-Zertifikaten

  • In der Standardeinstellung ignoriert Tableau Server Proxy-Einstellungen und sendet alle OpenID-Anforderungen direkt an den IdP.

    Wenn Tableau Server für die Verwendung eines Forward-Proxys für die Verbindung mit dem Internet konfiguriert ist, müssen Sie zusätzliche Änderungen vornehmen, wie unter Konfigurieren von Tableau Server für OpenID Connect beschrieben.