Utiliser votre propre fournisseur d’identité avec Amazon Athena
Depuis Tableau 2023.2, vous pouvez utiliser Oauth 2.0/OIDC pour fédérer l’identité d’un fournisseur d’identité externe dans Amazon Athena.
Selon le fournisseur d’identité, plusieurs étapes sont nécessaires pour configurer l’intégration. Tableau ne fournit que des instructions détaillées sur la manière de configurer les produits Tableau. Ce document présente une vue d’ensemble du processus de configuration.
Remarque :Les étapes et les liens qui ne font pas partie du contenu de Tableau et de Salesforce peuvent ne pas être mis à jour ou être inexacts.
Configurer le fournisseur d’identité (IDP)
Créez des clients OAuth sur le fournisseur d’identité pour Tableau Desktop et Tableau Server. Le client Desktop active PKCE et utilise les redirections http://localhost.
Ajoutez des revendications personnalisées pour l’autorisation des rôles.
Créez le fichier de configuration Tableau Oauth. Consultez la documentation sur github et des exemples ici. N’oubliez pas de préfixer les identifiants de configuration Tableau Oauth avec “custom_”.
Installez les fichiers de configuration Tableau OAuth sur les ordinateurs Tableau Desktop et sur les sites Tableau Server et Tableau Cloud.
Configurer le fournisseur d’identité sur AWS
Créez l’entité de l’IdP. Consultez la documentation Amazon Fédération d’identité Web, Créer un fournisseur d’identité OIDC.
Créez des rôles et des stratégies pour le fournisseur d’identité en particulier. Consultez Créer un rôle pour OIDC sur la documentation AWS.
Configurer des rôles pour Athena
Joignez les stratégies nécessaires pour Athena. Il y a plusieurs façons de procéder, notamment en utilisant des revendications personnalisées. Vous pouvez utiliser des revendications personnalisées dans le jeton openID pour autoriser des rôles. Ces rôles ont accès à d’autres ressources. Pour plus d’informations, consultez :
Tutoriel : Configuration de l’accès fédéré des utilisateurs d’Okta à Athena en utilisant Lake Formation et JDBC.
Accès détaillé aux bases de données et tables dans le AWS Glue Data Catalog.
Connexion à Athena
L’utilisateur doit préciser le rôle ARN à assumer, puis sélectionner la configuration OAuth installée précédemment.
Lorsqu’il est correctement configuré, l’utilisateur est redirigé vers l’IdP pour s’authentifier et autoriser les jetons pour Tableau. Tableau reçoit les jetons openid et les actualise. AWS peut valider le jeton et la signature reçus du fournisseur d’identité, extraire les revendications du jeton, vérifier si les revendications sont associées au rôle IAM, et autoriser ou empêcher Tableau d’assumer le rôle au nom de l’utilisateur.
Exemple : AssumeRoleWithWebIdentity
Jetons
Par défaut, Athena OAuth IAM transmet le jeton d'identification au pilote. Pour les clients sur site, y compris ceux qui utilisent Tableau Bridge, vous pouvez aussi utiliser un fichier TDC pour transmettre le jeton d'accès.
<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>
Pour plus d’informations sur la configuration et l’installation des fichiers .tdc, consultez Personnalisation et optimisation d’une connexion(Le lien s’ouvre dans une nouvelle fenêtre) et Utilisation d’un fichier .tdc avec Tableau Server(Le lien s’ouvre dans une nouvelle fenêtre).
Configuration d’Okta
Si vous utilisez Okta, il est préférable d’utiliser un « serveur d’autorisation personnalisé » plutôt que le « serveur d’autorisation de l’organisation ». Les serveurs d’autorisation personnalisés offrent plus de souplesse. Un serveur d’autorisation personnalisé, appelé « default », est créé par défaut. L’URL d’autorisation ressemble à l’exemple suivant.
https://${yourOktaDomain}/oauth2/{authServerName}/v1/authorize