- Démarrage
- Prérequis
- Prérequis matériels
- Prérequis logiciels
- Utilisation d'un certificat pour le protocole HTTPS
- Meilleures pratiques
- Installation
- Mise à jour en cours
- Serveur d'identité
- Résolution des erreurs de démarrage
Configurez un certificat SSL pour activer la communication HTTPS entre Orchestrator et Robots.
Demande d’un certificat SAN SSL auprès de l’Autorité de certification
Cette section fournit une explication sur la façon d’activer le protocole HTTP pour la communication entre Orchestrator et les Robots.
Il est préférable d'utiliser un certificat SAN SSL soumis à une autorité de certification plutôt qu'un certificat auto-signé car aucun certificat ne doit être installé sur les ordinateurs Robot dans le premier cas. Le certificat SAN SLL émis par l'autorité de certification est approuvé par tous les ordinateurs du domaine.
Si la machine Orchestrator principale est enregistrée dans un Active Directory qui possède une Autorité de certification locale et une politique d'auto-inscription, l'utilisateur peut remplir une demande de certificat, comme décrit dans la procédure suivante.
-
Select the Windows and R keys, Enter
certlm.msc, and Select OK to open the Certificates snap-in. -
Right-Select the Personal node, select All Tasks, then Advanced Operations, and Create Custom Request. Select Next in the Before You Begin window.
Figure 1. Créer une demande personnalisée
-
In the Select Certificate Enrollment Policy window, choose Active Directory Enrollment Policy, and Select Next.
-
Dans la fenêtre Demande personnalisée, choisissez un modèle de certificat désigné pour l’utilisation du serveur Web. Il doit être appelé Web Server ou Web.SAN. Si aucun modèle n’est défini, choisissez (Pas de modèle) Legacy Key . Ensuite, sélectionnez PKCS #10 comme format de votre demande.
Figure 2. Fenêtre de demande personnalisée
-
In the Certificate Information window, Select on the Details button corresponding to your request, and then select Properties to open the Certificate Properties window and customize the certificate request.
Figure 3. Informations sur le certificat
-
Personnalisez les informations dans l'onglet Objet tel que décrit ci-dessous :
-
In the Subject name section, go to Type, and select Common Name from the drop-down menu. In the Value field, Enter the fully qualified domain name (FQDN) of the machine, e.g. myhost.domain.local. Then Select Add.
-
In the Alternative name section, go to Type, and select DNS from the drop-down menu. In the Value field, Enter the machine's FQDN (the same as in step 6.1.). Then Select Add.
-
Si Orchestrator est installé sur plusieurs nœuds, vous devez ajouter tous ces noms de domaine complets, comme décrit à l'étape 6.2. Ajoutez également le nom de domaine complet de l'équilibreur de charge.
Figure 4. Onglet Objet
-
-
Personnalisez les informations dans l'onglet Clé privée tel que décrit ci-dessous :
- Dans la case Cryptography Service Provider , allez sur Sélectionner Cryptography Service Provider (CSP) et vérifiez Microsoft RSA SChannel cryptography Provider (Chiffrement).
Figure 5. Clé privée
- Dans la section Options de clé , assurez-vous que Taille de clé est fixé sur au moins 2048 et que Rendre la clé privée exportable est coché.
Image 6. Taille de la clé
- Dans la section Type de clé (Key type), assurez-vous que Utilisation des clés (Key usage) est fixé sur Échange (Exchange).
Figure 7. Type de clé
-
Select OK in the configuration window and Next in the Certificate Information screen.
-
Sur l'écran Où souhaitez-vous enregistrer votre demande hors ligne, indiquer un chemin d'accès et un nom de fichier de votre choix, par exemple
C:\Users\YourUser\Documents\sslRequest.req, et sélectionnez Base 64 comme format de fichier.Figure 8. Nom et format du fichier
-
Une fois que l’Autorité des certificats a accepté la demande d’inscription, le certificat est visible dans le magasin personnel.
Important :Si l’entreprise dispose d’une procédure/modèle standard pour l’obtention du certificat, l’utilisateur doit se référer à cette procédure.
Pour d’autres environnements (par exemple, sans politique d’inscription automatique), vous pouvez toujours utiliser ce document comme référence pour les paramètres du certificat.
Création d’un certificat SAN SSL auto-signé
Si vous devez créer rapidement un certificat SSL à des fins de test seulement, vous pouvez créer un certificat SAN SSL auto-signé.
Si votre machine Orchestrator exécute Windows Server 2012 R2, une solution de contournement est nécessaire pour créer un certificat SSL SAN auto-signé. Reportez-vous à Création d'un certificat SSL SAN auto-signé sur une machine Orchestrator Windows Server 2012 R2 pour plus de détails.
Création d’un certificat SSL auto-signé sur la Primary Orchestrator Machine
Ouvrez une console PowerShell en tant qu'administrateur, et lancez les commandes suivantes. N'oubliez pas de personnaliser les valeurs en fonction de votre environnement.
$ssc = New-SelfSignedCertificate -FriendlyName "TestingCertificate" -DnsName "loadbalancer.domain.local","node1.domain.local","node2.domain.local"
$store = New-Object System.Security.Cryptography.X509Certificates.X509Store( "Root", "LocalMachine")
$store.Open("MaxAllowed")
$store.Add($ssc)
$pass = ConvertTo-SecureString -String "myPass" -Force -AsPlainText
Export-PfxCertificate -Cert $ssc -FilePath "C:\temp\testingCertificate.pfx" -Password $pass
$ssc = New-SelfSignedCertificate -FriendlyName "TestingCertificate" -DnsName "loadbalancer.domain.local","node1.domain.local","node2.domain.local"
$store = New-Object System.Security.Cryptography.X509Certificates.X509Store( "Root", "LocalMachine")
$store.Open("MaxAllowed")
$store.Add($ssc)
$pass = ConvertTo-SecureString -String "myPass" -Force -AsPlainText
Export-PfxCertificate -Cert $ssc -FilePath "C:\temp\testingCertificate.pfx" -Password $pass
Les commandes ci-dessus exportent également le fichier C:\temp\testingCertificate.pfx pour une utilisation ultérieure.
Une fois le certificat créé, procédez aux actions suivantes :
- Si ApplicationPoolIdentity est utilisé, dans la console de certificat, accédez à Personnel > Certificats. Ensuite, cliquez droit sur votre certificat Orchestrator personnel, sélectionnez Toutes les tâches > Gérer les clés privées et accordez toutes les autorisations à IIS AppPool\Identity et IIS_IUSRS.
- Si un compte personnalisé est utilisé, dans la console de certificat, accédez à Personnel > Certificats. Ensuite, cliquez droit sur votre certificat Orchestrator personnel, sélectionnez Toutes les tâches > Gérer les clés privées et accordez des autorisations complètes à l’utilisateur personnalisé défini sur le pool d’applications Orchestrator.
IIS AppPool\Identity et IIS_IUSRS sont des groupes locaux et doivent être recherchés non dans le domaine, mais dans la machine locale.
Importation du certificat auto-signé SAN vers d’autres Machines
Afin de rendre le certificat auto-signé disponible sur d’autres machines (nœuds Orchestrator secondaires / machines Robot), ouvrez une console PowerShell en tant qu’administrateur et lancez les commandes suivantes.
$pass = ConvertTo-SecureString -String "myPass" -Force -AsPlainText
$imported = Import-PfxCertificate -FilePath "C:\temp\testingCertificate.pfx" -CertStoreLocation Cert:\LocalMachine\My\ -Exportable -Password $pass
$store = New-Object System.Security.Cryptography.X509Certificates.X509Store( "Root", "LocalMachine")
$store.Open("MaxAllowed")
$store.Add($imported)
$pass = ConvertTo-SecureString -String "myPass" -Force -AsPlainText
$imported = Import-PfxCertificate -FilePath "C:\temp\testingCertificate.pfx" -CertStoreLocation Cert:\LocalMachine\My\ -Exportable -Password $pass
$store = New-Object System.Security.Cryptography.X509Certificates.X509Store( "Root", "LocalMachine")
$store.Open("MaxAllowed")
$store.Add($imported)
Firefox : autorisation des exceptions
Firefox gère le processus un peu différemment, car il ne lit pas les informations de certificats dans le magasin Windows. Au lieu d'installer les certificats, il permet de définir des exceptions pour les certificats SSL sur des sites spécifiques.
Lorsque vous visitez un site Web contenant une erreur de certificat, le message d'avertissement présenté dans la capture d'écran ci-dessous s'affiche. L'URL à laquelle vous tentez d'accéder s'affiche dans la zone bleue. Procédez comme suit pour créer une exception afin de contourner cet avertissement pour cette URL spécifique :
-
Select the Add Exception button. The Add Security Exception window is displayed.
Figure 9. Ajouter des exceptions
-
In the Add Security Exception window, Select Confirm Security Exception to configure this exception locally.
Image 10. Ajouter des exceptions de sécurité
Remarque :Si un site spécifique redirige vers les sous-domaines, il est possible que vous receviez plusieurs invites d'avertissement relatives à la sécurité, avec à chaque fois, des URL sensiblement différentes. Ajoutez des exceptions pour ces URL en suivant la procédure ci-dessus.
Certificats de résolution des problèmes
Si vous rencontrez des problèmes avec l’utilisation d’un certificat avec UiPathOrchestrator.msi (lors de l’installation ou de la mise à niveau), voici où vous pouvez commencer votre dépannage :
Du panneau de configuration :
- Open Manage Computer Certificates -> Personal -> Certificates. Identify your certificate and double-Select it. In the General tab there should information about its validity.
- À partir d’une ligne de commande, exécutez la commande suivante pour diagnostiquer le certificat :
certutil -v -verifystore My <certificateThumbprint>– son résumé se trouve à la fin de la sortie.
L'empreinte de votre certificat se trouve dans l'onglet Détails décrit à l'étape 1.
Erreur interne du serveur
Une erreur interne du serveur peut se produire si le certificat ne dispose pas des autorisations appropriées. Exécutez ce qui suit en tant qu’administrateur pour accorder les autorisations nécessaires :
import-module WebAdministration
$siteName = 'UiPath Orchestrator'
$binding = (Get-ChildItem -Path IIS:\SSLBindings | Where Sites -eq $siteName)[0]
$certLoc = "cert:\LocalMachine\MY\$($binding.Thumbprint)"
$cert = Get-Item $certLoc
$keyPath = $env:ProgramData + "\Microsoft\Crypto\RSA\MachineKeys\"
$keyName = $cert.PrivateKey.CspKeyContainerInfo.UniqueKeyContainerName
$keyFullPath = $keyPath + $keyName
$acl = (Get-Item $keyFullPath).GetAccessControl('Access')
$permission="IIS_IUSRS","Full","Allow"
$accessRule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList $permission
$acl.AddAccessRule($accessRule)
Set-Acl -Path $keyFullPath -AclObject $acl
import-module WebAdministration
$siteName = 'UiPath Orchestrator'
$binding = (Get-ChildItem -Path IIS:\SSLBindings | Where Sites -eq $siteName)[0]
$certLoc = "cert:\LocalMachine\MY\$($binding.Thumbprint)"
$cert = Get-Item $certLoc
$keyPath = $env:ProgramData + "\Microsoft\Crypto\RSA\MachineKeys\"
$keyName = $cert.PrivateKey.CspKeyContainerInfo.UniqueKeyContainerName
$keyFullPath = $keyPath + $keyName
$acl = (Get-Item $keyFullPath).GetAccessControl('Access')
$permission="IIS_IUSRS","Full","Allow"
$accessRule = New-Object -TypeName System.Security.AccessControl.FileSystemAccessRule -ArgumentList $permission
$acl.AddAccessRule($accessRule)
Set-Acl -Path $keyFullPath -AclObject $acl
Après avoir exécuté le script, procédez aux actions suivantes :
- Si ApplicationPoolIdentity est utilisé, dans la console de certificat, accédez à Personnel > Certificats. Ensuite, cliquez droit sur votre certificat Orchestrator personnel, sélectionnez Toutes les tâches > Gérer les clés privées et accordez toutes les autorisations à IIS AppPool\Identity et IIS_IUSRS.
- Si un compte personnalisé est utilisé, dans la console de certificat, accédez à Personnel > Certificats. Ensuite, cliquez droit sur votre certificat Orchestrator personnel, sélectionnez Toutes les tâches > Gérer les clés privées et accordez des autorisations complètes à l’utilisateur personnalisé défini sur le pool d’applications Orchestrator.
IIS AppPool\Identity et IIS_IUSRS sont des groupes locaux et doivent être recherchés non dans le domaine, mais dans la machine locale.
Erreur du certificat Insights
Si vous rencontrez des erreurs lorsque vous essayez de modifier votre certificat Insights, assurez-vous de suivre les instructions fournies dans Mise à jour du certificat Insights (Updating the Insights Certificate).
Erreur de certificat des navigateurs basés sur Chromium
Si une erreur de certificat se produit lorsque des navigateurs basés sur Chromium sont utilisés, créez un certificat auto-signé contenant une signature numérique sous le format suivant :
- Ouvrez une console PowerShell en tant qu'administrateur, et lancez les commandes suivantes. N'oubliez pas de personnaliser les valeurs en fonction de votre environnement.
$cert = New-SelfSignedCertificate -FriendlyName "MyServerSSL" -DnsName “example01” -CertStoreLocation "cert:\LocalMachine\My" -KeyUsage DigitalSignature,KeyEncipherment,DataEncipherment -KeyAlgorithm RSA -HashAlgorithm SHA256 -KeyLength 2048 -KeyUsageProperty All -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -NotAfter (Get-Date).AddYears(5) $pwd = 'p@ssw0rd' $SSpwd = ConvertTo-SecureString -String $pwd -Force -AsPlainText Export-PfxCertificate -Cert "Cert:\LocalMachine\My\$($cert.Thumbprint)" -FilePath custom_cert.pfx -Password $SSpwd Export-Certificate -Cert "Cert:\LocalMachine\My\$($cert.Thumbprint)" -FilePath custom_public.cer$cert = New-SelfSignedCertificate -FriendlyName "MyServerSSL" -DnsName “example01” -CertStoreLocation "cert:\LocalMachine\My" -KeyUsage DigitalSignature,KeyEncipherment,DataEncipherment -KeyAlgorithm RSA -HashAlgorithm SHA256 -KeyLength 2048 -KeyUsageProperty All -Provider "Microsoft Enhanced RSA and AES Cryptographic Provider" -NotAfter (Get-Date).AddYears(5) $pwd = 'p@ssw0rd' $SSpwd = ConvertTo-SecureString -String $pwd -Force -AsPlainText Export-PfxCertificate -Cert "Cert:\LocalMachine\My\$($cert.Thumbprint)" -FilePath custom_cert.pfx -Password $SSpwd Export-Certificate -Cert "Cert:\LocalMachine\My\$($cert.Thumbprint)" -FilePath custom_public.cerRemarque :Les commandes exportent également le fichier
.pfxpour une utilisation ultérieure. - Une fois le certificat créé, vous devez également prendre en compte les scénarios suivants :
- Si ApplicationPoolIdentity est utilisé :
- Dans la console de certificats, accédez à Personnel, puis à Certificats.
- Cliquez droit sur votre certificat Orchestrator personnel, sélectionnez Toutes les tâches, puis Gérer les clés privées.
- Accorde des autorisations complètes à IIS AppPool\Identity et à IIS_IUSRS.
- Si un compte personnalisé est utilisé :
- Dans la console de certificats, accédez à Personnel, puis à Certificats.
- Cliquez droit sur votre certificat Orchestrator personnel, sélectionnez Toutes les tâches, puis Gérer les clés privées.
- Accordez des autorisations complètes à l’utilisateur personnalisé qui a été défini sur le pool d’applications Orchestrator.
Remarque :
IIS AppPool\Identity et IIS_IUSRS sont des groupes locaux et doivent être recherchés non dans le domaine, mais dans la machine locale.
- Si ApplicationPoolIdentity est utilisé :
- Demande d’un certificat SAN SSL auprès de l’Autorité de certification
- Création d’un certificat SAN SSL auto-signé
- Création d’un certificat SSL auto-signé sur la Primary Orchestrator Machine
- Importation du certificat auto-signé SAN vers d’autres Machines
- Firefox : autorisation des exceptions
- Certificats de résolution des problèmes
- Erreur interne du serveur
- Erreur du certificat Insights
- Erreur de certificat des navigateurs basés sur Chromium