Activer l’accès au compte de service Kerberos

Vous pouvez configurer Tableau Server de manière à utiliser un compte de service Kerberos pour accéder à une base de données. Dans ce scénario, Tableau Server se connecte à des bases de données avec un compte de service (également appelé « compte RunAs »).

Pour utiliser l’authentification RunAs sur Tableau Server, vous devez d’abord créer un classeur ou une source de données qui utilise l’authentification intégrée. Lorsque les utilisateurs publient sur Tableau Server, ils ont accès à l’option d’authentification RunAs. Si vous créez une source de données avec la création Web de Tableau Server qui utilise l’authentification intégrée, la source de données utilisera l’authentification RunAs par défaut.

Remarque : l’authentification intégrée est également appelée Authentification Windows sur certains connecteurs. Dans les deux cas, Tableau Server utilise l’authentification Kerberos.

Accès aux données avec le compte Exécuter en tant que service

Pour utiliser l’authentification RunAs, le compte RunAs nécessite des autorisations de lecture et de requête vers des bases de données externes. Par défaut, les utilisateurs de Tableau Server dotés du rôle Creator ou du rôle Explorer (peut publier) disposent d’un accès complet au compte RunAs pour les requêtes vers des bases de données externes.

Par exemple, un utilisateur ayant le rôle Creator peut visualiser toutes les bases de données auxquelles l’accès au compte Exécuter en tant que service a été accordé. Ils peuvent également répertorier les tables et exécuter SQL personnalisé.

Si ’utilisateur Creator spécifie le nom d’hôte de la base de données et sélectionne Authentification intégrée lors de la création d’une nouvelle source de données avec la création Web, l’utilisateur verra s’afficher les bases de données auxquelles l’accès aux RunAs a été accordé.

L’accès à la visualisation des ressources de la base de données n’est pas limité aux utilisateurs qui se connectent à Tableau Server avec la fonction de création Web. Les utilisateurs avancés, qui ont les mêmes rôles que ceux mentionnés ci-dessus et qui connaissent les noms des serveurs de base de données, pourraient ainsi créer avec Tableau Desktop, des classeurs affichant les bases de données auxquelles un accès RunAs a été accordé.

Recommandations

Votre entreprise doit évaluer si l’accès des utilisateurs aux bases de données est acceptable dans ces cas de figure. En général, la réduction de l’utilisation et de la portée du compte Exécuter en tant que service réduira le risque d’accès par inadvertance des utilisateurs au contenu de la base de données. Cependant, cette réduction peut également vous imposer, à vous et à vos utilisateurs, une gestion plus poussée des informations d’identification.

Évaluez les recommandations suivantes dans le contexte des besoins de votre entreprise et de vos politiques d’accès aux données.

  • Tout d’abord, assurez-vous que vous faites confiance à tous les utilisateurs dotés des rôles Creator ou Explorer (peut publier). Vous dépendrez de ces utilisateurs pour effectuer des actions dans Tableau avec intégrité.
  • Si vous ne pouvez pas faire confiance à tous vos utilisateurs ayant des droits de publication sur des sources de données accessibles par le compte Exécuter en tant que service, vous devriez envisager d’intégrer des informations d’identification pour ces sources de données.
  • Si une source de données n’est pas configurée pour les actualisations d’extraits automatiques, c’est-à-dire que l’accès à la source de données se fait principalement sous forme de connexion en direct, vous pouvez alors utiliser la délégation Kerberos. Pour connaître les exigences, consultez Activer la délégation Kerberos.

Exigences

  • MIT Kerberos n’est pas pris en charge.
  • Le compte Exécuter en tant que service doit disposer d’un accès en lecture à la base de données cible.

Processus de configuration

Cette section fournit un exemple du processus d’activation du compte de service Kerberos.

  1. Créez un compte utilisateur de domaine pour faire office de compte Exécuter en tant que service. Ce compte doit disposer d’un accès en lecture à la base de données cible.

    Dans l’exemple proposé ici, le compte Exécuter en tant que service est le nom UPN (User Principal Name) intitulé tabsrv@example.com.

  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 :

    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. Le fichier keytab doit être lisible par l’utilisateur non privilégié. L’utilisateur non privilégié par défaut créé par le programme d’installation Tableau est tableau.

    Si vous exécutez Tableau Server dans un déploiement multinœuds, vous devez exécuter les commandes suivantes sur chaque nœud du groupement :

    mkdir /var/opt/tableau/tableau_server/keytab                
    sudo cp -p tabsrv-runas.keytab /var/opt/tableau/tableau_server/keytab                 
    sudo chown $USER /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab                  
    chgrp tableau /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab                  
    chmod g+r /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab 
    
  4. Exécutez les commandes TSM suivantes pour activer l’accès RunAs, configurer le compte RunAs et associer le fichier keytab avec le compte de service.

    tsm configuration set -k features.RunAsAuthLinux -v true --force-keys
    tsm configuration set -k native_api.datasource_runas_principal -v tabsrv@EXAMPLE.COM --force-keys
    tsm configuration set -k native_api.datasource_runas_keytab_path -v /var/opt/tableau/tableau_server/keytab/tabsrv-runas.keytab --force-keys			
  5. Exécutez la commande TSM suivante pour appliquer les modifications au déploiement 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.

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