- 入门指南
- 要求
- 最佳实践
- 安装
- 正在更新
- 身份服务器
- 对启动错误进行故障排除

Orchestrator 安装指南
为 HTTPS 协议使用证书
向证书颁发机构请求 SAN SSL 证书
本节提供有关如何启用 Orchestrator 与机器人之间的通信的 HTTP 协议的说明。
最好使用提交给证书颁发机构的 SAN SSL 证书,而不是使用自签名证书,因为在前一种情况下,无需在机器人计算机上安装任何证书。由证书颁发机构颁发的 SAN SLL 证书受到域中所有计算机的信任。
如果主 Orchestrator 计算机注册到具有本地证书颁发机构和自动注册策略的 Active Directory 中,则用户可以按照以下过程中的说明填写证书请求。
- 按 Windows 和 R 键,输入
certlm.msc,然后单击“确定”打开“证书”管理单元。 - 右键单击“个人”节点,选择“所有任务” ,然后选择“高级操作”,“创建自定义请求”。在“开始之前”窗口中,单击“下一步”。
图 1. 创建自定义请求

- 在“选择证书注册策略”窗口中,选择“ Active Directory 注册策略”,然后单击“下一步”。
- 在“自定义请求”窗口中,选择一个指定用于网页服务器的证书模板。它应该称为 Web Server 或 Web.SAN。如果未定义模板,请选择(无模板)传统密钥。然后,选择 PKCS #10 作为您的请求格式。
图 2. “自定义请求”窗口

- 在“证书信息”窗口中,单击与您的请求相对应的“详细信息”按钮,然后选择“属性”以打开“证书属性”窗口并自定义证书请求。
图 3. 证书信息

-
如下所述在“主题”选项卡中自定义信息:
-
在“主题名称”部分中,转到“类型” ,然后从下拉菜单中选择“通用名称” 。在“值”字段中,输入计算机的完全限定域名 (FQDN),例如“myhost.domain.local”(“myhost.domain.local”)。然后单击“添加” 。
-
在“备用名称”部分中,转到“类型” ,然后从下拉菜单中选择“DNS” 。在“值”字段中,输入计算机的 FQDN(与步骤 6.1 中相同)。然后单击“添加” 。
-
如果 Orchestrator 安装在多个节点上,则需要添加所有这些 FQDN,如步骤 6.2 中所述。同时添加负载均衡器的 FQDN。
-
图 4. “主题”选项卡

-
自定义“私钥”选项卡中的信息,如下所述:
- 在“加密服务提供程序”框中,转到“选择加密服务提供程序 (CSP)” ,然后选中“Microsoft RSA SChannel 加密提供程序(加密)” 。
图 5. 私钥

- 在密钥选项部分中,确保将密钥大小设置为至少 2048,并选中使私钥可导出。
图 6. 密钥大小

- 在密钥类型部分中,确保将密钥用法设置为 Exchange。
图 7. 密钥类型

-
在配置窗口中单击“确定”,然后在“证书信息”屏幕中单击“下一步”。
-
在您要将离线请求保存在哪里?屏幕上,指定您选择的文件路径和文件名,例如
C:\Users\YourUser\Documents\sslRequest.req,然后选择 Base 64 作为文件格式。
图 8. 文件名称和格式

