Orchestrator
2022.10
False
Image de fond de la bannière
Guide d'installation d'Orchestrator
Dernière mise à jour 19 avr. 2024

UiPath.Orchestrator.dll.config

Le fichier UiPath.Orchestrator.dll.config (C:\Program Files (x86)\UiPath\Orchestrator) définit les paramètres et les préférences appliqués à votre déploiement Orchestrator.
Attention :
  • Toute modification apportée aux paramètres de ce fichier sera écrasée lors de la mise à niveau.

  • Seuls les Administrators doivent modifier les valeurs de ces paramètres.

  • Il est recommandé de redémarrer manuellement le site web après avoir apporté des modification à UiPath.Orchestrator.dll.config.
  • Vous ne devez pas modifier les paramètres non documentés sur cette page, ou qui ont des homologues sur les pages de Paramètres (Settings).

  • Tous les paramètres sont sensibles à la casse.

Paramètres de l'application

Paramètres d'installation avancés

EncryptionKeyPerTenant.Enabled

Permet d'utiliser des clés de chiffrement différentes par locataire, selon un compte Microsoft Azure Key Vault. Les valeurs suivantes peuvent être attribuées :

  • false : utilise une clé de chiffrement unique dans l'instance entière d'Orchestrator. Il s'agit de la valeur par défaut.
  • true - Utilise une clé de chiffrement différente pour chaque locataire, renforçant ainsi la sécurité des locataires et fournissant une meilleure répartition des données sensibles.
Si vous activez cette fonctionnalité, vous devez renseigner le paramètre EncryptionKeyPerTenant.KeyProvider , ainsi que ceux de la section SecureAppSettings.

EncryptionKeyPerTenant.KeyProvider

Permet d'indiquer dans quelle application de gestion de clés stocker les clés de chiffrement générées par locataire à partir d'Orchestrator. Définissez-le sur AzureKeyVault pour utiliser une instance de Microsoft Azure Key Vault préconfigurée. Nous ne fournissons pas de licences Azure Key Vault. Veuillez noter que vous devez également configurer les paramètres décrits dans la section SecureAppSettings . Si EncryptionKeyPerTenant.Enabled est défini sur false, ce paramètre n'est pas utilisé.

Les modifications apportées aux paramètres de chiffrement dans ce cas précis doivent être mises en miroir dans le fichier appsettings.Production.json du serveur d'identité, selon l'équivalence de champ suivante :

Orchestrator UiPath.Orchestrator.dll.config

Identity Server appsettings.Production.json

EncryptionKeyPerTenant.Enabled

EncryptionKeyPerTenant

Azure.KeyVault.VaultAddress

AzureKeyVaultAddress

Azure.KeyVault.CertificateThumbprint

AzureKeyVaultCertificateThumbprint

Azure.KeyVault.ClientId

AzureKeyVaultClientId

Azure.KeyVault.DirectoryId

AzureKeyVaultDirectoryId

EncryptionKeyPerTenant.KeyProvider

MultiTenantEncryptionKeyProvider

Files d'attente (Queues)

Remarque : Pour appliquer les modifications liées aux planifications des tâches internes, suivez les étapes décrites dans Mise à jour des planifications d'une tâche interne (Updating schedules of internal job).

inProgressMaxNumberOfMinutes

Le délai maximal pendant lequel les éléments de la file d'attente peuvent afficher l'état En cours (In Progress). Une fois ce délai écoulé, cet état passe à Abandonné (Abandoned). Par défaut, il est configuré sur 1 440 minutes (24 heures).

QueuesStatisticsScheduleCron

La fréquence de mise à jour des statistiques des éléments de la file d'attente dans Tableau de bord (Dashboard), sur la page Transactions et dans la fenêtre Graphique (Chart). Par défaut, elles sont mises à jour toutes les minutes.

UpdateUncompletedItemsJobCron

La fréquence de recherche des files d'attente dans la base de données qui doivent passer à Abandonné (Abandoned). Par défaut, ce paramètre est configuré sur toutes les heures.

Queue.MaxSlaInMinutes

La valeur maximale à laquelle le SLA peut être défini, exprimée en minutes. Par défaut, la valeur est de 129 600 minutes (90 jours), et elle s'affiche par défaut dans UiPath.Orchestrator.dll.config , y compris dans les scénarios de mise à jour.

Queue.MaxSchemaFileSizeInKilobytes

La taille maximale du fichier du schéma JSON par rapport à laquelle les données et la sortie des éléments de la file d'attente sont validées, en Ko. Ce paramètre ne s'affiche pas par défaut dans le fichier UiPath.Orchestrator.dll.config.

Queue.SlaReadaheadTimeLimitHours

La durée pendant laquelle les échéances des éléments de la file d'attente doivent se situer pour que les éléments soient pris en compte lors de la réalisation des prévisions du SLA. La valeur par défaut est 24 heures. Ce paramètre ne s'affiche pas par défaut dans UiPath.Orchestrator.dll.config.

Queue.MaxSpecificDataSizeInKiloBytes

La taille maximale, en kilooctets, du contenu de données spécifiques pour les nouveaux éléments de file d’attente. Pour les nouvelles installations d'Orchestrator, ce paramètre est masqué et présente une valeur par défaut de 1024 (1 Mo). Dans les scénarios de mise à niveau, ce paramètre est visible et présente une valeur de 204800 (200 Mo).

Queue.ProcessActivationSchedule

Le temps entre les vérifications pour les éléments de file d’attente non traités. Par défaut, il est configuré sur 30 minutes. Pour ajuster l’intervalle de vérification, spécifiez une valeur comprise entre 0 et 59, redémarrez l’IIS, puis supprimez le déclencheur de file d’attente existant et recréez-le.

Alertes

Remarque : Pour appliquer les modifications liées aux planifications des tâches internes, suivez les étapes décrites dans Mise à jour des planifications d'une tâche interne (Updating schedules of internal job).

DailyAlertMailJobCron

Permet de configurer une expression cron qui contrôle l'envoi des alertes quotidiennes par e-mail. Cela ne fonctionne que si les alertes par e-mail sont activées. Le rapport contient toutes les alertes de gravité, ayant un statut Fatal (Fatal) et Erreur (Error), générées le jour précédent. Par défaut, il est envoyé tous les jours à 7 heures du matin.

Alerts.Email.Enabled

Ce paramètre n'est pertinent que pour les nouveaux locataires et est défini par défaut sur false. Vous pouvez le définir sur true pour activer automatiquement les alertes par e-mail pour le locataire que vous êtes sur le point de créer.

Une fois le locataire créé, cependant, les modifications apportées à ce paramètre ne sont plus prises en compte. Au lieu de cela, le paramètre peut être activé via la case à cocher Activer les alertes par e-mail (Enable Alerts Email) de la page Paramètres. Plus de détails ici.

NotificationDistributerJobCron

La fréquence d'envoi des notifications d'alertes à l'interface. Les alertes sont envoyées par défaut toutes les 10 secondes.

PeriodicErrorMailJobCron

Permet de configurer une expression cron qui contrôle la fréquence d'envoi des alertes périodiques par e-mail. Cela ne fonctionne que si les alertes par e-mail sont activées. La valeur par défaut est toutes les 10 minutes, ce qui signifie que le rapport contient des alertes de gravité ayant le statut Fatal (Fatal) et Erreur (Error) générées au cours des 10 dernières minutes. Si aucune alerte n'a été générée, aucun rapport n'est envoyé.

PasswordComplexity

