Configurer OAuth pour les connexions Snowflake sur Tableau Server

Il existe plusieurs façons de configurer OAuth pour les connexions Snowflake, selon la version de Tableau Server que vous utilisez et le nombre de sites que vous mettez à jour. Cette rubrique couvre la configuration de chaque option disponible.

  • Pour toutes les versions de Tableau jusqu’à la version 2024.1 incluse, le connecteur Tableau Snowflake utilise par défaut un proxy OAuth hébergé dans AWS (GALOP), qui utilise un ID client et un secret communs. Vous pouvez éventuellement configurer Tableau Server de manière à utiliser un nouveau service OAuth qui s’exécute au même emplacement que cette instance de Tableau. Cela nécessite de fournir vos propres ID et secret client, ce que l’on appelle OAuth personnalisé et que vous pouvez configurer en suivant les instructions ci-dessous.

  • À compter de la version 2024.2, le proxy GALOP sera obsolète et les instructions de configuration d’OAuth personnalisé ci-dessous seront obligatoires, car le service OAuth local sera désormais utilisé pour l’authentification.

  • Pour Tableau Desktop et Tableau Cloud versions 2024.3 et au-delà, vous pouvez configurer un IdP tiers (OAuth externe) pour Snowflake. Pour plus d’informations, consultez OAuth externe pour Snowflake.

Les avantages procurés par OAuth personnalisé incluent :

  • Amélioration de la sécurité

  • Vous pouvez utiliser OAuth dans des environnements isolés qui ne peuvent pas se connecter au proxy OAuth (GALOP).

  • Vous n’avez pas besoin d’ajouter les adresses IP GALOP à la liste d’autorisations pour exécuter le flux OAuth dans des VPC AWS PrivateLink ou Azure Private Link.

Étape 1 : Configurer et enregistrer le client OAuth avec Snowflake

Pour utiliser une configuration OAuth personnalisée dans Tableau Server, vous devez d’abord configurer et enregistrer votre client OAuth et obtenir un ID client et un secret client dans Snowflake. Pour les versions de Tableau Server 2024.2 et ultérieures, cette étape est requise, quelle que soit l’option de configuration que vous utilisez. Pour enregistrer un client OAuth personnalisé avec Snowflake, suivez la procédure décrite dans Configurer Snowflake OAuth pour les clients personnalisés(Le lien s’ouvre dans une nouvelle fenêtre).

Après avoir enregistré votre client OAuth dans Snowflake en suivant les étapes décrites dans l’article Snowflake (voir le lien ci-dessus), vous utiliserez les paramètres Snowflake suivants pour configurer Tableau Server :

  • URL d’instance de compte

  • ID client

  • Code secret client

  • URL de redirection

Remarque : l’URL de redirection est la même, qu’elle soit saisie du côté de Snowflake ou de Tableau. Le format est :
https://<your_tableau_server_url>.com/auth/add_oauth_token

Étape 2 : Configurer Tableau Server de manière à utiliser OAuth pour Snowflake

Option 1 : Configurer OAuth pour les connexions Snowflake à l’aide de TSM

Nous vous recommandons d’utiliser cette option lorsque vous devez mettre à jour plusieurs sites Tableau Server à la fois.

