Configurer OAuth pour les connexions Snowflake

Il existe plusieurs façons de configurer OAuth pour les connexions Snowflake, selon la version de Tableau 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.
  • À partir de Tableau 2020.4, 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é.
  • À 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.

Enregistrer un client OAuth avec Snowflake

Pour utiliser une configuration OAuth personnalisée dans Tableau Server, vous devez d’abord enregistrer votre client OAuth et obtenir un ID client et un secret client pour terminer la configuration. 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 vous être enregistré, 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_server_url.com/auth/add_oauth_token
Par exemple : https://example.com/auth/add_oauth_token

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 à 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 :

    Remarque : si vous apportez ces modifications de configuration dans Tableau Server 2021.1 et versions ultérieures, notez que le format de la valeur oauth.snowflake.clients a changé.

    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é 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 nouvelles informations d’identification OAuth créé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 prennent effet.

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

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

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 Enregistrer le client OAuth avec Snowflake, ci-dessus.

  • 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 et le secret client OAuth

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 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. 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 l’ID client , le Secret client et l’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. (Facultatif) Répétez l’Étape 3 pour tous les connecteurs pris en charge.

  6. 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 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 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 ci-dessus et 2) enregistrer les informations d’identification les plus récentes.

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 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