Configurer Azure AD pour OAuth et l’authentification moderne
Les connecteurs Azure Synapse, Azure SQL Database, Azure Databricks, Azure Data Lake Gen2, OneDrive et SharePoint Online et SharePoint Lists (JDBC) prennent en charge l’authentification via Azure AD en configurant un client OAuth pour Tableau Server.
Remarque : Les jetons d’actualisation à usage unique (parfois appelés jetons d’actualisation en continu ou rotation des jetons d’actualisation) ne sont pas pris en charge pour les connexions OAuth à Tableau pour le moment. La prise en charge de ces jetons est prévue pour une future version.
Remarque : la prise en charge d’OAuth pour Azure AD n’est possible qu’avec le pilote Microsoft SQLServer 17.3(Le lien s’ouvre dans une nouvelle fenêtre) et ultérieur.
Étape 1 : Enregistrer le client OAuth pour Azure
Suivez les étapes ci-dessous pour enregistrer et configurer une application OAuth pour Azure sous un locataire Azure spécifique.
- Connectez-vous au Portail Azure.
- Si vous avez accès à plusieurs locataires, sélectionnez le locataire dans lequel vous souhaitez enregistrer une demande.
- Recherchez et sélectionnez Azure Active Directory.
- Sous Gérer, sélectionnez Enregistrements d’applications, puis sélectionnez Nouvel enregistrement.
- Entrez « Tableau Server OAuth » ou une valeur similaire comme nom.
- Dans le champ Types de comptes pris en charge de la page d’enregistrement de l’application, sélectionnez qui peut utiliser cette application.
- Sous Rediriger l’URI (facultatif), choisissez Web, puis saisissez l’adresse Internet de votre serveur suivie de la chaîne,
/auth/add_oauth_token
. - Sélectionnez Enregistrer. Une fois l’enregistrement terminé, le portail Azure affiche le volet Vue d’ensemble de l’inscription de l’application, qui inclut son ID d’application (client). Également appelée ID client, cette valeur identifie de manière unique votre application dans la plateforme d’identité Microsoft.
- Copiez la valeur, elle sera utilisée comme champ
[your_client_id]
dans les étapes suivantes. - Sélectionnez Certificats et secrets dans la barre de gauche, puis choisissez Nouveau secret client.
- Ajoutez une a description du secret.
- Sélectionnez Durée de vie du secret client.
- Choisissez Ajouter, puis copiez le secret. Le secret sera utilisé comme
[your_client_secret]
dans les étapes suivantes. - Sélectionnez Autorisations API dans la barre de gauche.
- Choisissez Ajouter des autorisations.
- Sélectionnez Microsoft Graph.
- Choisissez Autorisations déléguées.
- Sous Sélectionner les autorisation , sélectionnez toutes les autorisations OpenId (courriel, offline_access, openid, et profile).
- Choisissez Ajouter des autorisations.
- Ajoutez des autorisations supplémentaires. Suivez les étapes suivantes pour le(s) connecteur(s) que vous activez :
- Azure SQL Database
- Cliquez sur Ajouter une autorisation.
- Sélectionnez Mes API.
- Cliquez sur Azure SQL Database, puis sur Autorisations déléguées.
- Sélectionnez user_impersonation puis cliquez sur Ajouter des autorisations.
- OneDrive et SharePoint Online
- Cliquez sur Ajouter une autorisation.
- Sélectionnez Microsoft Graph.
- Cliquez sur Autorisations déléguées.
- Sous Sélectionner les autorisations, dans la zone de recherche du filtre, saisissez puis ajoutez les autorisations suivantes :
- Files.Read.All
- Sites.Read.All
- User.Read
- Listes SharePoint (JDBC)
- Cliquez sur Ajouter une autorisation.
- Sélectionnez Microsoft Graph.
- Cliquez sur Autorisations déléguées.
- Sous Sélectionner les autorisations, dans la zone de recherche du filtre, saisissez puis ajoutez l’autorisation User.Read.
- Cliquez de nouveau sur Ajouter une autorisation.
- Sélectionnez SharePoint.
- Cliquez sur Autorisations déléguées.
- Développez la section AllSites, puis sélectionnez et ajoutez l’autorisation AllSites.Manage.
- Azure SQL Database
Remarque : si vous souhaitez utiliser l’ID client et le secret client de votre application pour des comptes sous différents locataires, choisissez la deuxième option (multilocataire).
Par exemple : https://your_server_url.com/auth/add_oauth_token
Étape 2 : Configurer Tableau Server pour Azure
La configuration de Tableau Server nécessite l’exécution d’une commande Tableau Server Manager (TSM). Le lac de données Azure Data Gen2 nécessite un ensemble de commandes différent de la commande commune qui est exécutée pour Azure Synapse, Azure SQL Database ou Azure Databricks.
Configurer le client OAuth par défaut pour Azure Data Lake Storage Gen2
Pour configurer Tableau Server pour Data Lake Storage Gen2, vous devez utiliser les paramètres de configuration suivants :
- ID Client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour
[your_client_id]
dans la première commande tsm ci-dessous. - Secret client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour
[your_client_secret]
dans la deuxième commande tsm. - URL de Tableau Server : entrez votre URL Tableau Server, par exemple
https://myco.com
. Copiez cette valeur pour[your_server_url]
dans la troisième commande tsm.
Exécutez les commandes tsm suivantes pour configurer Tableau Server OAuth pour Azure Data Data Lake Storage Gen2 :
tsm configuration set -k oauth.azuredatalake_storage_gen2.client_id -v [your_client_id] --force-keys
tsm configuration set -k oauth.azuredatalake_storage_gen2.client_secret -v [your_client_secret] --force-keys
tsm configuration set -k oauth.azuredatalake_storage_gen2.redirect_uri -v http://[your_server_url]/auth/add_oauth_token --force-keys
tsm pending-changes apply
Configurer le client par défaut pour Azure Synapse, Azure SQL Database ou Databricks
Pour configurer Tableau Server, vous devez avoir les paramètres de configuration suivants :
- ID client Azure OAuth : généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour
[your_client_id]
dans la commande tsm. - Secret client Azure OAuth : généré à partir de la procédure dans l’étape 1. Copiez cette valeur pour
[your_client_secret]
dans la deuxième commande tsm. - URL de Tableau Server : il s’agit de votre URL Tableau Server, par exemple
https://myserver.com
. Copiez cette valeur pour[your_server_url]
dans la troisième commande tsm. - ID de configuration : il s’agit de la valeur du paramètre
oauth.config.id
de la commande tsm suivante. Valeurs valides :- Azure Synapse :
azure_sql_dw
- SQL Azure Database :
azure_sqldb
- Databricks :
databricks
- Azure Synapse :
Exécutez les commandes tsm suivantes pour configurer Azure AD pour Azure Synapse, Azure SQL Database ou Databricks. Par exemple, pour configurer Azure Synapse :
tsm configuration set -k oauth.config.clients -v "[{\"oauth.config.id\":\"azure_sql_dw\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}]" --force-keys
tsm pending-changes apply
Configurer un client OAuth par défaut pour OneDrive et SharePoint Online
Pour configurer Tableau Server pour OneDrive et SharePoint Online, vous devez utiliser les paramètres de configuration suivants :
- ID Client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour [your_client_id] dans la première commande tsm.
- Secret client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour [your_client_secret] dans la deuxième commande tsm.
- URL de Tableau Server : il s’agit de votre URL Tableau Server, par exemple https://myco.com. Copiez cette valeur pour [your_client_url] dans la troisième commande tsm.
Exécutez les commandes tsm suivantes pour configurer Tableau Server OAuth pour OneDrive et SharePoint Online :
tsm configuration set -k oauth.onedrive_and_sharepoint_online.client_id -v [your_client_id] --force-keys
tsm configuration set -k oauth.onedrive_and_sharepoint_online.client_secret -v [your_client_secret] --force-keys
tsm configuration set -k oauth.onedrive_and_sharepoint_online.redirect_uri -v http://[your_server_url]/auth/add_oauth_token --force-keys
tsm pending-changes apply
Configurer un client OAuth par défaut pour les listes SharePoint (JDBC)
Pour configurer Tableau Server pour les listes SharePoint (JDBC), vous devez disposer des paramètres de configuration suivants :
- ID Client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour [your_client_id] dans la première commande tsm.
- Secret client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour [your_client_secret] dans la première commande tsm.
- URL de Tableau Server : il s’agit de votre URL Tableau Server, par exemple https://myco.com. Copiez cette valeur pour [your_client_url] dans la première commande tsm.
Exécutez les commandes tsm suivantes pour configurer Tableau Server OAuth pour les listes SharePoint (JDBC) :
tsm configuration set -k oauth.config.clients -v "[{\"oauth.config.id\":\"cdata_sharepoint\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}]" --force-keys
tsm pending-changes apply
Configurer un client OAuth par défaut pour OneDrive (obsolète)
Pour configurer Tableau Server pour OneDrive (obsolète), vous devez disposer des paramètres de configuration suivants :
- ID Client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour [your_client_id] dans la première commande tsm.
- Secret client Azure OAuth : cet ID est généré à partir de la procédure décrite dans l’étape 1. Copiez cette valeur pour [your_client_secret] dans la deuxième commande tsm.
- URL de Tableau Server : il s’agit de votre URL Tableau Server, par exemple https://myco.com. Copiez cette valeur pour [your_client_url] dans la troisième commande tsm.
Pour continuer, exécutez les commandes tsm suivantes pour configurer Tableau Server OAuth pour OneDrive (obsolète) :
tsm configuration set -k oauth.onedrive.client_id -v [your_client_id] --force-keys
tsm configuration set -k oauth.onedrive.client_secret -v [your_client_secret] --force-keys
tsm configuration set -k oauth.onedrive.redirect_uri -v http://[your_server_url]/auth/add_oauth_token --force-keys
tsm pending-changes apply
Scénarios de redémarrage du serveur
Après avoir configuré un client OAuth par défaut, les scénarios suivants peuvent se produire.
- Une invite de redémarrage s’affiche si les modifications en attente nécessitent un redémarrage du serveur.
- Vous pouvez supprimer l’invite à l’aide de l’option
--ignore-prompt
, mais cela n’arrête pas le redémarrage. - Si les modifications ne nécessitent pas de redémarrage, les modifications sont appliquées sans invite. Pour plus d’informations, consultez tsm pending-changes apply.
Configuration de plusieurs connecteurs
Si vous avez plusieurs connecteurs à configurer, vous devez tous les inclure dans une seule commande. Par exemple :
tsm configuration set -k oauth.config.clients -v "[{\"oauth.config.id\":\"azure_sql_dw\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}, {\"oauth.config.id\":\"azure_sqldb\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}, {\"oauth.config.id\":\"databricks\", \"oauth.config.client_id\":\"[your_client_id]\", \"oauth.config.client_secret\":\"[your_client_secret]\", \"oauth.config.redirect_uri\":\"[your_server_url]/auth/add_oauth_token\"}]" --force-keys
tsm pending-changes apply
Configurer OAuth personnalisé pour un site
Vous pouvez configurer des clients Azure Data Lake Storage Gen2, Azure Synapse, Azure SQL Database, Databricks Oauth, OneDrive et SharePoint Online et Listes Sharepoint (JDBC) personnalisés pour un site.
Envisagez de configurer un client OAuth personnalisé pour 1) remplacer un client OAuth s’il est configuré pour le serveur ou 2) activer la prise en charge de la connexion sécurisée aux données qui nécessitent des clients OAuth uniques.
Lorsqu’un client OAuth personnalisé est configuré, la configuration au niveau du site est prioritaire sur toute configuration côté serveur et toutes les nouveaux identifiants OAuth créés utilisent le client OAuth au niveau du site par défaut. Aucun redémarrage de Tableau Server n’est requis pour que les configurations prennent effet.
Important : Les identifiants OAuth existants établis avant la configuration du client OAuth personnalisé sont utilisables temporairement, mais les administrateurs de serveur et les utilisateurs doivent mettre à jour leurs identifiants enregistrés pour garantir un accès ininterrompu aux données.
1 : Préparer l’ID client OAuth, le secret client, et rediriger l’URL
Avant de pouvoir configurer le client OAuth personnalisé, vous avez besoin des renseignements répertoriés ci-dessous. Une fois ces renseignements préparés, vous pouvez enregistrer le client OAuth personnalisé pour le site.
ID client OAuth et secret client : enregistrez d’abord le client OAuth auprès du fournisseur de données (connecteur) pour récupérer l’ID client et le secret générés pour Tableau Server.
URL de redirection : notez l’URL de redirection correcte. Vous en aurez besoin pendant le processus d’inscription à l’Étape 2 ci-dessous.
https://<your_server_name> .com/auth/add_oauth_token
Par exemple, https://example.com/auth/add_oauth_token
2 : Enregistrer l’ID client OAuth et le secret client
Suivez la procédure décrite ci-dessous pour enregistrer le client OAuth personnalisé sur le site.
Connectez-vous à votre site Tableau Server à l’aide de vos identifiants d’administrateur de et accédez à la page Paramètres.
Sous Registre des clients OAuth, cliquez sur le bouton Ajouter un client OAuth.
Saisissez l’information requise, y compris l’information de l’Étape 1 ci-dessus :
Dans Type de connexion, sélectionnez le connecteur dont vous souhaitez configurer le client OAuth personnalisé.
L’URL de l’instance OAuth est requis si plusieurs clients OAuth sont enregistrés. Sinon, c’est facultatif.
Pour l’ID client , la clé secrète client et l’URL de redirection, saisissez l’information que vous avez préparée à l’Étape 1 ci-dessus.
Cliquez sur le bouton Ajouter un client OAuth pour terminer le processus d’enregistrement.
(Facultatif) Répétez l’Étape 3 pour tous les connecteurs pris en charge.
- Cliquez sur le bouton Enregistrer en bas ou en haut de la page Paramètres pour enregistrer les modifications.
3 : Valider et mettre à jour les identifiants enregistrés
Pour garantir un accès ininterrompu aux données, vous (et les utilisateurs de votre site) devez supprimer les identifiants enregistrés précédemment et les ajouter à nouveau pour utiliser le client OAuth personnalisé pour le site.
Accédez à votre page Paramètres de Mon compte.
Sous Informations d’identification enregistrées pour les sources de données, procédez comme suit :
Cliquez sur Supprimer en regard des informations d’identification enregistrées existantes pour le connecteur dont vous avez configuré le client OAuth personnalisé à l’Étape 2 ci-dessus.
À côté du nom du connecteur, cliquez sur Ajouter et suivez les invites pour 1) vous connecter au client OAuth personnalisé configuré à l’Étape 2 ci-dessus et 2) enregistrer les identifiants les plus récents.
4 : Indiquer aux utilisateurs de mettre à jour leurs identifiants enregistrés
Veillez à demander aux utilisateurs de votre site de mettre à jour leurs identifiants enregistrés pour le connecteur dont vous avez configuré le client OAuth personnalisé à l’Étape 2 ci-dessus. Les utilisateurs du site peuvent utiliser la procédure décrite dans Mettre à jour les identifiants enregistrés pour mettre à jour leurs identifiants enregistrés.
Proxy de transfert pour l’authentification OAuth
Pour plus d’informations sur la configuration d’un proxy de transfert avec authentification OAuth pour Tableau Server (Windows uniquement), consultez Configurer un proxy de transfert pour l’authentification OAuth(Le lien s’ouvre dans une nouvelle fenêtre) dans l’aide de Tableau.