Remarque : cette option de configuration ne peut pas être utilisée sur Tableau Cloud.

  1. (Version 2024.1 et versions antérieures) Sur l’ordinateur Tableau Server, exécutez la commande suivante pour activer le service Snowflake OAuth :

    tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true

    Remarque : pour les versions 2024.2 et ultérieures, ignorez l’étape 1, qu’une connexion privée Snowflake soit utilisée ou non.

  2. Copiez, coller et personnalisez la commande suivante dans un éditeur de texte :

    tsm configuration set -k oauth.snowflake.clients -v " [{\"oauth.snowflake.instance_url\":\"https://account.snowflakecomputing.com\", \"oauth.snowflake.client_id\":\"client_id_string\", \"oauth.snowflake.client_secret\":\"client_secret_string\", \"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" }]"

    La clé oauth.snowflake.clients prend un tableau de paires de clés. Chaque élément de la paire de clés doit être encapsulé entre doubles guillemets. Les doubles guillemets doivent être échappés sous la forme \".

    Pour spécifier plusieurs URL d’instance de compte, séparez chaque client OAuth supplémentaire entouré d’accolades ({}) par une virgule (,), comme dans cet exemple :

    tsm configuration set -k oauth.snowflake.clients -v " [{\"oauth.snowflake.instance_url\":\"https://account.snowflakecomputing.com\",\"oauth.snowflake.client_id\":\"client_id_string1\",\"oauth.snowflake.client_secret\":\"client_secret_string1\",\"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" },{\"oauth.snowflake.instance_url\":\"https://account2.snowflakecomputing.com\",\"oauth.snowflake.client_id\":\"client_id_string2\",\"oauth.snowflake.client_secret\":\"client_secret_string2\",\"oauth.snowflake.redirect_uri\":\"http://your_server_url.com/auth/add_oauth_token\" }]"

    Remplacez les valeurs de chaque clé :

    • URL d’instance de compte : oauth.snowflake.instance_url

    • ID client : oauth.snowflake.client_id

    • Secret client : oauth.snowflake.client_secret

    • URL de redirection : oauth.snowflake.redirect_uri

    Remarque : avant d’exécuter la commande, vérifiez soigneusement la syntaxe. TSM ne validera pas cette entrée.

    Copiez la commande dans l’interface en ligne de commande TSM et exécutez la commande.

  3. Entrez la commande suivante pour appliquer les modifications :

    tsm pending-changes apply

    Si les modifications en attente nécessitent un redémarrage du serveur, la commande pending-changes apply affichera une invite pour vous informer qu’un redémarrage va avoir lieu. Cette invite s’affiche même si le serveur est arrêté, mais dans ce cas, il n’y a pas de redémarrage. Vous pouvez supprimer l’invite à l’aide de l’option --ignore-prompt, mais cela ne modifiera pas le comportement de 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.

Option 2 : Configurer OAuth pour les connexions Snowflake par site

Remarque : cette option est également disponible pour Tableau Cloud à partir de la version 2024.2.

Vous pouvez configurer un client Snowflake OAuth personnalisé au niveau du site à l’aide de l’interface utilisateur de Tableau Server.

Envisagez de configurer un client OAuth personnalisé au niveau du site pour :

  1. Remplacer un client OAuth s’il est configuré pour le serveur

  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 informations d’identification OAuth récemment ajoutées utilisent le client OAuth au niveau du site par défaut. Aucun redémarrage de Tableau Server n’est requis pour que les configurations OAuth personnalisées au niveau du site prennent effet.

Important : les informations d’identification OAuth existantes établies avant la configuration du client OAuth personnalisé sont utilisables temporairement, mais les administrateurs et les utilisateurs de Tableau Server doivent mettre à jour leurs informations d’identification enregistrées pour garantir un accès ininterrompu aux données.

Étape 1 : Préparer l’ID client OAuth, le secret client et l’URL de redirection

Avant de pouvoir configurer le client OAuth personnalisé, vous avez besoin des informations répertoriées ci-dessous. Une fois ces informations préparées, vous pouvez enregistrer le client OAuth personnalisé pour le site. Pour plus d’informations, consultez la rubrique Étape 1 : Configurer et enregistrer le client OAuth avec Snowflake ci-dessus.

  • URL d’instance de compte

  • 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’enregistrement à l’Étape 2 : Ajouter un client OAuth au site Tableau Server ci-dessous.

    https://<your_tableau_server_url>.com/auth/add_oauth_token

Étape 2 : Ajouter un client OAuth au site Tableau Server

Suivez la procédure décrite ci-dessous pour enregistrer le client OAuth personnalisé sur le site.

  1. (Version 2024.1 et versions antérieures) Sur l’ordinateur Tableau Server, exécutez les deux commandes suivantes pour activer le service Snowflake OAuth :

    tsm configuration set -k native_api.enable_snowflake_privatelink_on_server -v true

    tsm pending-changes apply

    Remarque : pour les versions 2024.2 et ultérieures, ignorez l’étape 1, qu’une connexion privée Snowflake soit utilisée ou non.

  2. Connectez-vous à votre site Tableau Serveur à l’aide de vos informations d’identification d’administrateur de et accédez à la page Paramètres.

  3. Sous Registre des clients OAuth, cliquez sur le bouton Ajouter un client OAuth.

  4. Saisissez les informations requises, y compris les informations de l’Étape 1 ci-dessus :

    1. Dans Type de connexion, sélectionnez le connecteur dont vous souhaitez configurer le client OAuth personnalisé.

    2. Vous devez indiquer l’URL de l’instance OAuth si plusieurs clients OAuth sont enregistrés (facultatif, si ce n’est pas le cas).

    3. Pour ID client, Secret client et URL de redirection, saisissez les informations que vous avez préparées à l’Étape 1 ci-dessus.

    4. Cliquez sur le bouton Ajouter un client OAuth pour terminer le processus d’enregistrement.

  5. Cliquez sur le bouton Enregistrer en bas ou en haut de la page Paramètres pour enregistrer les modifications.

Étape 3 : Valider et mettre à jour les informations d’identification enregistrées

Pour garantir un accès ininterrompu aux données, vous (et les utilisateurs de votre site) devez supprimer les informations d’identification enregistrées précédemment et les ajouter à nouveau pour utiliser le client OAuth personnalisé pour le site.

  1. Accédez à votre page Paramètres de Mon compte.

  2. Sous Informations d’identification enregistrées pour les sources de données, procédez comme suit :

    1. 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 : Ajouter un client OAuth au site Tableau Server ci-dessus.

    2. À 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 : Ajouter un client OAuth au site Tableau Server ci-dessus et 2) enregistrer les informations d’identification les plus récentes.

Étape 4 : Informer les utilisateurs de mettre à jour leurs informations d’identification enregistrées

Veillez à demander aux utilisateurs de votre site de mettre à jour leurs informations d’identification enregistrées pour le connecteur dont vous avez configuré le client OAuth personnalisé à l’Étape 2 : Ajouter un client OAuth au site Tableau Server ci-dessus. Les utilisateurs du site peuvent utiliser la procédure décrite dans Mettre à jour les informations d’identification enregistrées pour mettre à jour leurs informations d’identification enregistrées.

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.

Merci de vos commentaires !Avis correctement envoyé. Merci