Activer la délégation Kerberos

La délégation Kerberos permet à Tableau Server d’utiliser les informations d’identification Kerberos de l’observateur qui visualise un classeur ou une vue pour exécuter une requête au nom de l’observateur. Cette option est utile dans les situations suivantes :

  • Vous avez besoin de savoir qui accède aux données (le nom de l’utilisateur de type Viewer figurera dans les fichiers journaux d’accès de la source de données).

  • La sécurité de votre source de données s’exerce au niveau ligne. Dans ce cas, des utilisateurs différents accèdent à des lignes différentes.

Sources de données prises en charge

Tableau prend en charge la délégation Kerberos avec les sources de données suivantes :

  • Cloudera : Hive/ Impala
  • Denodo
  • Hortonworks
  • MSAS
  • Oracle
  • PostgreSQL
  • Spark
  • SQL Server
  • Teradata
  • Vertica
  • TIBCO

Exigences

La délégation Kerberos requiert Active Directory.

  • Le magasin d’identités de Tableau Server doit être configuré pour utiliser Active Directory.
  • L’ordinateur sur lequel Tableau Server est installé doit être lié au domaine Active Directory.
  • MIT Kerberos KDC n’est pas pris en charge.
  • Un compte de domaine doit être configuré comme le compte Exécuter en tant que service sur Tableau Server. Consultez Modifier le compte Exécuter en tant que service. Si vos utilisateurs se trouvent dans un domaine Active Directory différent de Tableau Server et de la source de données, l’approbation du domaine doit être configurée. Voir Exigences d’approbation de domaine pour les déploiements Active Directory.
  • Délégation configurée. Accordez des droits de délégation pour le compte Exécuter en tant que service aux SPN (Service Principal Names) de la base de données cible. Le compte Exécuter en tant que service reçoit le droit d’accéder aux ressources pour le compte de l’utilisateur source émetteur.
  • Si vous configurez la délégation sur Tableau Server 2020.2 ou ultérieur avec une source de données Oracle à l’aide d’un connecteur basé sur JDBC, consultez Activer l’authentification Kerberos pour les connecteurs JDBC. Depuis Tableau 2020.2, le connecteur Oracle utilise JDBC.

Création Web et authentification Kerberos des utilisateurs

Lors de la configuration de Se connecter aux données pour une cible donnée, vous pouvez sélectionner l’authentification intégrée ou l’authentification Windows comme méthode d’authentification préférée. Cependant, pour les scénarios de création Web, le comportement par défaut consistera à utiliser le compte de service Kerberos (compte « Exécuter en tant que ») à la place.

Pour activer les informations d’identification de l’utilisateur dans les scénarios de création Web avec délégation Kerberos, vous devez effectuer une configuration supplémentaire à l’aide de TSM. Exécutez les commandes suivantes :

tsm configuration set -k native_api.WebAuthoringAuthModeKerberosDelegation -v true
tsm pending-changes apply

Après avoir effectué cette configuration, la délégation Kerberos devient l’opération par défaut lors de la sélection de l’authentification intégrée avec création Web. Cependant, ce paramétrage n’empêchera pas les créateurs de contenu d’accéder au compte de service. Les créateurs peuvent toujours publier du contenu connecté au compte de service Exécuter en tant que, à l’aide de Tableau Desktop ou d’autres méthodes.

Pour plus d’informations sur le compte Exécuter en tant que service, consultez Accès aux données avec le compte Exécuter en tant que service.

Processus de configuration

Cette section fournit un exemple du processus d’activation de la délégation Kerberos. Le scénario inclut également des exemples de noms pour aider à décrire les relations entre les éléments de configuration.

  1. Sur tous les nœuds Tableau Server, configurez le compte Exécuter en tant qu’utilisateur pour qu’il agisse comme un composant du système d’exploitation. Pour plus d’informations, consultez Activer le compte Exécuter en tant que service pour qu’il fasse office de système d’exploitation.

  2. Tableau Server aura besoin d’un billet de service Kerberos pour la délégation pour le compte de l’utilisateur qui initie l’appel à la base de données. Vous devez créer un compte de domaine qui sera utilisé pour la délégation vers la base de données donnée. Le compte est appelé le compte Exécuter en tant que service. Dans cette rubrique, l’exemple d’utilisateur configuré comme compte de délégation/compte Exécuter en tant que est tabsrv@example.com.

    Le compte doit être configuré avec l’utilisateur et les ordinateurs Active Directory sur un serveur Windows connecté au domaine de l’utilisateur :

    • Ouvrez la page Propriétés pour le compte Exécuter en tant que service, cliquez sur l’onglet Délégation et sélectionnez N’approuver cet utilisateur que pour la délégation aux services spécifiés et Utiliser n’importe quel protocole d’authentification.
  3. Exécutez la commande TSM suivante pour activer la délégation Kerberos :

    tsm configuration set -k wgserver.delegation.enabled -v true

  4. Exécutez la commande TSM suivante pour appliquer les modifications à Tableau Server :

    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.

  5. (Facultatif) Configurez Tableau Server pour utiliser le format principal MIT Kerberos.

    Par défaut, Tableau Server génère des principaux Kerberos à l’aide du nom court Active Directory. Par exemple, si Tableau Server utilise la délégation Kerberos pour un utilisateur dans EXAMPLE.COM, avec un nom EXAMPLE court , le nom principal sera : user@example.

    Si votre base de données s’exécute sous Linux, vous devrez peut-être ajuster le mappage auth_to_local dans krb5.conf. Pour plus d’informations sur la modification du fichier krb5.conf, consultez la Configuration multi-domaines de la délégation Kerberos. Vous pouvez sinon configurer Tableau Server pour utiliser le nom de domaine complet pour les principaux Kerberos en exécutant les commandes suivantes :

    tsm configuration set -k native_api.protocol_transition_a_d_short_domain -v false --force-keys
    tsm configuration set -k native_api.protocol_transition_uppercase_realm -v true --force-keys
    tsm pending-changes apply
  6. Activez la délégation pour les connexions de données :

    Voir également

    Résoudre les problèmes liés à Kerberos

Merci de vos commentaires!Votre commentaire s été envoyé avec succès. Merci!