UiPath Documentation
automation-suite
2.2510
true
Guide d'installation d'Automation Suite sur Linux
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Configurer une authentification Kerberos

Référence des prérequis pour la configuration de l’authentification Kerberos et des étapes de configuration pour Automation Suite.

Prérequis

Pour configurer avec succès l'authentification Kerberos, vous devez remplir les conditions préalables suivantes :

S'assurer que le cluster Automation Suite peut accéder à votre AD

Avant de pouvoir configurer l'authentification Kerberos, travaillez avec vos administrateurs informatiques pour vous assurer que le cluster Automation Suite peut accéder à votre Active Directory (AD).

Les exigences suivantes doivent être remplies :

  • Le cluster Automation Suite doit se trouver sur le même réseau que le domaine AD ;

  • Le DNS doit être configuré correctement sur le réseau afin que le cluster Automation Suite puisse résoudre les noms de domaine AD.

    Remarque :

    Il est essentiel que le cluster Automation Suite puisse résoudre les domain names d'Active Directory. Vous pouvez vérifier cela en exécutant nslookup <AD domain name> sur la machine hôte.

Configuration du compte de service AD pour l'authentification Kerberos

Génération des paramètres keytab et nom d'utilisateur par défaut Kerberos
  1. Connectez-vous avec votre compte d'administrateur AD sur une machine reliée à un domaine Windows.

  2. Exécutez le script keytab-creator.ps1 en tant qu’administrateur.

  3. Saisissez les valeurs suivantes dans le script :

    1. Service Fabric FQDN. Par exemple, uipath-34i5ui35f.westeurope.cloudapp.azure.com.
    2. AD domain FQDN. Par exemple, TESTDOMAIN.LOCAL.
    3. Un compte d'utilisateur AD. Vous pouvez utiliser un compte existant, tel que sAMAccountName, ou vous pouvez autoriser le script à en créer un.

Le fichier de sortie contient les paramètres <KERB_DEFAULT_USERNAME> et <KERB_DEFAULT_KEYTAB> requis par la configuration Kerberos.

Option 2 : manuellement