Contrôle les règles de validation pour la complexité du mot de passe et s'exprime à l'aide d'expressions régulières. La complexité s'applique par défaut à tous les mots de passe (y compris celui de l'administrateur hôte). Toutefois, chaque locataire peut personnaliser sa propre complexité de mot de passe de connexion utilisateur dans l'onglet Sécurité (Security) de la page Paramètres (Settings). Par défaut, les mots de passe doivent contenir au minimum 8 caractères et au minimum une lettre et un chiffre.

SystemJobs.DetectNotRespondingRobots.MaxAlertCount

Permet de limiter le nombre d'alertes envoyées quand les Robots ne répondent plus. Ce paramètre peut être utile si votre instance Orchestrator traite un très grand nombre de Robots et si la plupart d’entre eux ne répondent plus souvent. Notez qu'il ne s'affiche pas dans le fichier de configuration par défaut. Par exemple, si vous souhaitez limiter à 10 le nombre d'alertes que vous recevez pour les Robots, ajoutez <add key="SystemJobs.DetectNotRespondingRobots.MaxAlertCount" value="10" /> dans le fichier UiPath.Orchestrator.dll.config, sous tous les autres paramètres d'alerte. Si vous appliquez ce paramètre, veuillez noter qu'un avertissement est généré dans l'observateur d'événements lorsque le nombre total d'alertes est supérieur à celui des alertes configurées, par exemple : Alerts not published: total number of unresponsive sessions (21) is bigger than the configured max allowed (10)..

SystemJobs.LicenseExpirationAlert.DaysBefore

Permet de définir les intervalles de temps avant la date d'expiration de la licence lorsque vous recevrez les alertes par e-mail. La valeur par défaut est 180,90,30,14,7,1, impliquant que vous recevez les alertes par e-mail 6 fois : 180, 90, 30, 14, 7 et 1 jour avant l'expiration de votre licence. Pour réduire la fréquence des alertes par e-mail, vous pouvez définir moins de valeurs. Par exemple, vous pouvez le faire en ajoutant la clé suivante dans le fichier UiPath.Orchestrator.dll.config : <add key="SystemJobs.LicenseExpirationAlert.DaysBefore" value="90,30,14" />.

Déploiement

Orchestrator utilise un référentiel composite Les métadonnées de paquets sont enregistrées dans la base de données SQL pour une recherche et un filtrage plus rapides. Les paquets sont enregistrés à l'emplacement spécifié via les paramètres Storage.Type et Storage.Location.
Remarque : L'utilisation des commandes copier-coller dans le dossier dédié aux paquets n'est pas prise en charge.

Storage.Type

Définit la cible où les paquets et les supports d'exécution sont enregistrés. Vous pouvez la remplir à l'aide des cibles suivantes :

  • File System - <add key="Storage.Type" value="FileSystem" />
  • Azure - <add key="Storage.Type" value="Azure" />
  • Amazon - <add key="Storage.Type" value="Amazon" />
  • Minio - <add key="Storage.Type" value="Minio" />

Storage.Location

Définit l'emplacement réel où les paquets et les supports d'exécution sont enregistrés.

Important :
Le paramètre Storage.Location est requis :
  • lors de la mise à niveau de n’importe quelle version pré-2020.10 d’Orchestrator, et
  • lorsque le NuGet.Repository.Type précédent a été Legacy, et
  • quand les NuGet.Packages.Path précédents n’ont pas utilisé la valeur par défaut.

Cible

Emplacement

Système de fichiers

Fournissez un chemin absolu en utilisant le format suivant : RootPath=C:\FolderName\AnotherFolderName.
Exemple :<add key="Storage.Location" value="RootPath=C:\FolderName\AnotherFolderName" />.

Dans le dossier fourni, la structure de dossier suivante est créée :

Orchestrator-Host\Libraries - Un dossier dédié aux bibliothèques stockées dans le flux hôte.
Orchestrator-[tenantKey] - Un dossier pour chaque locataire. Le locataire est identifié par la clé du locataire telle qu’elle se trouve dans la base de données. Par exemple Orchestrator-12ab1234-a567-456b-a12b-ab3456b123ab.

Pour chaque dossier de locataire, trois autres sous-répertoires sont créés :

\ExecutionMedia

\Packages

\Libraries

Les fichiers sont enregistrés dans les dossiers dédiés à l’emplacement spécifié. Par défaut, ils sont stockés sur le chemin suivant : C:\Program Files (x86)\UiPath\Orchestrator\Storage.

Azure

Fournissez une chaîne de connexion.

Exemple :<add key="Storage.Location" value="DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net" />.

Amazon

  • Fournissez une chaîne de connexion.
Exemple :<add key="Storage.Location" value="EndpointRegion=eu-west-3;accessKey=AKIAZGUEIGXUJ3BBI4MW;secretKey=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;useHttp=false" />.
  • Pour désactiver l'accès public aux compartiments Amazon S3 nouvellement créés, ajoutez BlockPublicAccess=true à la chaîne de connexion. Notez que cela n'a aucun impact sur les compartiments existants.
Exemple :<add key="Storage.Location" value="EndpointRegion=eu-west-3;accessKey=AKIAZGUEIGXUJ3BBI4MW;secretKey=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;useHttp=false;BlockPublicAccess=true" />.
  • Pour utiliser les identifiants Amazon S3 par défaut, supprimez AccessKey et SecretKey et ajoutez UseDefaultCredentials=true à la place. Cela vous permet d'utiliser le rôle IAM de la machine sur une machine virtuelle Amazon EC2.
Exemple :<add key="Storage.Location" value="EndpointRegion=eu-west-3;UseDefaultCredentials=true" />.

Minio

Fournissez une chaîne de connexion.

Exemple :<add key="Storage.Location" value="host=localhost:9001;accessKey=YVKYFJ0ZY246KDKP0634;secretKey=bdBEk2ubhIFsTNPuQ80PjKL+oqZBj67HoSWBFnw1" />.

Exemple

<add key=\"Storage.Type\" value=\"Azure\" /> <add key=\"Storage.Location\" value=\"DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net\" /><add key=\"Storage.Type\" value=\"Azure\" /> <add key=\"Storage.Location\" value=\"DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net\" />

La configuration ci-dessus indique à Orchestrator :

  • de stocker les métadonnées de paquets dans la base de données SQL ;
  • de conserver les fichiers réels dans le stockage blob Azure à l'emplacement indiqué par la chaîne de connexion DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net ;
  • d'utiliser la convention d'affectation de noms pour le nom du conteneur Azure - Orchestrator-tenantKey.
    Important :

    Si vous avez plus de 99 locataires dans Orchestrator, vous avez deux options pour éviter la limite de compte de compartiment AWS S3.

    • Stockez vos données dans un compartiment externe unique, comme indiqué dans la section suivante.
    • Augmentez votre limite de compte de compartiment AWS S3 par défaut pour correspondre au nombre de locataires.

    Cela est nécessaire car un compartiment distinct est créé pour chaque locataire.

Stocker les données d'Orchestrator dans un seul compartiment externe

Pour utiliser un seul compartiment avec votre propre fournisseur de stockage externe, ajoutez les paramètres suivants à la chaîne de connexion correspondante :

  • BucketName - Obligatoire. Permet à Orchestrator de stocker tous les locataires dans un seul compartiment. Il nécessite le nom du compartiment tel qu'il est défini dans votre fournisseur de stockage. Pour cela, votre stockage externe doit exister avant l'installation d'Orchestrator.
  • CanCreateBucket – Facultatif. S'il est défini sur true, il permet à Orchestrator de créer le compartiment dans votre stockage externe en votre nom. La valeur par défaut est Faux.
Remarque : lorsque vous utilisez ce paramètre, assurez-vous d'accorder à Orchestrator les autorisations appropriées pour créer un compartiment dans votre stockage externe. Sinon, l'installation échoue.
  • ContentPrefix - facultatif. Spécifie le chemin de vos données Orchestrator à l'intérieur du stockage externe. Par exemple, orchestrator/data.
Remarque : ces paramètres s'appliquent aux chaînes de connexion des fournisseurs de stockage externes, à savoir Azure, Amazon ou Minio. Elles ne s'appliquent pas au stockage FileSystem.

Exemple : Utilisation d'un seul compartiment avec votre propre fournisseur de stockage externe

<add key="Storage.Location" value="DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net;BucketName=UiPath;ContentPrefix=orchestrator/data" /><add key="Storage.Location" value="DefaultEndpointsProtocol=https;AccountName=usr;AccountKey=...;EndpointSuffix=core.windows.net;BucketName=UiPath;ContentPrefix=orchestrator/data" />

NuGet.Packages.ApiKey

La clé de licence de votre compte NuGet. Si les activités et packages sont enregistrés dans le même flux NuGet, la valeur de ce paramètre doit être identique à celle de NuGet.Activities.ApiKey . La valeur par défaut est utilisée dans l'amorçage initial de la base de données. Notez que des chaînes arbitraires sont également acceptées.

NuGet.Activities.ApiKey

La clé de licence de votre compte NuGet. Si les activités et paquets sont enregistrés dans le même flux NuGet, la valeur de ce paramètre doit être identique à celle de NuGet.Packages.ApiKey . Notez que des chaînes arbitraires sont également acceptées.

La synchronisation du paquet entre plusieurs nœuds Orchestrator et l'interface peut s'effectuer en surveillant le système de fichiers ou en utilisant Redis. Vous pouvez utiliser la configuration ci-dessous. La méthode recommandée est via Redis.

Processes.AllowUpdateWithRunningJobs

Spécifie si vous pouvez supprimer un processus alors que des tâches en cours d'exécution ou en attente lui sont associées. Veuillez noter que ce paramètre est masqué par défaut. Les valeurs suivantes sont disponibles :

  • true : des processus peuvent être supprimés lorsque des exécutions en cours ou en attente leur sont associées.
  • false : les processus ne peuvent pas être supprimés lorsque des exécutions en cours ou en attente leur sont associées. La tentative de modification d'un processus, dans ce cas, affiche le message d'erreur suivant : « La modification de ce processus n'est pas possible en ce moment, car des tâches actives lui sont associées. (#1666) ». Ceci est la valeur par défaut.
Par exemple, pour pouvoir mettre à jour vos processus tandis que des tâches associées sont en cours d'exécution, ajoutez <add key="Processes.AllowUpdateWithRunningJobs" value="true" /> dans le fichier UiPath.Orchestrator.dll.config.

Deployment.Libraries.AllowTenantPublish

Permet de spécifier si les locataires utilisant le flux hôte peuvent ou non télécharger des bibliothèques dans le flux. Les valeurs suivantes sont disponibles :

  • true - Les bibliothèques téléchargées au niveau du locataire sont transmises au flux hôte. Ceci est la valeur par défaut.
  • false - Les bibliothèques téléchargées au niveau du locataire ne sont pas transmises au flux hôte. Cependant, veuillez noter que les utilisateurs ont accès aux bibliothèques existantes dans le flux.

Vous pouvez également configurer cela à partir de l'interface utilisateur. L'option correspondante, Autoriser les utilisateurs du locataire à télécharger dans le flux (Allow Tenant Users to Upload into the Feed), est disponible au niveau de l'hôte, sur la page Paramètres (Settings).

Compartiments de stockage

Buckets.ContentSecurityPolicy

Utilisé pour indiquer les domaines qui se situent en dehors des domaines approuvés auxquels Orchestrator peut faire des demandes. Plusieurs valeurs peuvent être saisies sous forme de listes séparées par virgules. Ce paramètre remplace les paramètres Orchestrator correspondants pour Azure et AWS, alors assurez-vous d’ajouter Azure et/ou AWS au besoin. Ce paramètre ne s'affiche pas par défaut dans le fichier UiPath.Orchestrator.dll.config.

Buckets.AvailableProviders

Utilisé pour contrôler le nombre de fournisseurs qui peuvent être utilisés lors de la création de compartiments de stockage. Les fournisseurs disponibles sont : Orchestrato, Amazon, Azure, Minio, les fournisseurs de stockage compatibles S3 et le système de fichiers. Plusieurs valeurs peuvent être saisies sous forme de listes séparées par virgules.

Remarque : par défaut, cette clé n'est pas affichée dans le fichier UiPath.Orchestrator.dll.config, et seuls les fournisseurs suivants sont sélectionnés : Orchestrator, Amazon, Azure, Minio et S3Compatible.. Le comportement par défaut est spécifique aux nouvelles installations et aux mises à niveau. Si la clé est visible, les fournisseurs disponibles sont limités à ceux spécifiés en tant que valeurs Buckets.AvailableProviders.

Exemple : pour utiliser uniquement Orchestrator, Amazon et Azure comme fournisseurs de compartiments de stockage, ajoutez la clé suivante :

<add key="Buckets.AvailableProviders" value="Orchestrator,Amazon,Azure" /><add key="Buckets.AvailableProviders" value="Orchestrator,Amazon,Azure" />

Buckets.FileSystem.Allowlist

Permet de contrôler l’utilisation des compartiments FileSystem. Le paramètre n'a pas de valeur configurée par défaut. Ceci, ainsi que le fait que FileSystem soit désactivé par défaut sur les nouvelles installations et mises à niveau, signifie qu’aucun chemin FileSystem ne peut être utilisé au départ. Pour des raisons de sécurité, s'il veut utiliser la fonctionnalité FileSystem, un administrateur doit d’abord activer FileSystem, puis autoriser explicitement l’accès à une liste de dossiers ou de partages réseau en attribuant des valeurs à Buckets.FileSystem.Allowlist.
Plusieurs valeurs peuvent être saisies, séparées par le caractère | . Notez que les chemins doivent être complets, être enracinés soit via un chemin drive, soit un chemin UNC (par exemple c:\, c: est, \\servershare\shared), et chacun d’eux constituer un préfixe autorisé à être utilisé pour n’importe quel compartiment. Un compartiment peut être créé sur ce chemin particulier ou n’importe lequel de ses sous-chemins.
Attention : Étant donné que la création d’une liste d’autorisation FileSystem via le paramètre Buckets.FileSystem.Allowlist comporte un ensemble d’implications en matière de sécurité, il est fortement conseillé de vous référer à la section Utiliser la liste d’autorisation de stockage FileSystem en toute sécurité avant de procéder.

Autorisation

AcceptedRootUrls

Vous permet d'ajouter une liste d'URL approuvées. Si aucune valeur n'est attribuée à ce paramètre, personne ne peut accéder à Orchestrator. Si vous ajoutez plusieurs URL, faites-le sans espaces et séparez les éléments par des virgules (,), par exemple, "https://server1,https://server2".

Auth.Bearer.Robot.Expire

Le délai après lequel le jeton du porteur de votre Robot expire. Par défaut, il est configuré sur 30 minutes.

Auth.DisabledPermissions

Permet de configurer les autorisations à désactiver de l'interface utilisateur et à ignorer lors de l'utilisation de l'API. Veuillez noter que ce paramètre est masqué par défaut. Vous devez ajouter les autorisations, lorsqu'elles sont utilisées dans l'API et elles doivent être séparées par des virgules. Par exemple, pour désactiver les autorisations de Suppression des bibliothèques et des machines, vous devez ajouter la clé suivante : <add key="Auth.DisabledPermissions" value="Machines.Delete,Libraries.Delete" />.

Auth.AllowChangePassword

Permet d’indiquer si un utilisateur peut modifier son mot de passe via une API. Ce paramètre n’est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config. Les valeurs disponibles sont true (valeur par défaut) et false.

Auth.AllowSelfEmailUpdate

Permet d'indiquer si un utilisateur peut modifier son adresse e-mail dans la section Général (General), page Profil (Profile). Par défaut, ce paramètre est défini sur , impliquant que vous pouvez la mettre à jour.true Définissez le paramètre sur false pour que le champ soit en lecture seule. Ce paramètre n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config.

ExternalAuth.AccessTokenAuth.Enabled

Permet d'indiquer si vous pouvez vous authentifier auprès d'Orchestrator à l'aide d'un jeton d'accès du porteur émis par Auth0. Ce paramètre n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config. Les valeurs suivantes sont disponibles :
  • true - L'utilisateur peut faire des demandes authentifiées en utilisant un jeton d'accès délivré par Auth0. Cela n'est pris en compte que si vous définissez un public valide pour le paramètre ExternalAuth.AccessTokenAuth.Audience.
  • false : l'utilisateur ne peut pas effectuer de requêtes authentifiées à l'aide d'un jeton d'accès émis par Auth0. Il s'agit de la valeur par défaut.

ExternalAuth.AccessTokenAuth.Audience

Permet de contrôler le public cible du jeton d'accès. Ce paramètre doit être configuré sur un public valide, qui est utilisée pour vérifier l'audience du jeton Auth0. Par exemple, si vous souhaitez configurer le public sur https://platform.uipath.com, vous devez ajouter la clé suivante : <add key="ExternalAuth.AccessTokenAuth.Audience" value="https://cloud.uipath.com" />. Ce paramètre n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config.

ExternalAuth.ShowPII

Permet l'affichage des PII d'Orchestrator en ajoutant la clé suivante : <add key="ExternalAuth.ShowPII" value="true" />. La clé n’est pas affichée par défaut dans UiPath.Orchestrator.dll.config et le comportement par défaut ne permet pas d'afficher les PII.

RestrictBasicAuthentication

Déplacé vers appsettings.json du serveurd'identité.

EnableBasicAuthenticationForHostTenant

Déplacé vers appsettings.json du serveurd'identité.

Load balancer

Ces paramètres ne doivent être modifiés que si vous utilisez un équilibreur de charge.

LoadBalancer.UseRedis

Utilisez Redis comme base de données pour distribuer les messages et les mettre en cache vers/depuis toutes les machines connectées via votre équilibreur de charge. Par défaut, elle est configurée sur false.

LoadBalancer.Redis.ConnectionString

Peut être uniquement utilisé si LoadBalancer.UseRedis est défini sur true. Une chaîne de connexion qui permet de configurer votre serveur Redis, qui contient l'URL du serveur, le mot de passe et le port utilisé avec Redis. Tous les nœuds de cluster HAA doivent être ajoutés dans la chaîne de connexion.

Il est également possible d'activer les connexions chiffrées en SSL entre les nœuds d'Orchestrator et le service Redis. Pour plus d'informations, cliquez ici. Exemples :

  • avec SSL activé : <add key="LoadBalancer.Redis.ConnectionString" value="10.10.20.184:10000,10.10.24.148:10000,10.10.22.114:10000,password=12345678,ssl=true" />
  • sans SSL activé : <add key="LoadBalancer.Redis.ConnectionString" value="10.10.20.184:10000,10.10.24.148:10000,10.10.22.114:10000,password=12345678" />

Coffre de mot de passe

Plugins.SecureStores

Ce paramètre doit être mis à jour pour inclure les plugins de tous les magasins d'informations d'identification que vous utilisez. Vous pouvez choisir parmi les éléments suivants : CyberArk, CyberArk CCP, Azure Key Vault, Thycotic Secret Server, BeyondTrust et HashiCorp Vault. Les plugins des magasins d'identifiants se trouvent dans le dossier \Orchestrator\Plugins de votre répertoire d'installation. Par exemple :
  • Magasin unique : <add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll"/>
  • Plusieurs magasins : <add key="Plugins.SecureStores" value="UiPath.Orchestrator.CyberArk.dll;UiPath.Orchestrator.AzureKeyVault.SecureStore.dll;UiPath.Orchestrator.SecureStore.CyberArkCCP.dll;UiPath.Orchestrator.SecureStore.HashiCorpVault.dll;UiPath.Orchestrator.SecureStore.BeyondTrust.dll;UiPath.Orchestrator.SecureStore.AWSSecretsManager.dll" />
    Remarque : Lors de la mise à niveau d'une instance Orchestrator avec une intégration CyberArk existante, ce paramètre est prérempli avec le plugin CyberArk. Pour toutes les autres installations, la valeur du paramètre est vide par défaut.

Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath

Permet au plug-in CyberArk de rechercher CLIPasswordSDK64.exe dans un chemin d'installation personnalisé. Par exemple, si D:\CustomFolder\ est le répertoire d'installation de CyberArk, vous devez ajouter la clé suivante : <add key="Plugins.SecureStores.CyberArk.CLIPasswordSDKExePath" value="D:\CustomFolder\CLIPasswordSDK64.exe"/>. La valeur par défaut de ce paramètre d'application est C:\Program Files (x86)\CyberArk\ApplicationPasswordSdk\CLIPasswordSDK64.exe.

Plugins.SecureStores.CyberArk.UsePowerShellCLI

Active l'extraction des informations d'identification d'un coffre-fort du CyberArk lors de l'utilisation de l'authentification du chemin d'accès. La clé est masquée par défaut. La valeur par défaut est false. Ajoutez la clé suivante pour l’activer : <add key="Plugins.SecureStores.CyberArk.UsePowerShellCLI" value="true"/>.

Authentification Azure AD

La configuration de l’authentification Azure AD a été déplacée vers la page Fournisseurs externes d'Identity Server.

Authentification Active Directory

La configuration de l'authentification Active Directory est effectuée après l'installation à partir du portail de gestion (Management portal) d'Orchestrator.

Pour obtenir des instructions, consultez la page Configurer l'intégration d'Active Directory (Configuring the Active Directory integration).

Journaux (Logs)

Logs.RobotLogs.ReadTarget

Vous permet de configurer la source à partir de laquelle Orchestrator lit et remplit les journalisations (p. ex. database ou robotelasticbuffer

RobotsLogs.Flush.Interval

Ce paramètre vous permet de modifier l’intervalle de nettoyage pour le point de terminaison SubmitLogs. Notez qu’il n’est pas affiché par défaut dans UiPath.Orchestrator.dll.config. Sauf indication contraire, sa valeur est de 0 seconde. L’exemple suivant montre comment définir un intervalle de nettoyage de 60 secondes, ce qui signifie que le robot envoie des journaux au serveur toutes les 60 secondes.
<add key="RobotsLogs.Flush.Interval" value="60" /><add key="RobotsLogs.Flush.Interval" value="60" />
Attention : Si le Robot se déconnecte avant la fin de l'intervalle de nettoyage, le dernier lot de journalisation est envoyé la prochaine fois qu'il se connecte à Orchestrator.

RobotsLogs.Flush.BatchSize

Ce paramètre a pour but d'ajuster la capacité de nettoyage pour le point d'extrémité SubmitLogs. Par défaut, il n'est pas affiché dans le UiPath.Orchestrator.dll.config. Sauf indication contraire, sa valeur est de 100 entrées de messages de journalisation, ce qui signifie que le Robot envoie des lots de 100 journalisations au serveur.
<add key="RobotsLogs.Flush.BatchSize" value="100" /><add key="RobotsLogs.Flush.BatchSize" value="100" />

Logs.RequestAbortedLogBehavior

Indique le comportement de journalisation des exceptions d'annulation qui sont levées lors de l'annulation d'une opération qui s'exécutait. Celles-ci sont générées, par exemple, lorsque vous cliquez sur un bouton et avant que l'opération soit exécutée, vous cliquez sur un bouton différent. Veuillez noter que ce paramètre est masqué par défaut. Les valeurs suivantes sont disponibles :

  • Ignore : toutes les exceptions d'annulation sont ignorées, si les requêtes correspondantes ont été abandonnées. Il s'agit de la valeur par défaut.
  • Info : les exceptions d'annulation sont consignées avec le niveau de gravité Info.
  • None : les exceptions d'annulation sont consignées avec le niveau de gravité Error.
Par exemple, si vous ne voulez pas que des exceptions d'annulation soient consignées, ajoutez <add key="Logs.RequestAbortedLogBehavior" value="Ignore" /> dans le fichier de configuration.

Logs.Elasticsearch.SharedIndex

Permet de vous connecter au même index pour tous les locataires. Il doit être défini sur la même valeur que celle utilisée pour le paramètre index dans la cible NLog. Par exemple, <add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" />. Vous trouverez plus de détails ici. Veuillez noter que ce paramètre est masqué par défaut.

Logs.Elasticsearch.EnableFolderIdFilter

Contrôlez la visibilité des journaux générés avant la version 2019.10 qui ne peuvent pas être filtrés par le dossier contenant sur la page Journaux (Logs). Le paramètre est défini sur true par défaut, ce qui signifie que les journaux sont masqués. Définissez-le sur false pour les afficher : <add key="Logs.Elasticsearch.EnableFolderIdFilter" value="false" />

Logs.Elasticsearch.Username

Le nom d'utilisateur requis pour lire les journaux dans Elasticsearch. Notez que vous devez configurer ce paramètre uniquement si l'authentification Elasticsearch est activée et que vous n'utilisez pas de cible NLog. Lors de la configuration du paramètre, assurez-vous que sa valeur correspond aux paramètres du serveur Elasticsearch. Pour plus de détails, consultez l'Authentification X-PACK.

Logs.Elasticsearch.Password

Le nom d'utilisateur requis pour lire les journaux dans Elasticsearch. Notez que vous devez configurer ce paramètre uniquement si l'authentification Elasticsearch est activée et que vous n'utilisez pas de cible NLog. Lors de la configuration du paramètre, assurez-vous que sa valeur correspond aux paramètres du serveur Elasticsearch. Pour plus de détails, consultez l'Authentification X-PACK.

Logs.Elasticsearch.OAuthEnabled

Définissez ce paramètre sur true pour activer OAuth2 et utiliser un mécanisme d'authentification basé sur jeton pour lire les journaux du robot dans Elasticsearch, ce qui constitue une alternative au système d'authentification par utilisateur et mot de passe. Par défaut, ce paramètre est défini sur false.

Lors de l'activation de l'authentification OAuth, vous devez toujours fournir le nom d'utilisateur et le mot de passe, comme dans la méthode d'authentification par défaut. Cela est nécessaire car le jeton initial est généré en fonction de ces informations d'identification.

Consultez Authentification OAuth2 pour obtenir des instructions détaillées sur la configuration de l'authentification OAuth2 pour Elasticsearch.

Logs.Elasticsearch.OAuthExpireInSeconds

Vous permet de définir le délai (en secondes) avant l'expiration et l'actualisation du jeton d'accès utilisé pour lire les journaux du robot dans Elasticsearch. Sa valeur par défaut recommandée est de 1200 secondes (20 minutes) et sa valeur maximale est de 3600 secondes (60 minutes). Pour invalider un jeton, vous pouvez utiliser le bouton dédié accessible sur l'interface utilisateur d'Orchestrator.

Avant de modifier la validité du jeton, assurez-vous que Logs.Elasticsearch.OAuthEnabled est défini sur true et que vous avez correctement configuré le serveur Elasticsearch. Pour plus de détails, consultez l'Authentification OAuth2.

Logs.Elasticsearch.DisableProductCheckStatus

Permet de sélectionner une version d'Elasticsearch antérieure à 7.16.3. Pour ce faire, il doit être défini sur true.
Ce paramètre est masqué et sa valeur par défaut est false.
Il fonctionne en conjonction avec le disableProductCheckStatus dans le fichier Nlog, qui est également masqué et false par défaut. Il doit également être défini sur true pour activer la fonctionnalité.

Webhooks

Les paramètres Webhooks ont été déplacés vers le fichier appsettings.json du service Webhook.

Évolutivité

Scalability.Heartbeat.PeriodSeconds

L'intervalle de temps, exprimé en secondes, auquel le Robot envoie une impulsion à Orchestrator, informant ce dernier de son état. Par défaut, ce paramètre est défini sur 30 secondes.

Scalability.Heartbeat.FailureThreshold

Le nombre de pulsations avortées successivement envoyées par un Robot jusqu'à ce qu'il soit marqué comme ne répondant pas dans Orchestrator. Par défaut, il est réglé sur 4, impliquant qu'après 2 minutes de pulsations avortées (4 x 30 secondes = 2 minutes), un Robot est marqué comme ne répondant pas.

Scalability.SignalR.Enabled

Spécifie si le service de robot UiPath doit s'abonner aux canaux SignalR d'Orchestrator. Par défaut, il est configuré sur true. Ce paramètre est utilisé dans l'amorçage initial de la base de données. Pour effectuer des modifications après l'installation, utilisez la page Paramètres (Settings), au niveau du locataire ou de l'hôte.

Scalability.SignalR.Transport

Spécifie le protocole de transport utilisé pour se connecter aux canaux SignalR d'Orchestrator. Les valeurs suivantes peuvent être attribuées (toute combinaison - OR au niveau du bit) :

  • WebSocketTransport = 1
  • ServerSentEventsTransport = 2
  • LongPollingTransport = 4
  • Valeur par défaut : 7 (WebSocketTransport | ServerSentEventsTransport | LongPollingTransport)

Ce paramètre est utilisé dans l'amorçage initial de la base de données. Pour effectuer des modifications après l'installation, utilisez la page Paramètres au niveau du locataire ou de l'hôte.

Scalability.AzureSignalR.ConnectionString

Vous aide à activer le service Azure SignalR, facilitant la communication directe entre votre ensemble de Robots et le service SignalR

Orchestrator ne sert plus d’intermédiaire. Vous ne devez utiliser cette option que si vous disposez d’une instance d’Orchestrator hébergée sur Azure. Peut être utilisé conjointement avec la clé Scalability.AzureSignalR.ConnectionCount. Ce paramètre est activé dans notre offre de Cloud. Il ne s’affiche pas par défaut dans le fichier UiPath.Orchestrator.dll.config.
Notez que, si activé, les Robots ayant une version inférieure à 2019.2 s'appuient sur le protocole Heartbeat afin de communiquer avec Orchestrator, impliquant que toute commande émise par Orchestrator est captée par un Robot seulement toutes les 30 secondes. Pour activer ce paramètre, renseignez sa valeur avec la chaîne de connexion au service Azur. Exemple : <add key="Scalability.AzureSignalR.ConnectionString" value="Endpoint=https://test.signalr.net;AccessKey=M1ug+sBu07hyyi12AgyJ52SEd4OgC2Mm6BvllVHCC9c=;Version=1.0;" />.

Scalability.AzureSignalR.ConnectionCount

Permet de modifier le nombre de connexions (par hub) entre le serveur et le service Azure SignalR. La valeur par défaut est 5. Exemple : <add key="Scalability.AzureSignalR.ConnectionCount" value="7" />. Ce paramètre n'est pas affiché par défaut dans le fichier, et ne peut pas être utilisé sans la clé Scalability.AzureSignalR.ConnectionString.

Scalability.SignalR.RequireStickySessions

Activer les sessions permanentes. Si elles sont configurées sur true, tous les transports sont activés, et Orchestrator suppose que les sessions permanentes sont activées sur l' équilibreur de charge. L’activation de sessions permanentes dans UiPath.Orchestrator.dll.config sans les activer sur l' équilibreur de charge entraînera l'échec des connexions SignalR.

Insights

Insights.TableCreationRetryCount

Permet de définir le nombre maximal de nouvelles tentatives pour la création d'une table. Par défaut, sa valeur est définie sur 3.
Remarque : ce paramètre est facultatif et n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config.

Insights.TableCreationRetryBackoffSeconds

Durée, en secondes, entre les nouvelles tentatives. Par défaut, sa valeur est définie sur 60.
Remarque : ce paramètre est facultatif et n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config.

Insights.Ingestion.QueryTimeout

Le délai d’attente du SQLServer pour les requêtes qui s’exécutent dans la base de données Orchestrator afin de remplir la base de données Insights. Le paramètre n’est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config. Vous devriez envisager de le mettre à jour si vous rencontrez des erreurs de délai d’attente sur la tâche en arrière-plan qui effectue l’ingestion pour Insights depuis le SQLServer Orchestrator.

Données analytiques

Telemetry.Enabled

Active ou désactive la collecte de données d'utilisation et de performances qu'UiPath utilise pour aider à diagnostiquer les problèmes et à améliorer Orchestrator. Pour plus d'informations sur les pratiques de confidentialité d'UiPath, examinez la déclaration de confidentialité. Les valeurs suivantes sont disponibles :

  • true : la fonctionnalité de télémétrie est activée. Il s'agit de la valeur par défaut.
  • false - la fonctionnalité de télémétrie est désactivée.

Il est également possible d'accepter ou de refuser la collecte de données de performances et d'utilisation lors de l'installation ou de la mise à jour de votre instance d'Orchestrator, comme décrit ici.

Enregistrement multimédia

MediaRecording.Enabled

Définissez-le sur false pour désactiver la fonctionnalité d'enregistrement. Par défaut, il est défini sur true, impliquant que la fonctionnalité est activée. Le stockage des fichiers est configuré à l'aide des paramètres Storage.Type et Storage.Location.

Pagination

Pagination.Limits.Enabled

Définissez par défaut la valeur sur true pour Cloud Platform et les nouvelles installations des instances d'Orchestrator sur site. Ajoute une valeur $top pour tous les appels vers les points de terminaison d'API avec des paramètres de pagination (par exemple, odata/Users).

Déclencheurs (Triggers)

Triggers.DisableWhenFailedCount

Vous pouvez configurer un déclencheur de façon à ce qu'il soit automatiquement désactivé après un certain nombre d'échecs de lancement et l'absence d'exécution réussie durant un nombre de jours spécifique. Dans ce contexte, Triggers.DisableWhenFailedCount vous permet d'ajuster le nombre d'exécutions infructueuses tandis que Triggers.DisableWhenFailingSinceDays vous permet de modifier le nombre de jours. Par défaut, la valeur Triggers.DisableWhenFailedCount est définie sur 10 et la valeur Triggers.DisableWhenFailingSinceDays sur 1, ce qui signifie que le déclencheur est désactivé après 10 tentatives infructueuses de lancement s'il n'y a pas eu d'exécutions réussies au cours de la journée précédente.
Pour empêcher la désactivation des déclencheurs en cas d'échec, vous devez définir Triggers.DisableWhenFailedCount sur 0.

Triggers.JobsCountStrategy

Active la stratégie de comptage des tâches pour les tâches lancées par le biais de déclencheurs. Masqué par défaut. Les options suivantes sont disponibles :

  • PerProcess - Un déclencheur lance le nombre de tâches requises en tenant compte de toutes les tâches en attente pour le processus spécifié. Par exemple, deux déclencheurs définis pour le même processus lancent respectivement 3 et 5 tâches. Si le premier déclencheur lance 3 tâches à un moment donné, lorsque le second déclencheur est déclenché, 2 tâches sont lancées de manière à atteindre les 5 tâches requises. Ajoutez la clé suivante dans le fichier de configuration pour utiliser cette stratégie : <add key="Triggers.JobsCountStrategy" value="PerProcess" />. Il s’agit de la valeur par défaut.
  • PerTrigger - Un déclencheur lance le nombre requis d’emplois en tenant compte des emplois existants précédemment lancés par ce même déclencheur. Par exemple, un déclencheur est défini pour lancer 9 emplois à un moment donné. Si 2 travaux ont été complétés avec succès au moment où ce déclencheur est déclenché à nouveau, Orchestrator lance 2 autres emplois afin d’atteindre les 9 emplois requis. Ajoutez la clé suivante dans le fichier config pour utiliser cette stratégie : <add key="Triggers.JobsCountStrategy" value="PerTrigger" />.
  • NoLimit - Un déclencheur lance le nombre de tâches requises en tenant compte de toutes les tâches existantes précédemment lancées par ce même déclencheur. Par exemple, un déclencheur est défini pour lancer 9 tâches à un moment donné. Si 2 tâches ont été exécutées avec succès au moment où ce déclencheur est à nouveau déclenché, Orchestrator lance 2 autres tâches afin d'atteindre les 9 tâches requises. Ajoutez la clé suivante dans le fichier de configuration pour utiliser cette stratégie : <add key="Triggers.JobsCountStrategy" value="NoLimit" />.

Features.QueueTriggers.PendingJobsStrategy

Permet de choisir la méthode de calcul du nombre de tâches supplémentaires à déclencher lorsque de nouveaux éléments sont ajoutés à une file d'attente. Cela se fait en soustrayant le nombre de tâches dans un certain état du nombre maximal ciblé de tâches à créer.

Les options suivantes sont disponibles :

  • True - C'est l'option par défaut. Cette option convient mieux aux cas où vous souhaitez qu'Orchestrator suppose que toutes les tâches en cours d'exécution n'ont pas encore retiré les éléments de la file d'attente du statut Nouveau (New).

    Le nombre est calculé comme suit :

    Nombre maximal de tâches supplémentaires à créer en fonction des éléments de file d'attente nouvellement disponibles = nombre maximal de tâches en attente et en cours d'exécution autorisés simultanément - nombre de tâches dans un état En attente (Pending).

  • False : cette option convient mieux aux cas où vous souhaitez qu'Orchestrator suppose que toutes les tâches en cours d'exécution n'ont pas encore retiré les éléments de la file d'attente du statut Nouveau (New).

    Le nombre est calculé comme suit :

    Nombre maximal de tâches supplémentaires à créer en fonction des éléments de file d'attente nouvellement disponibles = le nombre maximal de tâches en attente et en cours autorisées simultanément moins le nombre de tâches dans l'un des états suivants : Pending,Resumed,Running,Stopping,Terncing.

Autres

PreventAutoRefresh.Enabled

Contrôlez si la page Tâches dans le menu Surveillance s'actualise automatiquement ou non pour chaque nouvelle tâche créée. La clé <add key="PreventAutoRefresh.Enabled" value="true" /> peut être ajoutée pour limiter la réactualisation automatique de la page lorsque des tâches sont en cours d'exécution. La clé n'est pas affichée par défaut, et la valeur par défaut est false, ce qui signifie que Orchestrator actualise automatiquement la page pour chaque nouvelle tâche.
La page est mise à jour lorsque des filtres sont appliqués ou que les statuts de tâche changent, quel que soit le paramètre PreventAutoRefresh.Enabled.

Features.ClassicFolders.Enabled

Contrôlez si le modèle de dossiers classiques est activé. La valeur par défaut est false, ce qui signifie que les dossiers classiques sont désactivés et que seuls les dossiers modernes sont disponibles. Ce paramètre est masqué par défaut.

Jobs.TerminatingJobsTimeout

Configurez le temps écoulé jusqu’à ce que les tâches en cours d'achèvement deviennent aptes à être marquées comme Défaillantes. La valeur par défaut est 1440, ce qui signifie que les tâches ne peuvent pas être marquées comme Défaillantes à moins qu’elles aient été en cours d'achèvement pendant au moins une journée. Ce paramètre est masqué par défaut.

Jobs.TerminatingJobsCleanupCron

Configurez une expression Cron qui contrôle la fréquence de la tâche en arrière-plan en marquant les tâches en cours d'achèvement comme Défaillantes. Les tâches ne peuvent pas être marquées comme Défaillantes à moins qu’elles n’aient été en cours d'achèvement au moins pendant la durée définie dans le paramètre Jobs.TerminatingJobsTimeout. Les valeurs par défaut sont 0 0 0/3 1/1 * ? * pour Jobs.TerminatingJobsCleanupCron, et 1440 pour Jobs.TerminatingJobsTimeout, ce qui signifie que la tâche en arrière-plan s’exécute une fois toutes les trois heures et que seules les tâches qui sont en cours d'achèvement pendant au moins un jour deviennent Défaillantes. Ce paramètre est masqué par défaut.

PW.StopExploringCron

Configurez une expression Cron qui contrôle la fréquence d'une tâche en arrière-plan qui vérifie si les utilisateurs explorant les espaces de travail personnels disposent toujours des autorisations requises (Afficher et Modifier les dossiers) pour les explorer. La valeur par défaut est 0 25 * ? * *, ce qui signifie que la tâche d'arrière-plan s'exécute à la 25 minute de chaque heure. S'ils ne disposent pas des autorisations requises, les sessions d'exploration sont arrêtées. Veuillez noter que ce paramètre est masqué par défaut.

Features.LongRunning.Enabled

Configurer si les longs flux de travail sont pris en charge ou non dans votre instance. Ajoutez la clé suivante pour l'activer : <add key="Features.LongRunning.Enabled" value="true" />.

Tasks.ModuleEnabled

Configurer si la fonctionnalité Actions est activée dans votre instance. Ajoutez la clé suivante pour l'activer : <add key="Tasks.ModuleEnabled" value="true" />. Ce paramètre rend la fonctionnalité disponible au niveau des instances. Pour le configurer sur une base par locataire, suivez les étapes ici. Le paramètre Features.LongRunning.Enabled doit être défini sur true pour prendre effet.

Features.SmartCardAuthentication.Enabled

Configurez si l'authentification par carte à puce est activée ou non dans votre cas. Ajoutez la clé suivante pour l'activer : <add key="Features.SmartCardAuthentication.Enabled" value="true" />.

OData.BackwardsCompatible.Enabled

Permet de contrôler le mode d'analyse des caractères spéciaux dans l'API Orchestrator. Si cette option est définie sur true, les caractères spéciaux inclus dans le corps des requêtes et des réponses sont analysés. Par défaut, ce paramètre est masqué et défini sur false .

NotRespondingRobotsJobStartDelay

Permet de définir un délai, en secondes, de la première vérification effectuée sur le statut de vos robots après une mise à niveau. Ce paramètre ne s'affiche pas par défaut dans UiPath.Orchestrator.dll.config.

Upload.Queues.MaxNumberOfItems

Permet de diminuer le nombre maximal d'éléments qui peuvent être téléchargés simultanément à l'aide de la fonctionnalité de téléchargement en bloc. La valeur par défaut est 15000. Veuillez noter que ce paramètre n'est pas affiché par défaut dans UiPath.Orchestrator.dll.config.

Processes.FilterOutDeleted

Permet d'optimiser la manière dont Orchestrator récupère les processus. L'optimisation est obtenue en supprimant les vérifications inutiles pour les processus orphelins dont les packages associés ont été supprimés. Cela améliore les performances globales de votre instance, surtout s'il s'agit d'un grand déploiement. Les valeurs suivantes sont disponibles :

  • false - La récupération des packages est optimisée, aucune vérification n'est effectuée pour les processus orphelins.
  • true : la récupération des packages n'est pas optimisée.
Notez que ce paramètre est masqué et qu'il est défini par défaut sur true, ce qui signifie que la récupération de processus n'est pas optimisée.

CertificatesStoreLocation

Spécifiez que le certificat de votre instance Orchestrator est installé sur le magasin de certificats de la machine locale en utilisant le paramètre suivant : <add key="CertificatesStoreLocation" value="LocalMachine" />. Assurez-vous que AzureKeyVaultCertificateStoreLocation dans appsettings.Production.json a la même valeur.

ProxyIntegration.Enabled

Permet de contrôler l’intégration du proxy. Par défaut, le paramètre n'est pas affiché dans UiPath.Orchestrator.dll.config et sa valeur est définie sur true, ce qui signifie que l'intégration du proxy est activée, sauf indication contraire. Utilisez <add key="ProxyIntegration.Enabled" value="false"/> pour désactiver l'intégration du proxy.

SecureAppSettings

EncryptionKey

La clé de cryptage utilisée pour sécuriser les mots de passe dans les actifs d'identification. Si vous utilisez un environnement avec un équilibreur de charge du réseau, cette clé doit être la même pour toutes les machines.

Les paramètres suivants vous permettent de configurer Azure Key Vault, où vous pouvez stocker vos clés de chiffrement basées sur le locataire. Notez que ces paramètres ne peuvent être utilisés que si EncryptionKeyPerTenant.Enabled est défini sur true et EncryptionKeyPerTenant.KeyProvider défini sur AzureKeyVault. En outre, assurez-vous de fournir toutes les autorisations de clé, de clé secrète et de certificat à votre instance d’Orchestrator, dans les stratégies d’accès de votre Azure Key Vault. Pour connaître la procédure complète, veuillez consulter cette page.

Azure.KeyVault.ClientId

ID d'application de votre instance d'Orchestrator. Il est disponible dans l'option Inscriptions d'applications (App Registrations) d'Azure et doit avoir le format ae11aa1a-1234-1234-a123-a12a12aaa1aa. Ce paramètre n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config. Exemple : <add key="Azure.KeyVault.ClientId" value="ae11aa1a-1234-1234-a123-a12a12aaa1aa" />.

Azure.KeyVault.CertificateThumbprint

Empreinte numérique générée par Azure pour le certificat d'Orchestrator. Vous pouvez trouver cette valeur dans Azure dans App Services > Votre instance (Your instance) > Paramètres SSL (SSL Settings) > Certificats privés (Private Certificates) (ou Certificats publics (Public Certificates)). Ce paramètre n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config . Exemple : <add key="Azure.KeyVault.CertificateThumbprint" value="1234123412341234123412341234124312341234" />.

Azure.KeyVault.VaultAddress

Nom DNS d'Azure Key Vault. Il est disponible dans Vue d'ensemble (Overview) de votre coffre, dans le champ Nom DNS (DNS Name), et doit avoir le format https://CustomVaultName.vault.azure.net/. Ce paramètre n'est pas affiché par défaut dans le fichier UiPath.Orchestrator.dll.config. Exemple : <add key="Azure.KeyVault.VaultAddress" value="https://CustomVaultName.vault.azure.net/" />

Azure.KeyVault.DirectoryId

Indiquez l’iD de répertoire de votre organisation tel qu'affiché sur le portail Azure. Obligatoire si vous stockez les clés de chiffrement par locataire dans Azure Key Vault. Exemple : <add key="Azure.KeyVault.DirectoryId" value="c9d0e174-684e-469e-84ea-d32c863ad534" />.

Paramètres du serveur d'identité

Cette section contient les paramètres de configuration des jetons d’accès S2S et des jetons d’accès d’enregistrement de robots.

Intégration

Pour propager en toute sécurité les données vers Identity Server, Orchestrator a besoin d’un jeton d’accès pour authentifier les jetons. Ce jeton est extrait de Identity Server via le flux d’informations d’identification du client (S2S). Les clés suivantes doivent être ajoutées à UiPath.Orchestrator.dll.config :

IdentityServer.GroupMembershipCacheExpireHours

Vous permet de spécifier la durée, en heures, après laquelle le cache des groupes Identity Server ajoutés à Orchestrator expire. Ce paramètre n’est pas visible par défaut et sa valeur par défaut est 1

IdentityServer.Integration.Enabled

Active ou désactive l'intégration du serveur d'identité à Orchestrator. Par défaut, sa valeur est définie sur true.

IdentityServer.Integration.Authority

Vous permet de définir l'emplacement du serveur d'identité (Identity Server). Par défaut, la valeur est définie sur https://Orchestrator/Identity, où Orchestrator constitue l'adresse d'installation de votre Orchestrator.

IdentityServer.Integration.ClientId

Permet de définir l'ID d'application (Client Id) utilisé pour générer les jetons d'accès S2S enregistrés dans le Identity Server. Sa valeur est générée au moment de l’installation.

IdentityServer.Integration.ClientSecret

Permet de faire reconnaître la clé secrète du client de l’application Orchestrator S2S par le serveur d'identité. Sa valeur est générée au moment de l’installation.

IdentityServer.Integration.AccessTokenCacheBufferInSeconds

Permet de définir le délai en secondes avant l'expiration du tampon de cache du jeton d'accès. Par défaut, sa valeur est définie sur 50.

IdentityServer.Integration.UserOrchestratorApiAudience

Le Identity Server peut générer plusieurs jetons d'accès avec différents publics. Les requêtes des API Orchestrator peuvent être autorisées à l'aide de jetons d'accès utilisateur qui ont ce public. Par défaut, sa valeur est réglée sur OrchestratorApiUserAccess.
<add key="IdentityServer.Integration.Enabled" value="true" />
<add key="IdentityServer.Integration.Authority" value="https://Orchestrator/Identity" />
<add key="IdentityServer.Integration.ClientId" value="orchestratorapiaccess" />
<add key="IdentityServer.Integration.ClientSecret" value="a5d57b1d-5b25-49ba-bff7-33aa57f96a58" />
<add key="IdentityServer.Integration.AccessTokenCacheBufferInSeconds" value="50" />
<add key="IdentityServer.Integration.UserOrchestratorApiAudience" value="OrchestratorApiUserAccess" /><add key="IdentityServer.Integration.Enabled" value="true" />
<add key="IdentityServer.Integration.Authority" value="https://Orchestrator/Identity" />
<add key="IdentityServer.Integration.ClientId" value="orchestratorapiaccess" />
<add key="IdentityServer.Integration.ClientSecret" value="a5d57b1d-5b25-49ba-bff7-33aa57f96a58" />
<add key="IdentityServer.Integration.AccessTokenCacheBufferInSeconds" value="50" />
<add key="IdentityServer.Integration.UserOrchestratorApiAudience" value="OrchestratorApiUserAccess" />
Pour consommer les jetons d'accès aux informations des clients (S2S) générés par le Identity Server, Orchestrator a besoin d'ajouter les clés suivantes UiPath.Orchestrator.dll.config:

IdentityServer.Integration.S2SOrchestratorApiAudience

Permet de définir l'audience qu'Orchestrator enregistrera lors de la validation d'un jeton d'accès S2S. Par défaut, sa valeur est définie sur OrchestratorApiS2SAccess.
Assurez-vous que UiPath.Orchestrator.dll.config contient également les clés préexistantes suivantes avec leurs valeurs définies sur true :

MultiTenancy.AllowHostToAccessTenantApi

Lorsqu'il est défini sur true, il permet aux utilisateurs hôtes d'accéder aux données spécifiques des autres locataires. Par défaut, sa valeur est définie sur true.

MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled

Lorsqu'Orchestrator reçoit un appel API autorisé à l'aide du jeton d'accès S2S, un paramètre true permet à Orchestrator d'identifier le locataire en lisant l'ID global du locataire à partir de l'en-tête de demande de l'API.
<add key="IdentityServer.Integration.S2SOrchestratorApiAudience" value="OrchestratorApiS2SAccess" />
<add key="MultiTenancy.AllowHostToAccessTenantApi" value="true" />
<add key="MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled" value="true" /><add key="IdentityServer.Integration.S2SOrchestratorApiAudience" value="OrchestratorApiS2SAccess" />
<add key="MultiTenancy.AllowHostToAccessTenantApi" value="true" />
<add key="MultiTenancy.TenantResolvers.HttpGlobalIdHeaderEnabled" value="true" />

Jetons d'accès d'approvisionnement des robots

Orchestrator fait office de générateur de jetons auprès des Robots. Les Robots appellent le point de terminaison Orchestrator pour générer un jeton d'accès. Le jeton d'accès est ensuite transmis aux activités qui peuvent faire appel à différentes ressources, telles que AI Fabric. L'intégration de Identity Server à Orchestrator permet au serveur d'identité de prendre en charge la génération des jetons d'accès.

Paramètres du serveur de mise à jour

Cette section contient les paramètres de configuration du serveur de mise à jour.

UpdateServer.CheckUpdates.PollingInterval

Fréquence à laquelle le client vérifie les mises à jour. La valeur par défaut est 180 minutes.

UpdateServer.CheckUpdates.DefaultForceInstallAfterMinutes

Après combien de minutes démarre une mise à jour forcée si la mise à jour a été reportée. La valeur par défaut est 1 440 minutes.

UpdateServer.CheckUpdates.ScheduledForceInstallAfterMinutes

Après combien de minutes démarre une mise à jour forcée si la mise à jour a été reportée. Ceci est spécifique aux mises à jour planifiées. La valeur par défaut est 10 minutes.

UpdateServer.CheckUpdates.MaxRetries

Combien de fois une mise à jour ayant échoué est relancée. La valeur par défaut est 3.

UpdateServer.UpdateRequest.RetryStepMinutes

Comment la nouvelle tentative est effectuée en fonction des séries chronologiques.

Exemple :

  • Première tentative : après la valeur configurée en minutes.
  • Deuxième tentative : après deux fois la valeur configurée en minutes.
  • Troisième tentative : après quatre fois la valeur configurée en minutes.

Configuration de la journalisation

Journal des évènements du Robot

Il s'agit de la clé UiPath.Orchestrator.dll.configcorrespondante : <logger name="Robot.*" writeTo="database,robotElasticBuffer" final="true" />. Elle est utilisée pour configurer des messages du journal générés par des Robots. Vous devez configurer les paramètres suivants :
  • writeTo : emplacement où les messages du journal générés par le Robot sont écrits. Les valeurs suivantes sont disponibles :
    • database : les journaux sont envoyés à la base de données SQL d'Orchestrator. Il s'agit de l'une des valeurs par défaut.
    • robotElasticBuffer : les journaux sont envoyés à Elasticsearch. Il s'agit de la deuxième valeur par défaut. N'oubliez pas que cela nécessite des paramètres supplémentaires. Détails ici.

      L'envoi de journaux à la base de données SQL d'Orchestrator et à Elasticsearch permet d'avoir des journaux de non-répudiation. Supprimez l'une des valeurs pour arrêter de vous connecter à cet emplacement.

  • final : un indicateur qui spécifie la marche à suivre lorsqu'une correspondance entre un message consigné et le nom de l'enregistreur est trouvée. Lorsqu'il est configuré sur true, il ne recherche pas d'autre correspondance. Lorsqu'il est configuré sur false, d'autres règles correspondant à la même source sont vérifiées. Par défaut, il est configuré sur true.

Journaux de surveillance

Il s'agit de la clé UiPath.Orchestrator.dll.config correspondante : <logger name="Monitoring.*" writeTo="monitoring" minlevel="Warn" final="true" />. Elle est utilisée pour configurer les journaux d'erreurs affichés sur la page Surveillance (Monitoring). Notez que si vous supprimez cette règle ou que vous modifiez target, aucun journal d'erreur ne s'affichera sur la page Surveillance (Monitoring).

Journaux des exceptions métier

Il s'agit de la clé UiPath.Orchestrator.dll.configcorrespondante : <logger name="BusinessException.*" minlevel="Info" writeTo="businessExceptionEventLog" final="true" />. Elle est utilisée pour configurer les journaux des exceptions métier levées. Par exemple, des problèmes de validation (par exemple Invalid username) ou des conflits métier (par exemple License expired).

Autres journaux

Il s'agit de la clé UiPath.Orchestrator.dll.configcorrespondante : <logger name="*" minlevel="Info" writeTo="eventLog" />. Elle est utilisée pour configurer tous les autres journaux, outre ceux décrits ci-dessus, y compris ceux générés par Orchestrator.
Remarque : Si vous accumulez plus de 2 millions de journalisations de Robots par semaine dans la base de données SQL, les performances peuvent se dégrader au bout de quelques mois sans que les anciennes journalisations soient nettoyées. Pour un nombre aussi important de journalisations, nous vous recommandons d'utiliser Elasticsearch.

Paramètres supplémentaires

En savoir plus sur les paramètres supplémentaires.

Elasticsearch

La cible NLog suivante doit être remplie en fonction de votre configuration d'ElasticSearch :

<target xsi:type="ElasticSearch" name="robotElastic" uri="<elasticSearch_url_1>,<elasticSearch_url_2>, <elasticSearch_url_3>" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" disablePing="true"  layout="${message}" excludedProperties="agentSessionId,tenantId,organizationUnitId,indexName" /><target xsi:type="ElasticSearch" name="robotElastic" uri="<elasticSearch_url_1>,<elasticSearch_url_2>, <elasticSearch_url_3>" index="${event-properties:item=indexName}-${date:format=yyyy.MM}" documentType="logEvent" includeAllProperties="true" disablePing="true"  layout="${message}" excludedProperties="agentSessionId,tenantId,organizationUnitId,indexName" />
  • uri : URL d'ElasticSearch ; notez que vous devez inclure le protocole et le port, par exemple http://elastic_server:9200. Vous pouvez éviter de supprimer l'équilibreur de charge en remplissant ce paramètre avec l'URL d'Elasticsearch de chaque nœud, par exemple uri="http://elastic-node1:9200,http://elastic-node2:9200,http://elastic-node3:9200".
  • excludedProperties : données que vous ne souhaitez pas enregistrer dans ElasticSearch.
  • index : format de l'index de journalisation, qui peut être soit unique par locataire ou partagé entre tous les locataires. Détails ci-dessous.
  • requireAuth - Défini sur true pour activer l'authentification lors de la connexion d'Orchestrator à Elasticsearch.
  • username - Spécifiez le nom d'utilisateur utilisé pour se connecter à Elasticsearch. Vous devez le configurer si requireAuth est défini sur true et si OAuthEnabled est défini sur false.
  • password - Spécifiez le mot de passe utilisé pour se connecter à Elasticsearch. Vous devez le configurer si requireAuth est défini sur true et si OAuthEnabled est défini sur false.
  • OAuthEnabled : Définissez ce paramètre sur true pour activer OAuth2 et utiliser un mécanisme d'authentification basé sur jeton pour la cible Nlog d'Elasticsearch. Lors de la première activation, vous devez fournir votre nom d'utilisateur et votre mot de passe actuels afin de générer le jeton initial. Pour que ce paramètre prenne effet, vous devez vous assurer que Logs.Elasticsearch.OAuthEnabled est également défini sur true et que vous avez correctement configuré le serveur Elasticsearch. Pour plus de détails, consultez l'Authentification X-PACK.

Configuration de l'index

  • Index individuel - index="${event-properties:item=indexName}-${date:format=yyyy.MM}" un index distinct est utilisé pour chaque locataire, ce qui implique que les journaux spécifiques à un locataire sont générés et récupérés en fonction d'un identificateur de locataire unique, dans ce cas, indexName qui prend par défaut le nom du locataire. Il s'agit de la configuration par défaut. Dans ce cas, les journalisations sont générés par mois.
  • Index partagé - index="robotlogs-${date:format=yyyy.MM.dd}" Un index est utilisé pour tous les locataires, ce qui signifie que toutes les journalisations, quel que soit le locataire, utilisent le même index. Dans ce cas, les journalisations sont générés par jour. Pour utiliser un index partagé, vous devez également ajouter la clé suivante dans UiPath.Orchestrator.dll.config : <add key="Logs.Elasticsearch.SharedIndex" value="robotlogs" />. Veillez à la configurer sur la même valeur que pour le paramètre index dans la cible NLog.
    Attention : les journaux générés à l'aide d'un index individuel sont conservés si vous passez à un index partagé. Cependant, les journaux générés à l'aide d'un index partagé sont perdus si vous passez à un index individuel.

Journalisation des événements dans la base de données

Pour stocker les journaux des événements système dans la base de données plutôt que dans l'observateur d'événements, procédez comme suit :

  1. Créez une table de base de données, par exemple :

    CREATE TABLE [dbo].[EventLogs](
        [Id] [bigint] IDENTITY(1,1) NOT NULL,
        [Timestamp] [datetime] NOT NULL,
        [Level] [int] NOT NULL,
        [Message] [nvarchar](max) NULL,
        [Exception] [nvarchar](max) NULL)CREATE TABLE [dbo].[EventLogs](
        [Id] [bigint] IDENTITY(1,1) NOT NULL,
        [Timestamp] [datetime] NOT NULL,
        [Level] [int] NOT NULL,
        [Message] [nvarchar](max) NULL,
        [Exception] [nvarchar](max) NULL)
    Dans la requête ci-dessus, nous créons une table nommée EventLogs avec les colonnes suivantes :
    • Id : pour conserver un numéro d'ID pour chaque journal, en commençant ici par 1 et en incrémentant la valeur avec chaque journal ajouté ;
    • Timestamp : pour conserver l'heure de journalisation de chaque événement ;
    • Level : pour conserver le niveau de journalisation numérique de chaque événement ;
    • Message : pour conserver le message de chaque événement, le cas échéant ;
    • Exception : pour conserver l'exception consignée pour chaque événement, le cas échéant.
      Remarque : Vous pouvez utiliser n'importe quel nom pour votre table et supprimer les colonnes de la requête ci-dessus ou en ajouter d’autres selon vos besoins.
  2. Dans le fichier UiPath.Orchestrator.dll.config, ajoutez une cible NLog :
    <target xsi:type="Database" connectionString="${ui-connection-strings:item=Default}" name="eventLogDatabase" keepConnection="true">
            <commandText>
              INSERT INTO dbo.EventLogs (Timestamp, Level, Message, Exception)
              VALUES (@timestamp, @level, @message, @exception)
            </commandText>
            <parameter name="@timestamp" layout="${date:format=yyyy-MM-dd HH\:mm\:ss.fff}" />
            <parameter name="@level" layout="${event-properties:item=levelOrdinal}" />
            <parameter name="@message" layout="${message}" />
            <parameter name="@exception" layout="${onexception:${exception:format=tostring:maxInnerExceptionLevel=5:innerFormat=tostring}}" />
    </target><target xsi:type="Database" connectionString="${ui-connection-strings:item=Default}" name="eventLogDatabase" keepConnection="true">
            <commandText>
              INSERT INTO dbo.EventLogs (Timestamp, Level, Message, Exception)
              VALUES (@timestamp, @level, @message, @exception)
            </commandText>
            <parameter name="@timestamp" layout="${date:format=yyyy-MM-dd HH\:mm\:ss.fff}" />
            <parameter name="@level" layout="${event-properties:item=levelOrdinal}" />
            <parameter name="@message" layout="${message}" />
            <parameter name="@exception" layout="${onexception:${exception:format=tostring:maxInnerExceptionLevel=5:innerFormat=tostring}}" />
    </target>
    Définition d'un parameter correspondant pour les données à ajouter dans chaque colonne de la base de données, dans cet exemple @timestamp, @level, @message et @exception.
  3. Enfin, associez la cible récemment créée à la classification de l'enregistreur NLog pour tous les messages d'Orchestrator, ci-dessus, en ajoutant :

    <logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" /><logger name="*" minlevel="Info" writeTo="eventLog,eventLogDatabase" />

Activation du débogage NLog

NLog est une plate-forme de consignation en open source, à configuration simple et extensible pour tout un ensemble de plates-formes .NET. NLog permet de stocker ou de transmettre des données du journal à un certain nombre de cibles prédéfinies ou personnalisées, telles qu'un fichier local, un journal des événements, un e-mail ou une base de données.

Attention : les cibles NLog personnalisées ne sont pas automatiquement migrées lors d'une mise à niveau. Vous devez les migrer manuellement vers Identity Server et les services Webhooks. Voir la documentation NLog dans Identity Server.
Bien qu’il existe un chevauchement, NLog et Orchestrator ont plusieurs niveaux de journalisation différenciés. Pour NLog, vous pouvez sélectionner Trace, Debug, Info, Warn, Error, Fatal, ou Off. Voir Niveaux de journalisation pour obtenir une description des niveaux disponibles dans Orchestrator.
Vous pouvez activer le débogage dans NLog pour vous assurer du bon fonctionnement. Par défaut, NLog est défini sur Off. Il est activé en configurant la section suivante du fichier UiPath.Orchestrator.dll.config :
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Off" internalLogFile=""><nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Off" internalLogFile=""> 

Les attributs qui doivent être définis sont les suivants :

  • internalLogLevel : niveau de journalisation souhaité
  • internalLogFile : emplacement du fichier journal

Par exemple :

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Debug" internalLogFile="C:\logs.txt"><nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" throwExceptions="false" internalLogLevel="Debug" internalLogFile="C:\logs.txt"> 
Remarque :
Le profil d'utilisateur sous lequel Orchestrator s'exécute doit avoir accès au chemin d'accès spécifié dans l'attribut internalLogFile.

Orchestrator read-only replica

Features.Queues.QueryUseReadOnlyReplica

Set the value to true if you want to allow querying the read-only replica for queue items.
La valeur par défaut est false.

Monitoring.UseReadOnlyReplica

Set the value to true if you want to retrieve monitoring data from the read-only replica.
La valeur par défaut est false.

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

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.