Nutzen des eigenen Identitätsanbieters mit Amazon Athena
Ab Tableau 2023.2 können Sie OAuth 2.0/OIDC verwenden, um Identitäten von einem externen Identitätsanbieter mit Amazon Athena zu verbinden.
Je nach Identitätsanbieter sind unterschiedliche Schritte zur Konfiguration der Integration erforderlich. Tableau bietet lediglich detaillierte Anweisungen zur Konfiguration von Tableau-Produkten. Anweisungen zum Konfigurieren Ihres Identitätsanbieters (z. B. Okta) finden Sie in der Hilfe und den Tutorials des jeweiligen Produkts. Dieses Dokument bietet einen allgemeinen Überblick über den Konfigurationsprozess.
Hinweis: Schritte und Links, die außerhalb der Tableau- und Salesforce-Inhalte liegen, sind möglicherweise nicht aktuell oder korrekt.
Konfigurieren des Identitätsanbieters (IDP)
Erstellen Sie OAuth-Clients auf dem IDP für Tableau Desktop und Tableau Server. Der Desktop-Client aktiviert PKCE(Link wird in neuem Fenster geöffnet) und verwendet http://localhost-Weiterleitungen.
Fügen Sie benutzerdefinierte Ansprüche hinzu, die für die Autorisierung von Rollen verwendet werden sollen. Weitere Einzelheiten zu Ansprüchen und Bereichen finden Sie unter Scopes vs Claims(Link wird in neuem Fenster geöffnet) (Unterschied zwischen Bereichen und Ansprüchen).
Erstellen Sie die Tableau OAuth-Konfigurationsdatei. Ausführliche Informationen hierzu finden Sie unter OAuth Configuration and Usage(Link wird in neuem Fenster geöffnet) (OAuth-Konfiguration und -Verwendung) auf Github. Beispiele dazu finden Sie hier. Stellen Sie sicher, dass Sie den Tableau OAuth-Konfigurations-IDs "custom_" voranstellen.
Installieren Sie Tableau OAuth-Konfigurationsdateien auf Tableau Desktop-Computern, Tableau Server- und Tableau Cloud-Sites, wie im oben verlinkten Thema zur OAuth-Konfiguration erläutert.
Konfigurieren des IDP auf AWS
- Erstellen Sie die IDP-Entität. Siehe die Amazon-Dokumente Web Identity Federation, Erstellen eines OIDC-Identitätsanbieters.
- Der IDP muss für den Verbund mit Athena auf eine Weise konfiguriert werden, die mit dem Treiber-Plug-in von Tableau funktioniert. Die folgenden Anbieterinformationen werden sowohl für Tableau Server- als auch für Tableau Desktop-Schemas verwendet:
AwsCredentialsProviderClas=com.simba.athena.iamsupport.plugin.JwtCredentialsProvider
role_session_name=AthenaJWT - Erstellen Sie Rollen und Richtlinien speziell für den IDP. Sehen Erstellen einer Rolle für OIDC in den AWS-Dokumenten.
Konfigurieren von Rollen für Athena
Fügen Sie die für Athena erforderlichen Richtlinien bei. Es gibt viele Möglichkeiten, dies durchzuführen. Eine Möglichkeit wäre, benutzerdefinierte Ansprüche zu verwenden. Sie können benutzerdefinierte Ansprüche im openID-Token verwenden, um Rollen zu autorisieren. Diesen Rollen wird Zugriff auf andere Ressourcen gewährt. Weitere Informationen finden Sie unter:
Lernprogramm: Konfigurieren des Verbundzugriffs für Okta-Benutzer auf Athena mithilfe von Lake Formation und JDBC.
Fein abgestufter Zugriff auf Datenbanken und Tabellen im AWS Glue Data Catalog.
Herstellen einer Verbindung zu Athena
Der Benutzer muss den zu erwartenden AWS Role ARN (Amazon Resource Name) angeben und dann unter OAuth Provider (OAuth-Anbieter) die zuvor installierte OAuth-Konfiguration auswählen. Beachten Sie, dass das Dropdown-Menü zur Auswahl einer Konfiguration nur angezeigt wird, wenn mehrere Konfigurationen zur Auswahl stehen.
Bei ordnungsgemäßer Konfiguration wird der Benutzer zum IDP weitergeleitet, um Token für Tableau zu authentifizieren und zu autorisieren. Tableau erhält OpenID- und Refresh-Tokens. AWS ist in der Lage, das Token und die Signatur vom IDP zu validieren, die Ansprüche vom Token zu extrahieren, die Zuordnung von Ansprüchen zur IAM-Rolle abzurufen und Tableau die Übernahme der Rolle im Namen des Benutzers entweder zu erlauben oder zu blockieren.
Beispiel: AssumeRoleWithWebIdentity
Token
In der Standardeinstellung übergibt Athena OAuth IAM das ID-Token an den Treiber. Für lokale Kunden – inklusive von Kunden, die Tableau Bridge verwenden – können Sie stattdessen eine TDC-Datei verwenden, um das Zugriffstoken zu übergeben.
<connection-customization class='athena' enabled='true' version='10.0'> <vendor name='athena' /> <driver name='athena' /> <customizations> <customization name='CAP_OAUTH_FEDERATE_ACCCESS_TOKEN' value='yes'/> </customizations> </connection-customization>
Weitere Informationen zur Konfiguration und Installation von TDC-Dateien finden Sie unter Anpassen und Optimieren von Verbindungen(Link wird in neuem Fenster geöffnet).
Okta-Konfiguration
Wenn Sie Okta verwenden, ist es besser, einen "benutzerdefinierten Autorisierungsserver" anstelle des "Organisationsautorisierungsservers" zu verwenden. Die benutzerdefinierten Autorisierungsserver sind flexibler. Standardmäßig wird ein benutzerdefinierter Autorisierungsserver erstellt, der "Standard" heißt. Die Autorisierungs-URL sieht wie das folgende Beispiel aus.
https://${yourOktaDomain}/oauth2/{authServerName}/v1/authorize