Contactez votre administrateur AD dans le cas d'un compte utilisateur AD et récupérez les champs <KERB_DEFAULT_USERNAME> et <KERB_DEFAULT_KEYTAB> pour ce compte en procédant suit :

  1. Dans votre serveur AD, créez un nouveau compte utilisateur. Si vous en avez déjà un, passez à l'étape 2.

    1. Dans la console Utilisateurs et ordinateurs Active Directory, ouvrez le menu contextuel du dossier Users (Utilisateurs) , sélectionnez New (Nouveau), puis User (Utilisateur).
    2. Terminez la création du compte utilisateur.
  2. Ouvrez le menu contextuel du compte utilisateur et sélectionnez Propriétés.

  3. Accédez à l'onglet Compte (Account), puis, sous Options du compte (Account options), sélectionnez l'option Ce compte prend en charge l'encodage Kerberos AES 256 bits.

  4. Important : Le keytab généré lors des étapes suivantes deviendra invalide si le mot de passe de l'utilisateur AD a expiré ou bien s'il a été mis à jour. Pensez à vérifier que le Mot passe n'expire jamais (Password never expires) dans les Options de compte (Account options) pour ce compte utilisateur AD. Vous pouvez également mettre à jour le mot de passe lorsqu'il est sur le point d'expirer et générer un nouveau keytab.

  5. Pour générer un fichier keytab pour le SPN, ouvrez PowerShell avec un accès administrateur et exécutez la commande suivante :

    ktpass -princ HTTP/<Service Fabric FQDN>@<AD FQDN in cap> -pass <AD user's password> -mapuser <AD NetBIOS name in cap>\<AD user name> -pType KRB5_NT_PRINCIPAL -out <output file path> -crypto AES256-SHA1
    ktpass -princ HTTP/<Service Fabric FQDN>@<AD FQDN in cap> -pass <AD user's password> -mapuser <AD NetBIOS name in cap>\<AD user name> -pType KRB5_NT_PRINCIPAL -out <output file path> -crypto AES256-SHA1
    

    Certains champs doivent être spécifiés en majuscules. Par exemple :

    ktpass -princ HTTP/uipath-34i5ui35f.westeurope.cloudapp.azure.com@TESTDOMAIN.LOCAL -pass pwd123 -mapuser TESTDOMAIN\aduser -pType KRB5_NT_PRINCIPAL -out c:\krb5.keytab -crypto AES256-SHA1 -setpass
    ktpass -princ HTTP/uipath-34i5ui35f.westeurope.cloudapp.azure.com@TESTDOMAIN.LOCAL -pass pwd123 -mapuser TESTDOMAIN\aduser -pType KRB5_NT_PRINCIPAL -out c:\krb5.keytab -crypto AES256-SHA1 -setpass
    
    Remarque :

    Pour mettre à jour le keytab d'Automation Suite, exécutez la commande avec l'option -setpass . La première fois que vous générez le keytab, vous devez exécuter la commande en tant qu'administrateur de domaine. Cela est nécessaire car la commande met à jour le SPN du compte de service. Pour les mises à jour ultérieures, vous pouvez exécuter la commande en tant qu'utilisateur du domaine si le mappage SPN n'a pas changé.

    Après la génération du keytab, le nom de connexion de l'utilisateur devient HTTP/<Service Fabric FQDN>. Utilisez cette valeur pour le champ <KERB_DEFAULT_USERNAME> dans default_ad_username dans cluster_config.json comme suit :

    "kerberos_auth_config": {
          "enabled": true,
          "ticket_lifetime_in_hour": 8,
          "ad_domain": "AUTOSUITEAD.LOCAL",
          "default_ad_username": "HTTP/sfqakxxxx-ea.infra.uipath-dev.com",
          "default_user_keytab": "BQIAAAB9AAIxxxxxxxxxxxxxxxxxxGRCqh+yQ="
          "enable_integrated_sql_auth": true
    },
    "kerberos_auth_config": {
          "enabled": true,
          "ticket_lifetime_in_hour": 8,
          "ad_domain": "AUTOSUITEAD.LOCAL",
          "default_ad_username": "HTTP/sfqakxxxx-ea.infra.uipath-dev.com",
          "default_user_keytab": "BQIAAAB9AAIxxxxxxxxxxxxxxxxxxGRCqh+yQ="
          "enable_integrated_sql_auth": true
    },
    
    Remarque :

    Le paramètre enable_integrated_sql_auth est défini sur true par défaut. Si vous souhaitez désactiver l'authentification Kerberos pour SQL pour tous les produits, vous devez définir le paramètre sur false.

  6. Encodez le fichier keytab généré en Base64, ouvrez PowerShell et exécutez la commande suivante :

    [Convert]::ToBase64String([System.IO.File]::ReadAllBytes("<path to the generated keytab file>"))
    [Convert]::ToBase64String([System.IO.File]::ReadAllBytes("<path to the generated keytab file>"))
    
  7. Enregistrez le fichier keytab encodé. Vous l’utiliserez lors de la configuration du cluster UiPath® pour Kerberos. Appelons la valeur de l’étape 6 <KERB_DEFAULT_KEYTAB>.

Facultatif : prérequis pour l'authentification SQL

Pour configurer le cluster UiPath® de façon à ce qu’il se connecte à SQL via l’authentification intégrée Windows/Kerberos, vous devez réaliser quelques étapes supplémentaires :

  • le serveur SQL doit être relié au domaine AD ;
  • le cluster Automation Suite doit se trouver sur le même réseau que serveur SQL ;
  • le cluster Automation Suite peut résoudre les noms de domaine des serveurs AD et SQL ;
  • l'utilisateur AD doit avoir accès au serveur SQL et aux autorisations de base de données.

Pour créer une nouvelle connexion dans SQL Server Management Studio, procédez comme suit :

a. Dans le volet Explorateur d'objets, accédez à Sécurité > Connexions.

b. Ouvrez le menu contextuel du dossier Logins (Connexions) et sélectionnez New Login (Nouvelle connexion). La fenêtre Nouvelle connexion s'affiche.

c. Sélectionnez l'option Authentification Windows. La fenêtre est mise à jour en conséquence.

