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
  • Oracle
  • PostgreSQL
  • Spark
  • SQL Server
  • Teradata
  • Vertica

MSAS n’est pas pris en charge sur les plates-formes Linux.

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.

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 Activer l’accès au compte de service Kerberos.

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. 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.
  2. Créez un fichier keytab pour le compte Exécuter en tant que service.

    Par exemple, les commandes suivantes créent un fichier keytab (tabsrv-runas.keytab) à l’aide de l’outil ktutil :

    sudo ktutil
    ktutil:  addent -password -p tabsrv@EXAMPLE.COM -k 2 -e <encryption scheme>

    Les modèles de chiffrement pour cette commande incluent RC4-HMAC, aes128-cts-hmac-sha1-96 et aes256-cts-hmac-sha1-96. Adressez-vous à votre équipe informatique pour identifier le modèle de chiffrement adapté à votre environnement et votre source de données.

    ktutil:  wkt tabsrv-runas.keytab

    Tableau Server utilisera le compte Exécuter en tant que service et le fichier keytab associé pour l’authentification et l’établissement d’une connexion directe à la base de données.

  3. Copiez le fichier keytab sur le répertoire de données Tableau Server et configurez la propriété et les autorisations appropriées. En cas d’exécution dans un déploiement multinœuds, vous devez exécuter les commandes suivantes sur chaque nœud du groupement.

    mkdir /var/opt/keytab                
    sudo cp -p tabsrv-runas.keytab /var/opt/keytab                 
    sudo chown $USER /var/opt/keytab/tabsrv-runas.keytab                  
    chgrp tableau /var/opt/keytab/tabsrv-runas.keytab                  
    chmod g+r /var/opt/keytab/tabsrv-runas.keytab 
    					
  4. Exécutez les commandes TSM suivantes pour activer la délégation Kerberos, configurer le compte de service de délégation et associer le fichier keytab avec le compte de service :

    					
    tsm configuration set -k wgserver.delegation.enabled -v true
    tsm configuration set -k native_api.datasource_impersonation_runas_principal -v tabsrv@EXAMPLE.COM
    tsm configuration set -k native_api.datasource_impersonation_runas_keytab_path -v /var/opt/keytab/tabsrv-runas.keytab
    tsm configuration set -k native_api.protocol_transition_a_d_short_domain -v false
    tsm configuration set -k native_api.protocol_transition_uppercase_realm -v true

    Dans certains cas, TSM peut renvoyer une erreur indiquant --force-keys. Si cette erreur s’affiche, réexécutez la commande en ajoutant le paramètre --force-keys à l’argument.

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

  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!