- 入门指南
- 数据安全性与合规性
- 组织
- 身份验证和安全性
- 许可
- 租户和服务
- 帐户和角色
- Ai Trust Layer
- 外部应用程序
- 通知
- 日志记录
- 数据导出
- 在您的组织中进行测试
- 故障排除
- 迁移到 Automation Cloud
在 Windows 上部署中继客户端
使用服务控制管理器将中继客户端部署为 Windows 服务,包括特定于 Windows 的安装和管理步骤。
本页介绍了特定于 Windows 的生产设置详细信息。有关跨平台先决条件和网络要求,请参阅部署中继客户端。
操作系统要求
Relay 客户端使用Windows 服务控制管理器 (SCM)安装和管理其后台服务。SCM 已内置到所有受支持的 Windows 版本中。不需要其他软件。
| 版本 | 最低版本 |
|---|---|
| Windows 服务器 | 2019 年 |
| Windows 桌面 | 10 个企业 |
其他要求
- PowerShell 5.1+ :默认包含;用于服务管理(
Get-Service、Test-NetConnection)。验证:$PSVersionTable.PSVersion。 - 管理员权限:需要与 SCM 交互,以安装、启动、停止和删除服务;写入至
C:\ProgramData\UiPathRelay\;将二进制文件复制到C:\Program Files\UiPathRelay\。
默认情况下,该服务以 LocalSystem 运行。要在特定帐户下运行,请在开始时使用 --service-account。请参阅服务帐户和权限。
先决条件
系统
- Windows Server 2019+ 或 Windows 10 企业版+
- PowerShell 5.1 或更高版本
- 目标计算机的 Administrator 访问权限
- 至少 200 MB 可用磁盘空间
- 如果您使用受支持的基于 TCP 的连接,且该连接需要内部部署执行程序:
- 查看建议的主机和执行程序容量
- 在
PATH上运行或使用--onprem-executor-java-home传递的 Java 21 或更高版本的 JRE 或 JDK。现有安装有效。
网络
- 对于中继客户端
26.4.2或更高版本,允许到cloud.uipath.com的出站 HTTPS(端口 443),包括 WebSocket 升级 - 对于
26.4.2之前的中继客户端版本,允许到<region>-relay.uipath.com的出站 TLS(端口 443),并配置了 TLS 直通 - Relay 主机可以解析并连接到每个已注册的 HTTP 或 HTTPS 端点,以及每个受支持的基于 TCP 的端点的主机和端口
安全性
- 已创建服务帐户(如果未使用
LocalSystem)(请参阅服务帐户和权限) - 已计划的 Windows Defender 和防病毒排除项(请参阅防病毒和端点保护)
- If you use the on-prem executor: a Java runtime and, for SAP BAPI, a connector dependencies directory, both in locations only administrators can modify, such as under
C:\Program Files. The executor loads code from both
配置
- 已创建 Relay 组,并准备好客户端配置字符串(请参阅配置 Relay 组)
验证先决条件
在 PowerShell 中运行以下命令:
# Check PowerShell version (must be 5.1+)
$PSVersionTable.PSVersion
# Verify Administrator access
([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
# Check available disk space
Get-PSDrive C | Select-Object Used, Free
# On-prem executor only: Java 21+ on PATH, or pass --onprem-executor-java-home
java -version
# Check PowerShell version (must be 5.1+)
$PSVersionTable.PSVersion
# Verify Administrator access
([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
# Check available disk space
Get-PSDrive C | Select-Object Used, Free
# On-prem executor only: Java 21+ on PATH, or pass --onprem-executor-java-home
java -version
安装
1. 下载并提取
从UiPath Customer Portal下载适用于您的架构(x86_64 或 ARM64)的中继客户端存档。
提取该 zip 存档。从中继客户端 26.4.3 开始,它包含 relay.exe 和 onprem-executor.jar。将这两个文件一起保留在提取的目录中,然后从该目录运行安装或升级命令。
2. 开始
在运行任何启动命令之前,以管理员身份打开 PowerShell 。
您可以通过两种方式提供客户端配置字符串(在“UiPath 管理中生成”,如配置 Relay 组中所述):
选项 A:内联。直接传递配置字符串。没有要创建或清理的文件:
.\relay.exe start --config "<your-config>" --accept-license-agreement
.\relay.exe start --config "<your-config>" --accept-license-agreement
选项 B:文件。将配置保存到文件,然后引用该文件。推荐使用此选项,因为此选项可将密码保留在 Shell 历史记录之外:
Set-Content -Path ".\config.txt" -Value "<your-config>"
.\relay.exe start --config-file ".\config.txt" --accept-license-agreement
Set-Content -Path ".\config.txt" -Value "<your-config>"
.\relay.exe start --config-file ".\config.txt" --accept-license-agreement
For SAP BAPI, stage the SAP JCo libraries first, as described in Add connector dependencies. Snowflake and SQL Server need no libraries. Then follow Start with the on-prem executor.
添加连接器依赖项
For SAP BAPI, the SAP JCo 3 libraries are not included with the Relay client: place them in a dedicated directory on the Relay host. For Snowflake and SQL Server, no libraries are needed, because the JDBC drivers ship inside the on-prem executor; skip this section. The Relay client stores the directory path but does not copy the libraries. A directory under C:\Program Files, such as C:\Program Files\UiPathRelay\executor-deps, is writable only by administrators by default.
内部部署执行程序使用 Relay 服务帐户的权限加载并执行这些库。使用服务帐户可读取、只有管理员可写入的持久目录。任何可以修改其内容的人都可以运行具有这些权限的代码。
Obtain these files from SAP and place them in the dependency directory:
| 所需文件 | 用途 |
|---|---|
sapjco3.jar | SAP JCo Java 库 |
sapidoc3.jar | SAP IDoc Java 库 |
sapjco3.dll | 与 Java 运行时架构匹配的 SAP JCo Windows 原生库 |
从内部部署执行程序开始
Start the Relay client with the executor enabled. For SAP BAPI, also pass --onprem-executor-dep-dir with the directory you prepared; omit it for Snowflake and SQL Server. Point --onprem-executor-java-home at a Java 21 or later runtime installed under C:\Program Files, so the executor uses the runtime you intend:
.\relay.exe start --config-file ".\config.txt" `
--accept-license-agreement `
--enable-onprem-executor `
--onprem-executor-java-home "C:\Program Files\Java\jdk-21" `
--onprem-executor-dep-dir "C:\Program Files\UiPathRelay\executor-deps"
.\relay.exe start --config-file ".\config.txt" `
--accept-license-agreement `
--enable-onprem-executor `
--onprem-executor-java-home "C:\Program Files\Java\jdk-21" `
--onprem-executor-dep-dir "C:\Program Files\UiPathRelay\executor-deps"
--config与--config-file标志互斥。要在前台运行而不是作为后台服务运行(有助于调试),请传递--detach=false 。
Relay 客户端可通过一条命令执行所有操作,包括验证连接、使用 OAuth 进行身份验证、向 Automation Cloud 注册、下载代理配置以及安装 Windows 服务。
预期输出:
UiPath Relay <version>
Installing group <group name> (<id>) as a system service on <hostname>
Running prerequisite checks...
✓ Directory permissions: OK
✓ Cloud portal connectivity: OK
✓ On-prem executor checks: OK
✓ All prerequisite checks passed
✓ Service started
✓ Relay client provisioned (<N> endpoints)
✓ Connected to relay server (12.3s)
✓ Relay is running
Next steps
relay logs <id>
relay describe <id>
relay list
UiPath Relay <version>
Installing group <group name> (<id>) as a system service on <hostname>
Running prerequisite checks...
✓ Directory permissions: OK
✓ Cloud portal connectivity: OK
✓ On-prem executor checks: OK
✓ All prerequisite checks passed
✓ Service started
✓ Relay client provisioned (<N> endpoints)
✓ Connected to relay server (12.3s)
✓ Relay is running
Next steps
relay logs <id>
relay describe <id>
relay list
在启动期间,中继客户端会自动将二进制文件复制到C:\Program Files\UiPathRelay\relay.exe 。计算机上的所有Relay组共享此二进制文件。使用--bin-dir覆盖安装目录。
要在自定义服务帐户而不是LocalSystem下启动,请执行以下操作:
.\relay.exe start --config-file C:\path\to\config.txt `
--accept-license-agreement `
--service-account "DOMAIN\svc-relay" `
--service-account-password "<password>"
.\relay.exe start --config-file C:\path\to\config.txt `
--accept-license-agreement `
--service-account "DOMAIN\svc-relay" `
--service-account-password "<password>"
3. 验证
.\relay.exe list
.\relay.exe list
正常的客户端会在“状态”列中显示● running 。显示的ID值将用于所有后续命令( .\relay.exe stop <id> 、 .\relay.exe logs <id>等)。您也可以在“UiPath 管理”中的“中继组详细信息”页面下找到它。
通过检查login to server success日志来确认已建立隧道:
.\relay.exe logs <id> -f
.\relay.exe logs <id> -f
如果内部部署执行程序已启用,请确认其配置:
.\relay.exe describe <id>
.\relay.exe describe <id>
内部部署执行程序部分报告Enabled: true其中包含其正在使用的侦听端口、运行时版本、运行时路径、Java 主目录和依赖项目录。检查 Java 主目录和依赖项目录是否在您想要的目录中。
然后确认执行程序是否已启动。准备就绪后,其日志将包含 Started OnPremRuntimeApplication 条目:
Select-String -Path "C:\ProgramData\UiPathRelay\logs\<id>\onprem-executor.log" -Pattern "Started OnPremRuntimeApplication"
Get-Content "C:\ProgramData\UiPathRelay\logs\<id>\onprem-executor.log" -Tail 20
Select-String -Path "C:\ProgramData\UiPathRelay\logs\<id>\onprem-executor.log" -Pattern "Started OnPremRuntimeApplication"
Get-Content "C:\ProgramData\UiPathRelay\logs\<id>\onprem-executor.log" -Tail 20
如果您配置了自定义日志目录,请改用其 onprem-executor.log 路径。然后从使用此端点的连接器运行测试调用,以确认完整路径有效。
管理
所有管理命令都需要管理员 PowerShell ,但list和version除外。
列表
显示此计算机上所有已安装的Relay组,包括状态、版本和组名称(如果可用)。不需要管理员权限。
.\relay.exe list
.\relay.exe list --json
.\relay.exe list
.\relay.exe list --json
描述
适用于中继客户端 26.4.2 及更高版本。运行 .\relay.exe version 以检查您安装的版本。
显示一个Relay组的详细信息,包括服务设置、配置的路径、状态、版本和组名称(如果可用)。不需要管理员权限。
.\relay.exe describe <id>
.\relay.exe describe <id> --json
.\relay.exe describe <id>
.\relay.exe describe <id> --json
停止
停止中继服务。配置和日志将保留。中继可以稍后重新启动。
.\relay.exe stop <id>
.\relay.exe stop <id>
重新启动并升级
重新启动中继服务,并从 Automation Cloud 获取最新的代理配置。
.\relay.exe restart <id>
.\relay.exe restart <id>
Upgrade: extract the new Relay client archive. Keep the new relay.exe and matching onprem-executor.jar together, then run .\relay.exe restart <id> from the extracted directory. The restart command updates the installed binary and, when the executor is enabled, its JAR. To upgrade every group on the machine in one run, use .\relay.exe restart --all (Relay client 26.4.4 or later).
要在已安装的服务上启用执行程序,请从提取的存档目录中运行 .\relay.exe restart <id> --enable-onprem-executor,以提供匹配的 onprem-executor.jar。
| 场景 | 命令 |
|---|---|
| 在 Automation Cloud 中添加或删除的端点 | .\relay.exe restart <id> |
| 客户端密码轮换(内联) | .\relay.exe restart --config "<new-config>" |
| 客户端密码轮换(文件) | .\relay.exe restart --config-file new-config.txt |
| 日志级别更改 | .\relay.exe restart <id> --log-level debug |
| 日志目录或保留更改 | .\relay.exe restart <id> --logs-dir "D:\MyCompany" --log-retention-days 30 |
| 启用内部部署执行程序 | .\relay.exe restart <id> --enable-onprem-executor |
| 禁用内部部署执行程序 | .\relay.exe restart <id> --disable-onprem-executor |
| 中继客户端升级 | Extract the new archive, then run .\relay.exe restart <id>, or .\relay.exe restart --all for every group |
当提供 --config 或 --config-file 时,<id> 参数是可选的。该文件是从配置中提取的。
删除
停止服务,从 Automation Cloud 取消注册,并删除所有本地配置和日志文件。
.\relay.exe delete <id>
.\relay.exe delete <id>
要在不取消云注册的情况下强制本地清理,例如,在凭据丢失或云端中继组已删除时,请执行以下操作:
.\relay.exe delete <id> --force
.\relay.exe delete <id> --force
版本
.\relay.exe version
.\relay.exe version
There is no auto-upgrade. Extract the new archive and run .\relay.exe restart <id> from its directory for each group, or .\relay.exe restart --all to upgrade every group in one run (Relay client 26.4.4 or later).
目录结构
所有目录都会在首次运行时自动创建。
C:\Program Files\UiPathRelay\
relay.exe # Shared binary
C:\ProgramData\UiPathRelay\
groups\<id>\
client_config # OAuth credentials (encrypted via DPAPI)
metadata.json # State, PID, install timestamps
.credentials.key # Encryption key
onprem-executor.jar # Executor runtime when enabled
logs\<id>\
relay.log # Current log
relay.YYYYMMDD-HHMMSS.log # Rotated logs
onprem-executor.log # Executor log when enabled
C:\Program Files\UiPathRelay\
relay.exe # Shared binary
C:\ProgramData\UiPathRelay\
groups\<id>\
client_config # OAuth credentials (encrypted via DPAPI)
metadata.json # State, PID, install timestamps
.credentials.key # Encryption key
onprem-executor.jar # Executor runtime when enabled
logs\<id>\
relay.log # Current log
relay.YYYYMMDD-HHMMSS.log # Rotated logs
onprem-executor.log # Executor log when enabled
Windows 服务名称为Relay-<id> ,显示名称(显示在services.msc中)为Relay - <id> 。“启动类型”为“自动”;默认帐户为LocalSystem 。
自定义路径
安装中继客户端时,覆盖默认目录。
.\relay.exe start --config-file C:\path\to\config.txt `
--accept-license-agreement `
--bin-dir "D:\MyCompany\bin" `
--data-dir "D:\MyCompany" `
--logs-dir "D:\MyCompany"
.\relay.exe start --config-file C:\path\to\config.txt `
--accept-license-agreement `
--bin-dir "D:\MyCompany\bin" `
--data-dir "D:\MyCompany" `
--logs-dir "D:\MyCompany"
| 标记 | 默认 | 描述 |
|---|---|---|
--bin-dir | C:\Program Files\UiPathRelay | 共享二进制文件的目录 |
--data-dir | C:\ProgramData | 配置数据的根 |
--logs-dir | C:\ProgramData | 日志文件的根目录;可以更改为 restart |
Relay 客户端会在自定义数据和日志根目录下附加UiPathRelay\ :
--bin-dir D:\MyCompany\bin => D:\MyCompany\bin\relay.exe
--data-dir D:\MyCompany => D:\MyCompany\UiPathRelay\groups\<id>\
--logs-dir D:\MyCompany => D:\MyCompany\UiPathRelay\logs\<id>\
--bin-dir D:\MyCompany\bin => D:\MyCompany\bin\relay.exe
--data-dir D:\MyCompany => D:\MyCompany\UiPathRelay\groups\<id>\
--logs-dir D:\MyCompany => D:\MyCompany\UiPathRelay\logs\<id>\
--bin-dir 和 --data-dir 仅 start 命令接受。--logs-dir 已被 start 和 restart 接受。其他命令(stop、delete、list)会从已安装的服务配置中自动发现路径。
服务帐户和权限
本部分仅适用于在自定义帐户而不是默认帐户LocalSystem下运行服务的情况。
所需用户权限
| 右侧 | 描述 | 如何配置 |
|---|---|---|
SeServiceLogonRight | 作为服务登录 | “本地安全策略”>“用户权限分配”>“作为服务登录” |
对于域环境,请通过组策略配置此权限,以确保服务器之间的一致性。
NTFS 权限
| 路径 | 所需权限 |
|---|---|
C:\Program Files\UiPathRelay\ | Read & Execute |
C:\ProgramData\UiPathRelay\ | 读取、写入、修改 |
C:\ProgramData\UiPathRelay\logs\ | 读取、写入、修改、删除 |
| 依赖项目录(仅限执行程序) | 读取(&)可以执行,并且非特权用户无法写入。默认继承自 C:\Program Files |
| Java 安装(仅限执行程序) | 读取(&)执行,非特权用户无法写入 |
通过 PowerShell
$account = "DOMAIN\svc-relay"
$acl = Get-Acl "C:\Program Files\UiPathRelay"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule($account, "ReadAndExecute", "ContainerInherit,ObjectInherit", "None", "Allow")
$acl.SetAccessRule($rule)
Set-Acl "C:\Program Files\UiPathRelay" $acl
$acl = Get-Acl "C:\ProgramData\UiPathRelay"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule($account, "Modify", "ContainerInherit,ObjectInherit", "None", "Allow")
$acl.SetAccessRule($rule)
Set-Acl "C:\ProgramData\UiPathRelay" $acl
$account = "DOMAIN\svc-relay"
$acl = Get-Acl "C:\Program Files\UiPathRelay"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule($account, "ReadAndExecute", "ContainerInherit,ObjectInherit", "None", "Allow")
$acl.SetAccessRule($rule)
Set-Acl "C:\Program Files\UiPathRelay" $acl
$acl = Get-Acl "C:\ProgramData\UiPathRelay"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule($account, "Modify", "ContainerInherit,ObjectInherit", "None", "Allow")
$acl.SetAccessRule($rule)
Set-Acl "C:\ProgramData\UiPathRelay" $acl
这些命令会将服务帐户添加到每条路径上的已有权限中。它们不会删除其他帐户可能拥有的权限。如果依赖项目录不在 C:\Program Files 范围内,则还要向帐户授予读取和删除权限在那里执行并删除非管理员的写入访问权限。
从自定义服务帐户开始
.\relay.exe start --config-file C:\path\to\config.txt `
--accept-license-agreement `
--service-account "DOMAIN\svc-relay" `
--service-account-password "<password>"
.\relay.exe start --config-file C:\path\to\config.txt `
--accept-license-agreement `
--service-account "DOMAIN\svc-relay" `
--service-account-password "<password>"
域或本地用户帐户需要 --service-account-password。PowerShell 会将命令行记录在其历史记录文件中,并且在命令运行时,密码在流程命令行中可见,因此您最好使用不需要密码的组托管服务帐户 (gMSA)。
启用内部部署执行程序后,在专用帐户而非 LocalSystem 下运行服务。执行程序使用服务帐户的权限加载第三方连接器库,而 LocalSystem 是本地帐户的最高权限。
对于该帐户:
- 仅授予NTFS 权限中的权限以及作为服务登录的权限。
- 不要将其添加到“管理员”组。
- 如果您稍后更改帐户,请重新应用这些权限,包括依赖项目录和 Java 安装。
组托管服务帐户 (gMSA)
# Install the gMSA on the server (run once per server)
Install-ADServiceAccount -Identity "gMSA-Relay$"
# Start the Relay client with gMSA (no password required)
.\relay.exe start --config-file config.txt --service-account "DOMAIN\gMSA-Relay$" --accept-license-agreement
# Install the gMSA on the server (run once per server)
Install-ADServiceAccount -Identity "gMSA-Relay$"
# Start the Relay client with gMSA (no password required)
.\relay.exe start --config-file config.txt --service-account "DOMAIN\gMSA-Relay$" --accept-license-agreement
gMSA 会自动轮换密码,并消除凭据管理开销。
Windows 服务详细信息
查看服务状态
通过“服务”控制台
- 打开“运行” (
Win + R),然后输入services.msc。 - 找到显示名称为
Relay - <id>服务。 - 打开上下文菜单,以进行启动、停止、重新启动或查看属性。
通过 PowerShell
# All Relay services
Get-Service "Relay-*"
# Detailed information
Get-Service "Relay-<id>" | Format-List *
# Service configuration (account, start mode)
Get-CimInstance Win32_Service -Filter "Name LIKE 'Relay-%'" | Select-Object Name, StartMode, State, StartName
# All Relay services
Get-Service "Relay-*"
# Detailed information
Get-Service "Relay-<id>" | Format-List *
# Service configuration (account, start mode)
Get-CimInstance Win32_Service -Filter "Name LIKE 'Relay-%'" | Select-Object Name, StartMode, State, StartName
服务恢复
当中继客户端将自身安装为服务时,它会配置自动恢复:
- 第一次失败: 10 秒后重新启动
- 第二次失败: 30 秒后重新启动
- 后续故障:重新启动,且延迟时间逐步升级
要查看或调整恢复设置:打开services.msc > 右键单击服务 > “属性” > “恢复”选项卡。
事件查看器
使用事件查看器 ( eventvwr.msc ) 诊断服务问题。
| 日志 | 路径 | Events |
|---|---|---|
| 系统 | “Windows 日志”>“系统” | 服务的启动、停止、崩溃和恢复(7000 系列) |
| 应用程序 | Windows 日志 > 应用程序 | 应用程序错误 |
通过 PowerShell 查询中继事件
Get-WinEvent -FilterHashtable @{LogName='System'; ID=7000,7009,7031,7034,7036,7045} -MaxEvents 100 |
Where-Object { $_.Message -like '*Relay*' } |
Format-Table TimeCreated, Id, Message -Wrap
Get-WinEvent -FilterHashtable @{LogName='System'; ID=7000,7009,7031,7034,7036,7045} -MaxEvents 100 |
Where-Object { $_.Message -like '*Relay*' } |
Format-Table TimeCreated, Id, Message -Wrap
| 活动 ID | 意义 |
|---|---|
| 7000 | 服务无法启动。检查帐户权限 |
| 7009 | 等待服务超时。检查网络连接 |
| 7031 | 服务已崩溃,已采取恢复操作。选中 relay.log |
| 7034 | 服务意外终止。检查资源是否耗尽 |
| 7045 | 已安装新服务(确认安装成功) |
代理配置
Windows 服务从系统 (HKLM) 继承环境变量。在启动中继客户端之前,在“计算机”级别设置代理变量:
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://proxy.corp.example.com:8080", "Machine")
[Environment]::SetEnvironmentVariable("NO_PROXY", "localhost,127.0.0.1,.corp.example.com", "Machine")
.\relay.exe start --config "<your-config>" --accept-license-agreement
[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://proxy.corp.example.com:8080", "Machine")
[Environment]::SetEnvironmentVariable("NO_PROXY", "localhost,127.0.0.1,.corp.example.com", "Machine")
.\relay.exe start --config "<your-config>" --accept-license-agreement
在用户级别设置代理变量是不够的。系统服务会忽略用户级环境变量。
要更新代理:更改系统级变量并运行.\relay.exe restart <id> 。
要删除代理: [Environment]::SetEnvironmentVariable("HTTPS_PROXY", $null, "Machine") ,然后是.\relay.exe restart <id> 。
待验证: [Environment]::GetEnvironmentVariable("HTTPS_PROXY", "Machine") 。
有关支持的代理方案和身份验证,请参阅部署中继客户端中的代理部分。
Windows 防火墙
如果出站流量受到 Windows 防火墙的限制,请为中继客户端二进制文件添加出站规则。
如果已启用内部部署执行程序并强制执行出站程序规则,则还允许执行程序使用的 Java 可执行文件连接到每个受支持的基于 TCP 的连接的目标主机和端口。将规则的范围设置为这些目标,而不是允许所有出站流量。
不需要入站规则。执行程序仅在环回接口上以及默认情况下在端口 18080 上进行侦听,不接受来自主机外部的连接。不要打开该端口。要确认侦听器已绑定到环回,请运行 Get-NetTCPConnection -LocalPort 18080 -State Listen 并检查 LocalAddress 是否为 127.0.0.1 或 ::1。
| 设置 | 值 |
|---|---|
| 方向 | 呼出电话 |
| 程序 | C:\Program Files\UiPathRelay\relay.exe |
| 协议/端口 | TCP/443 |
| 配置文件 | 域,私有 |
通过 PowerShell
New-NetFirewallRule -DisplayName "UiPath Relay - Outbound HTTPS" `
-Direction Outbound `
-Program "C:\Program Files\UiPathRelay\relay.exe" `
-Protocol TCP `
-RemotePort 443 `
-Action Allow `
-Profile Domain,Private
# Verify rule
Get-NetFirewallRule -DisplayName "UiPath Relay*" | Format-Table Name, Enabled, Direction, Action
New-NetFirewallRule -DisplayName "UiPath Relay - Outbound HTTPS" `
-Direction Outbound `
-Program "C:\Program Files\UiPathRelay\relay.exe" `
-Protocol TCP `
-RemotePort 443 `
-Action Allow `
-Profile Domain,Private
# Verify rule
Get-NetFirewallRule -DisplayName "UiPath Relay*" | Format-Table Name, Enabled, Direction, Action
通过 GUI (高级安全 Windows Defender 防火墙):
- 打开
wf.msc。 - 选择“出站规则” > “新建规则” 。
- 选择“程序”并指定:
C:\Program Files\UiPathRelay\relay.exe。 - 选择“允许连接” 。
- 应用到域配置文件和私有配置文件。
- 将规则命名为:
UiPath Relay - Outbound HTTPS。
如果您的组织通过组策略或第三方防火墙管理防火墙规则,请与 Windows 管理员合作添加等效规则。
防病毒和端点保护
为中继客户端二进制文件及其数据目录添加排除项,以防止干扰。
| 类型 | 路径 |
|---|---|
| 二进制 | C:\Program Files\UiPathRelay\relay.exe |
| 数据和日志 | C:\ProgramData\UiPathRelay\ |
| Java 可执行文件(仅限执行程序) | 执行程序使用的 java.exe 的完整路径 |
| 连接器库(仅限执行程序) | 依赖项目录 |
请勿添加 java.exe 的流程排除项。它会阻止端点保护检查作业为加载第三方代码的流程并访问内部系统,并且会将裸文件名应用于主机上的每个 Java 进程。使用路径排除,并将任何流程排除作为完整路径提供。
如果您使用应用程序控件(例如 Windows Defender 应用程序控件 (W解码) 或 App锁定器),请注意,onprem-executor.jar 会在每次中继客户端升级时被替换,因此允许特定文件哈希的规则在每次升级后将停止匹配。使用路径或发布者规则,并在升级过程中重新批准 JAR。
如果您通过--bin-dir 、 --data-dir或--logs-dir使用了自定义路径,请改为排除这些路径。
通过 PowerShell 使用 Windows Defender
Add-MpPreference -ExclusionPath "C:\Program Files\UiPathRelay"
Add-MpPreference -ExclusionPath "C:\ProgramData\UiPathRelay"
Add-MpPreference -ExclusionProcess "relay.exe"
Add-MpPreference -ExclusionPath "C:\Program Files\UiPathRelay"
Add-MpPreference -ExclusionPath "C:\ProgramData\UiPathRelay"
Add-MpPreference -ExclusionProcess "relay.exe"
使用 GUI 的 Windows Defender
- 打开“Windows 安全” > “病毒和威胁防护” > “管理设置” 。
- 在“排除”下,选择“添加或删除排除” 。
- 添加文件夹排除项:
C:\Program Files\UiPathRelay\和C:\ProgramData\UiPathRelay\。 - 添加流程排除项:
relay.exe。
对于集中管理的端点保护(通过 Intune/SCCM 进行的 CrowdStrike、Salesforce、Microsoft Defender for Endpoint),请与安全管理员合作添加上述排除项。
卸载
-
删除所有 Relay 客户端(使用
.\relay.exe list查看已安装的组):.\relay.exe delete <id>.\relay.exe delete <id> -
删除共享二进制文件:
Remove-Item "C:\Program Files\UiPathRelay" -RecurseRemove-Item "C:\Program Files\UiPathRelay" -Recurse -
删除剩余的数据目录:
Remove-Item "C:\ProgramData\UiPathRelay" -RecurseRemove-Item "C:\ProgramData\UiPathRelay" -Recurse -
删除 Windows Defender 排除项:
Remove-MpPreference -ExclusionPath "C:\Program Files\UiPathRelay" Remove-MpPreference -ExclusionPath "C:\ProgramData\UiPathRelay" Remove-MpPreference -ExclusionProcess "relay.exe"Remove-MpPreference -ExclusionPath "C:\Program Files\UiPathRelay" Remove-MpPreference -ExclusionPath "C:\ProgramData\UiPathRelay" Remove-MpPreference -ExclusionProcess "relay.exe" -
删除 Windows 防火墙规则:
Remove-NetFirewallRule -DisplayName "UiPath Relay - Outbound HTTPS"Remove-NetFirewallRule -DisplayName "UiPath Relay - Outbound HTTPS"
对于通过组策略或第三方防火墙添加的规则,请与 Windows 管理员合作将其删除。
故障排除
| 症状 | 原因 | 分辨率 |
|---|---|---|
| 服务无法启动 | 权限不足 | 以管理员身份打开 PowerShell |
permission denied | 无法写入Program Files或ProgramData | 验证管理员访问权限,或对可写路径使用--bin-dir / --data-dir |
does not have the 'Log on as a service' right | 缺少自定义帐户 SeServiceLogonRight | 通过“本地安全策略”>“用户权限分配”授予,或使用组策略 |
not a valid Windows account | 的格式错误 --service-account | 使用.\username对于本地帐户或DOMAIN\username对于域帐户 |
marked for deletion /服务待删除 | services.msc 有一个打开的句柄 | 关闭services.msc并重试;如果问题仍然存在,请重新启动 |
service is disabled | 已通过services.msc或组策略禁用 | 重新启用: Set-Service -Name "Relay-<id>" -StartupType Automatic |
file is locked by another process | 更新期间使用的二进制文件 | 请先停止中继客户端服务,然后重试 |
path exceeds Windows path length limit | 数据/日志路径超过 260 个字符 | 对--data-dir和--logs-dir使用较短路径 |
杀毒软件拦截 relay.exe | 端点保护隔离的二进制文件 | 添加排除项(请参阅防病毒和端点保护);选中隔离区和还原区 |
| 服务正在运行,但未建立隧道 | 网络或身份验证问题 | 检查 relay.log 的 login to server 错误;验证与 cloud.uipath.com 的连接;对于 26.4.2 之前的中继客户端版本,请验证 TLS 直通到区域中继主机名 |
DPAPI decrypt failed | 克隆或重新映像虚拟机后,计算机身份已更改 | 使用“UiPath 管理”中的新配置重新配置中继 |
| 服务未使用代理 | 代理设置在用户级别,而非系统级别 | 在计算机级别设置HTTPS_PROXY (请参阅代理配置);重新启动服务 |
诊断命令
# Real-time logs
.\relay.exe logs <id> -f
# Service details
Get-Service "Relay-<id>" | Format-List *
# Connectivity test
Test-NetConnection -ComputerName cloud.uipath.com -Port 443
# Required only for Relay client versions earlier than 26.4.2
Test-NetConnection -ComputerName <region>-relay.uipath.com -Port 443
# Real-time logs
.\relay.exe logs <id> -f
# Service details
Get-Service "Relay-<id>" | Format-List *
# Connectivity test
Test-NetConnection -ComputerName cloud.uipath.com -Port 443
# Required only for Relay client versions earlier than 26.4.2
Test-NetConnection -ComputerName <region>-relay.uipath.com -Port 443
有关各平台共有的身份验证和连接错误,请参阅故障排除。
快速参考
| 操作 | 命令 |
|---|---|
| 启动 | .\relay.exe start --config-file config.txt --accept-license-agreement |
| 停止 | .\relay.exe stop <id> |
| 重新启动/升级 | .\relay.exe restart <id> |
| 删除 | .\relay.exe delete <id> |
| 删除 (强制) | .\relay.exe delete <id> --force |
| 列表 | .\relay.exe list |
| 描述 | .\relay.exe describe <id> |
| 日志 | .\relay.exe logs <id> -f |
| 服务状态 | Get-Service "Relay-<id>" |
| 服务控制台 | services.msc |
- 操作系统要求
- 其他要求
- 先决条件
- 系统
- 网络
- 安全性
- 配置
- 验证先决条件
- 安装
- 1. 下载并提取
- 2. 开始
- 3. 验证
- 管理
- 列表
- 描述
- 停止
- 重新启动并升级
- 删除
- 版本
- 目录结构
- 自定义路径
- 服务帐户和权限
- 所需用户权限
- NTFS 权限
- 从自定义服务帐户开始
- 组托管服务帐户 (gMSA)
- Windows 服务详细信息
- 查看服务状态
- 服务恢复
- 事件查看器
- 通过 PowerShell 查询中继事件
- 代理配置
- Windows 防火墙
- 通过 PowerShell
- 防病毒和端点保护
- 通过 PowerShell 使用 Windows Defender
- 使用 GUI 的 Windows Defender
- 卸载
- 故障排除
- 诊断命令
- 快速参考