d. Dans le champ Nom de connexion , entrez le domaine d'utilisateur que vous souhaitez utiliser comme compte de service.

e. Dans la liste des langues par défaut, sélectionnez Français.

Important :

Assurez-vous que la langue par défaut est définie sur Français. Si ce n'est pas le cas, le site Web ne peut pas démarrer et l'Observateur d'événements sur l'ordinateur sur lequel Orchestrator est installé affiche le message d'erreur suivant : The conversion of a varchar data type to a datetime data type resulted in an out of range value.

f. Sélectionnez OK. Vos configurations sont enregistrées.

Si le compte de service a déjà été créé et ajouté à la section Sécurité > Connexions de SQL Server, vérifiez que l'option Langue par défaut de ce compte SQL est configurée sur Anglais. Si ce n'est pas le cas, effectuez les ajustements nécessaires.

Vous devez fournir à l'utilisateur qui se connecte à la base de données SQL le rôle de mappage utilisateur db_owner, comme dans la capture d'écran suivante.

Si les restrictions de sécurité ne vous autorisent pas à utiliser le rôle de mappage utilisateur db_owner avec la connexion UiPath®, accordez les permissions suivantes :

  • db_datareader
  • db_datawriter
  • db_ddladmin
  • Autorisation EXECUTE sur le schéma dbo

L'image suivante montre les autorisations de base de données à accorder lorsque db_propriétaire ne peut pas être utilisé.

L'autorisation EXECUTE doit être accordée en utilisant la commande SQL GRANT EXECUTE, comme suit :

USE UiPath
GO
GRANT EXECUTE ON SCHEMA::dbo TO [domain\)\)user]
GO
USE UiPath
GO
GRANT EXECUTE ON SCHEMA::dbo TO [domain\)\)user]
GO

Si vous souhaitez que les applications UiPath® utilisent des comptes utilisateur AD uniques pour se connecter à SQL en utilisant Integrated Security=True, vous devez créer un keytab unique pour chaque application UiPath® en appliquant la méthode ci-dessous. Ce keytab sera appelé <KERB_APP_KEYTAB> pour cette application.

Génération des paramètres keytab et nom d'utilisateur de l'application Kerberos
  1. Exécutez le script service-keytab-creator.ps1 .

  2. Saisissez les valeurs suivantes dans le script :

    1. AD domain FQDN. Par exemple, TESTDOMAIN.LOCAL.
    2. Le nom d'utilisateur et le mot de passe d'un compte d'utilisateur AD. Par exemple, le compte d'utilisateur AD sAMAccountName et son mot de passe.

Le fichier de sortie contient les paramètres <KERB_APP_USERNAME> et <KERB_APP_KEYTAB> requis par Kerberos.

Option 2 : manuellement

Exécutez manuellement le script suivant :

# Generate keytab file and output it in the desired path 
ktpass /princ <AD username>@<AD domain in cap> /pass <AD user password> /ptype KRB5_NT_PRINCIPAL /crypto AES256-SHA1 /out <path to keytab file> -setpass 

# Converts AD user's keytab file to base 64 
[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("<path to the generated keytab file>"))
# Generate keytab file and output it in the desired path 
ktpass /princ <AD username>@<AD domain in cap> /pass <AD user password> /ptype KRB5_NT_PRINCIPAL /crypto AES256-SHA1 /out <path to keytab file> -setpass 

# Converts AD user's keytab file to base 64 
[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("<path to the generated keytab file>"))

La valeur <AD username> correspondra au nom <KERB_APP_USERNAME> du fichier concerné <KERB_APP_KEYTAB>.

Configuration d'Automation Suite en tant que client Kerberos

Cette section explique comment vous pouvez configurer Automation Suite en tant que client Kerberos pour l'accès LDAP ou SQL.

Avec <KERB_DEFAULT_KEYTAB>, configurez Automation Suite en tant que client Kerberos en appliquant l'un des procédés suivants :