-
证书颁发机构接受注册请求后,该证书将在个人存储中可见。
重要提示:如果公司具有用于获取证书的标准程序/模板,则用户应参考该程序。 对于其他环境(例如,没有自动注册策略),您仍然可以使用本文档参考证书参数。
创建自签名 SAN SSL 证书
如果仅出于测试目的而需要快速创建 SSL 证书,则可以创建自签名的 SAN SSL 证书。
如果 Orchestrator 计算机运行的是 Windows Server 2012 R2,则需要一种变通方法来创建自签名的 SAN SSL 证书。有关更多详细信息,请参阅在 Windows Server 2012 R2 Orchestrator 计算机上创建自签名 SAN SSL 证书。
在主要 Orchestrator 计算机上创建自签名 SSL 证书
以管理员身份打开 PowerShell 控制台,然后发出以下命令。不要忘记根据您的环境自定义值。
$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
上面的命令还会导出 C:\temp\testingCertificate.pfx 文件,以供以后使用。
创建证书后,请确保:
- 如果使用应用程序池身份,请在证书控制台中导航至“个人” > “证书”(个人身份管理器)。然后,右键单击您的个人 Orchestrator 证书,选择“所有任务” > “管理私钥” ,并为“IIS AppPool\Identity”和“IIS_IUSRS”授予完整权限。
- 如果使用自定义帐户,请在证书控制台中导航到“个人” > “证书”。然后,右键单击您的个人 Orchestrator 证书,选择“所有任务” > “管理私钥” ,并为在“Orchestrator 应用程序池”上设置的自定义用户授予完全权限。
备注:
IIS AppPool\Identity 和 IIS_IUSRS 是本地组,应在本地计算机下搜索,而不是在域下搜索。
将 SAN 自签名证书导入其他计算机
为了使自签名证书在其他计算机(辅助 Orchestrato r节点/机器人计算机)上可用,请以管理员身份打开 PowerShell 控制台,然后发出以下命令。
$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 – 允许异常
Firefox 处理该流程的方式略有不同,因为它不会读取 Windows 商店中的证书信息。 它允许您为特定站点上的 SSL 证书定义例外,而不是安装证书。
当您访问存在证书错误的站点时,系统会显示以下屏幕截图中的警告消息。 您尝试访问的 URL 将显示在蓝色区域中。 要创建异常以绕过该特定 URL 上的此警告,请执行以下操作:
- Click the Add Exception button. The Add Security Exception window is displayed.
图 9. 添加异常

- In the Add Security Exception window, click Confirm Security Exception to configure this exception locally.
图 10. 添加安全异常

If a particular site redirects to subdomains within itself, you may get multiple security warning prompts with slightly different URLs every time. Add exceptions for those URLs by following the steps above.
故障排除证书
如果您在使用具有 UiPathOrchestrator.msi 的证书时(在安装或升级期间)遇到问题,您可以在这里开始故障排除:
从控制面板:
- 打开“管理计算机证书”->“个人”->“证书”。识别并双击您的证书。在“常规”选项卡中,应提供有关其有效性的信息。
- 在命令行中,运行以下命令来诊断证书:
certutil -v -verifystore My <certificateThumbprint>- 其摘要位于输出的末尾。备注:您可以在步骤 1 中描述的“详细信息”选项卡中找到证书的指纹。
内部服务器错误
如果证书没有设置适当的权限,则可能发生内部服务器错误。以管理员身份运行以下项以授予必要的权限:
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
运行脚本后,请确保:
- 如果使用应用程序池身份,请在证书控制台中导航至“个人” > “证书”(个人身份管理器)。然后,右键单击您的个人 Orchestrator 证书,选择“所有任务” > “管理私钥” ,并为“IIS AppPool\Identity”和“IIS_IUSRS”授予完整权限。
- 如果使用自定义帐户,请在证书控制台中导航到“个人” > “证书”。然后,右键单击您的个人 Orchestrator 证书,选择“所有任务” > “管理私钥” ,并为在“Orchestrator 应用程序池”上设置的自定义用户授予完全权限。
备注:
IIS AppPool\Identity 和 IIS_IUSRS 是本地组,应在本地计算机下搜索,而不是在域下搜索。
Insights 证书错误
如果在尝试更改 Insights 证书时遇到错误,请确保遵循更新Insights 证书中提供的说明。
基于 Chromium 的浏览器证书错误
如果在使用基于 Chromium 的浏览器时发生证书错误,请创建具有数字签名的自签名证书,如下所示:
- 以管理员身份打开 PowerShell 控制台,然后发出以下命令。不要忘记根据您的环境自定义值。
$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.cer备注:此命令还会导出
.pfx文件,以供以后使用。 - 创建证书后,您还应考虑以下情况:
- 如果使用应用程序池身份:
- 在证书控制台中,导航到“个人” ,然后导航到“证书” 。
- 右键单击您的个人 Orchestrator 证书,选择“所有任务” ,然后选择“管理私钥” 。
- 授予 IIS AppPool\Identity 和 IIS_IUSRS 的完整权限。
- 如果使用自定义帐户:
- 在证书控制台中,导航到“个人” ,然后导航到“证书”。
- 右键单击您的个人 Orchestrator 证书,选择“所有任务” ,然后选择“管理私钥” 。
- 向在 Orchestrator 应用程序池中设置的自定义用户授予完全权限。
备注:IIS AppPool\Identity 和 IIS_IUSRS 是本地组,应在本地计算机下搜索,而不是在域下搜索。
- 如果使用应用程序池身份: