orchestrator
2024.10
true
UiPath logo, featuring letters U and I in white
Orchestrator 安装指南
Automation CloudAutomation Cloud Public SectorAutomation SuiteStandalone
Last updated 2024年12月4日

为 HTTPS 协议使用证书

向证书颁发机构请求 SAN SSL 证书

本节提供有关如何启用 Orchestrator 与机器人之间的通信的 HTTP 协议的说明。

最好使用提交给证书颁发机构的 SAN SSL 证书,而不是使用自签名证书,因为在前一种情况下,无需在机器人计算机上安装任何证书。由证书颁发机构颁发的 SAN SLL 证书受到域中所有计算机的信任。

如果主 Orchestrator 计算机注册到具有本地证书颁发机构和自动注册策略的 Active Directory 中,则用户可以按照以下过程中的说明填写证书请求。

  1. Windows 键和 R 键,输入 certlm.msc,然后单击“确定”以打开“证书”管理单元。
  2. 右键单击“个人”节点,选择“所有任务” ,然后选择“高级操作”“创建自定义请求”在“开始之前”窗口中,单击“下一步”


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


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


  6. 如下所述在“主题”选项卡中自定义信息:

    6.1. 在“主题名称”部分中,转到“类型”,然后从下拉菜单中选择“通用名称”。在“值”字段中,输入计算机的完全限定域名 (FQDN),例如 myhost.domain.local。然后点击添加

    6.2. 在“备用名称”部分中,转到“类型” ,然后从下拉菜单中选择“DNS”。在“值”字段中,输入计算机的 FQDN(与步骤 6.1 中的相同)。然后点击添加

    6.3。如果 Orchestrator 安装在多个节点上,则需要按照步骤 6.2 中所述添加所有这些 FQDN。此外,还需要添加负载均衡器的 FQDN。



  7. 自定义“私钥”选项卡中的信息,如下所述:

    7.1. 在“加密服务提供程序”框中,转到“选择加密服务提供程序 (CSP)”,然后选中“Microsoft RSA SChannel 加密提供程序(加密)”



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

    docs image
    7.3.在密钥类型部分中,确保将密钥用法设置为 Exchange


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


  10. 证书颁发机构接受注册请求后,该证书将在个人存储中可见。
    重要提示:

    如果公司具有用于获取证书的标准程序/模板,则用户应参考该程序。

    对于其他环境(例如,没有自动注册策略),您仍然可以使用本文档参考证书参数。

创建自签名 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\IdentityIIS_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 上的此警告,请执行以下操作:

  1. 单击“ 添加例外 ”按钮。 系统将显示“ 添加安全异常 ” 窗口。


  2. 在“ 添加安全例外 ” 窗口中,单击“ 确认安全例外 ” 以在本地配置此例外。


    注意: 如果特定站点重定向到其内部的子域,您可能会收到多个安全警告提示,每次 URL 略有不同。 按照上述步骤操作,为这些 URL 添加例外。

故障排除证书

如果您在使用具有 UiPathOrchestrator.msi 的证书时(在安装或升级期间)遇到问题,您可以在这里开始故障排除:

从控制面板:

  1. 打开管理计算机证书->个人->证书。识别并双击您的证书。在常规选项卡中,应提供有关其有效性的信息。
  2. 在命令行中,运行以下命令来诊断证书: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 $aclimport-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\IdentityIIS_IUSRS 是本地组,应在本地计算机下搜索,而不是在域下搜索。

Insights 证书错误

如果在尝试更改 Insights 证书时遇到错误,请确保遵循更新 Insights 证书中提供的说明。

基于 Chromium 的浏览器证书错误

如果在使用基于 Chromium 的浏览器时发生证书错误,请创建具有数字签名的自签名证书,如下所示:

  1. 以管理员身份打开 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 文件,以供以后使用。
  2. 创建证书后,您还应考虑以下情况:
    • 如果使用应用程序池身份
      • 在证书控制台中,导航到“个人”,然后导航到“证书”。
      • 右键单击您的个人 Orchestrator 证书,选择“所有任务”,然后选择“管理私钥”。
      • 授予 IIS AppPool\IdentityIIS_IUSRS 的完整权限。
    • 如果使用自定义帐户:
      • 在证书控制台中,导航到“个人”,然后导航到“证书”。
      • 右键单击您的个人 Orchestrator 证书,选择“所有任务”,然后选择“管理私钥”。
      • 向在 Orchestrator 应用程序池中设置的自定义用户授予完全权限。
    备注:

    IIS AppPool\IdentityIIS_IUSRS 是本地组,应在本地计算机下搜索,而不是在域下搜索。

此页面有帮助吗?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath Logo White
信任与安全
© 2005-2024 UiPath。保留所有权利。