Configuration de l'authentification Kerberos via cluster_config.json

  1. Dans le fichier cluster_config.json, configurez le paramètre kerberos_auth_config.enabled sur true.

  2. Si vous souhaitez utiliser Kerberos pour l'accès SQL, configurez sql_connection_string_template, sql_connection_string_template_jdbc et sql_connection_string_template_odbc avec l'indicateur de sécurité intégrée.

    Remarque :

    L'authentification Kerberos n'est pas exclusivement prise en charge pour SQL. Pour activer Kerberos avec l'authentification SQL, vous devez activer kerberos_auth_config. Cela ajoute également l'authentification de l'utilisateur.

  3. Si vous souhaitez configurer un utilisateur AD différent par service, procédez comme suit :

    1. Spécifiez ad_username et user_keytab dans l'objet JSON du groupe de services.

    2. Mettez à jour la chaîne de connexion SQL du service pour activer la sécurité intégrée.

    3. Le paramètre enabled est défini sur true par défaut lorsque l’authentification Kerberos est activée au niveau global. Si vous souhaitez désactiver l'authentification Kerberos pour SQL pour un produit spécifique, vous devez définir enabled sur false.

      L'objet JSON doit être le suivant :

      "<serviceGroupName>": {
          "kerberos_auth_config": {
            "ad_username": "PLACEHOLDER - INSERT KERB_APP_USERNAME for this service group",
            "user_keytab": "PLACEHOLDER - INSERT KERB_APP_KEYTAB for this service group",
            "enabled": true
          }
      }
      "<serviceGroupName>": {
          "kerberos_auth_config": {
            "ad_username": "PLACEHOLDER - INSERT KERB_APP_USERNAME for this service group",
            "user_keytab": "PLACEHOLDER - INSERT KERB_APP_KEYTAB for this service group",
            "enabled": true
          }
      }
      
      Remarque :

      Pour obtenir la liste des noms de groupes de services, consultez Groupes de services et services.

  4. Après avoir mis à jour le cluster_config.json, exécutez le script d’installation pour mettre à jour la configuration. Pour de plus amples informations, consultez la section Gestion des produits.

    Remarque :

    Vous pouvez utiliser cette procédure pour mettre à jour ou faire pivoter le keytab Kerberos.

Exemple de mise à jour d'Orchestrator et de la plate-forme pour utiliser l'authentification Kerberos

  "kerberos_auth_config": {
    "enabled" : true,
    "ticket_lifetime_in_hour" : 8,
    "ad_domain": "PLACEHOLDER - INSERT ACTIVE DIRECTORY DOMAIN",
    "default_ad_username": "PLACEHOLDER - INSERT KERB_DEFAULT_USERNAME",
    "default_user_keytab": "PLACEHOLDER - INSERT KERB_DEFAULT_KEYTAB",
    "enable_integrated_sql_auth": true
  },
  "sql_connection_string_template": "PLACEHOLDER",
  "sql_connection_string_template_jdbc": "PLACEHOLDER",
  "sql_connection_string_template_odbc": "PLACEHOLDER",
  "orchestrator": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=AutomationSuite_Orchestrator;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;",
    "kerberos_auth_config": {
      "ad_username": "PLACEHOLDER - INSERT KERB_APP_USERNAME for Orchestrator",
      "user_keytab": "PLACEHOLDER - INSERT KERB_APP_KEYTAB for Orchestrator",
      "enabled": true
    },
    "testautomation": {
      "enabled": true
    },
    "updateserver": {
      "enabled": true
    }
  },
  "platform": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=AutomationSuite_Platform;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;",
    "kerberos_auth_config": {
      "ad_username": "PLACEHOLDER - INSERT KERB_APP_USERNAME for platform",
      "user_keytab": "PLACEHOLDER - INSERT KERB_APP_KEYTAB for platform",
      "enabled": true
    }
  }
  "kerberos_auth_config": {
    "enabled" : true,
    "ticket_lifetime_in_hour" : 8,
    "ad_domain": "PLACEHOLDER - INSERT ACTIVE DIRECTORY DOMAIN",
    "default_ad_username": "PLACEHOLDER - INSERT KERB_DEFAULT_USERNAME",
    "default_user_keytab": "PLACEHOLDER - INSERT KERB_DEFAULT_KEYTAB",
    "enable_integrated_sql_auth": true
  },
  "sql_connection_string_template": "PLACEHOLDER",
  "sql_connection_string_template_jdbc": "PLACEHOLDER",
  "sql_connection_string_template_odbc": "PLACEHOLDER",
  "orchestrator": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=AutomationSuite_Orchestrator;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;",
    "kerberos_auth_config": {
      "ad_username": "PLACEHOLDER - INSERT KERB_APP_USERNAME for Orchestrator",
      "user_keytab": "PLACEHOLDER - INSERT KERB_APP_KEYTAB for Orchestrator",
      "enabled": true
    },
    "testautomation": {
      "enabled": true
    },
    "updateserver": {
      "enabled": true
    }
  },
  "platform": {
    "sql_connection_str": "Server=tcp:sfdev1804627-c83f074b-sql.database.windows.net,1433;Initial Catalog=AutomationSuite_Platform;Persist Security Info=False;Integrated Security=true;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;Max Pool Size=100;",
    "kerberos_auth_config": {
      "ad_username": "PLACEHOLDER - INSERT KERB_APP_USERNAME for platform",
      "user_keytab": "PLACEHOLDER - INSERT KERB_APP_KEYTAB for platform",
      "enabled": true
    }
  }
Remarque :

Le paramètre enable_integrated_sql_auth est défini sur true par défaut. Si vous souhaitez désactiver l'authentification Kerberos pour SQL pour tous les produits, vous devez définir ce paramètre sur false.

Groupes de services et services

Le tableau suivant répertorie les groupes de services disponibles et les services qu'ils incluent. Les noms sont légèrement différents dans le fichier cluster_config.json ou dans l'interface utilisateur d'ArgoCD.

Nom du groupe de services pour cluster_config.jsonNom du groupe de services pour ArgoCDServices inclus
orchestratororchestratorOrchestrator, Webhooks
platformplatformidentité, comptable de licence (LA), audit, emplacement, gestionnaire de ressources de licence (LRM), service de gestion de l'organisation (OMS)
discovery_groupdiscoverygroupAutomation Hub
test_managertestmanagerTest Manager
automation_opsautomationopsAutomation Ops
aicenteraicenterAI Center
documentunderstandingdocumentunderstandingDocument Understanding
insightsinsightsInsights
dataservicedataserviceData Service
asrobotsasrobotsRobots Automation Suite
processminingprocessminingProcess Mining

Configurer l'intégration d'Active Directory

Pour que l'authentification Kerberos soit utilisée lors de la connexion à Automation Suite, vous devez configurer davantage les paramètres de l'hôte Automation Suite.

Désactivation de l'authentification Kerberos

Suppression complète de l'authentification Kerberos

Pour supprimer complètement l'authentification Kerberos, procédez comme suit :

  1. Si vous avez utilisé Kerberos pour configurer l’intégration AD, reconfigurez AD avec l’option nom d’utilisateur et mot de passe en suivant les instructions de la section Configuration de l’intégration Active Directory.
  2. Si vous avez utilisé l'authentification intégrée SQL, configurez les chaînes de connexion SQL pour utiliser User Id et Password .
  3. Désactive l’authentification Kerberos. Dans le fichier cluster_config.json , définissez le paramètre kerberos_auth_config.enabled sur false, puis exécutez le script d'installation pour mettre à jour la configuration. Pour de plus amples informations, consultez la section Gestion des produits.

Suppression de l'authentification intégrée SQL

Pour supprimer l'authentification intégrée SQL, procédez comme suit :

  1. Configurez les chaînes de connexion SQL pour utiliser l'ID utilisateur et le mot de passe .
  2. Si vous souhaitez désactiver l’authentification intégrée SQL pour tous les services, dans le fichier cluster_config.json , définissez le paramètre kerberos_auth_config.enabled sur false , puis exécutez le script d’installation pour mettre à jour la configuration. Pour de plus amples informations, consultez la section Gestion des produits.

Résoudre les problèmes Kerberos

Si vous rencontrez des problèmes lors de la configuration de Kerberos, consultez la section Résolution des problèmes de l’authentification.

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour