robot
2023.4
false
UiPath logo, featuring letters U and I in white
机器人用户指南
Last updated 2024年10月25日

关于机器人上的自动化项目

机器人是一种执行代理,这意味着您必须为其提供要运行的自动化项目。

在 Studio 中创建自动化项目后,您需要将该项目发布到本地或 Orchestrator。发布完项目后,您可将其发送至机器人计算机并执行该项目。

在机器人计算机上,可用的流程订阅源为:

  • Not 连接到 Orchestrator - %ProgramData%\UiPath\UiPath.settings 文件中 NuGetServerUrl 字段的值(当以用户模式安装机器人时,文件位于 %ProgramData%\UiPath\UiPath.settings 中)。可以根据需要自定义该值。默认情况下,该值为 %ProgramData%\UiPath\Packages
  • 连接到 Orchestrator 时 - 用户在 Orchestrator 中有权访问的所有流程的并集。

无论是否连接到 Orchestrator,机器人均会使用响应最快的订阅源。

包签名验证

在通过 Studio 或命令行发布包时,您可以对包进行签名。详细了解为包签名

当您启动作业后,机器人会验证程序包的签名。如果机器人不信任其签名,便不会安装该程序包。

程序包可拥有存储库证书和作者证书。不过,只有存储库证书是必需的,而程序包默认以此方式进行签名。您可以允许机器人安装只有存储库签名的程序包,或者在安装程序包前强制验证作者签名。

当您启动作业后,特定计算机上的机器人会验证程序包签名,如下所示:

  1. 检查存储库证书。此操作由 certificatefingerprint 标签表示。NuGet.config 中的指纹必须与程序包中的指纹相同:
    • “不同”- 不安装程序包。
    • “相同”- 检查程序包是否也需要作者签名。
  2. 验证 allowUntrustedRoot 属性的值。这表示程序包需要作者签名:
    • ="true" - 仅需存储库签名,因此需要安装包。
    • ="false" - 需要作者签名,因此要进行额外检查。
  3. 验证作者签名,此操作需位于 <trustedSigners> 标签内的 <owners> 标签中:
    • “不受信任”- 不安装程序包。
    • “受信任”- 安装包。



连接到 Orchestrator 时的自动化项目

连接到 Orchestrator 后,UiPath Assistant 会显示与给定机器人相关联的所有自动化项目。

注意:从 v2021.10 开始,可以从 Orchestrator 中停止有人值守的作业。
连接到 Orchestrator 的机器人仍需在本地下载和解压自动化包,以便执行这些包。因此,当您在 Orchestrator 中将程序包部署到环境(创建流程)中时,系统会将其自动安装到指定环境的所有机器人计算机上(位于 %USERPROFILE%\.nuget\Packages 文件夹中)。
如果由于某种原因无法继续在本地使用某个自动化项目,则系统会在 UiPath Assistant 中以更新图标 docs image 对其进行标记。单击此按钮后,系统将下载程序包并将其解压至 %USERPROFILE%\.nuget\Packages 文件夹。
注意:当您首次在 Orchestrator 中将包部署到环境(创建流程)中时,系统将自动创建 %USERPROFILE%\.nuget\Packages 文件夹。
如果您在 Orchestrator 中启动作业时无法在本地使用自动化项目,则系统会自动将其下载到 %USERPROFILE%\.nuget\Packages 文件夹及所有其他依赖项(活动)中,然后开始执行。

将机器人连接到 Orchestrator 之后,您可将其配置为自动下载和启动流程。可通过 Orchestrator 中的“流程设置”窗口启用此选项。启动 UiPath Assistant 后,系统将自动下载并启动通过此方式配置的流程。请注意,只有 Attended Robot 能够自动下载和启动流程。

注意: 项目中存在未签名的依赖项可能会导致在使用“ 修复依赖项 ”功能时无法解析其他依赖项。从项目中删除未签名的包以解析已签名的依赖项。
注意:如果缺少依赖项,在 2021.10 或更高版本的 Studio 中开发的新流程不会启动执行。在 2021.10 之前的 Studio 版本中开发的流程仅在缺少依赖项时停止执行。

未连接到 Orchestrator 时的自动化项目

在“可用流程”部分,UiPath Assistant 会显示存储于以下位置的自动化项目:

  • 同时存储在 %ProgramData%\UiPath\Packages%USERPROFILE%\.nuget\Packages 文件夹中
  • 仅存储在 %ProgramData%\UiPath\Packages 目录中。系统会以更新图标 docs image 标记这些项目。单击此按钮即可将流程解压至 %USERPROFILE%\.nuget\Packages 文件夹。
只有 %ProgramData%\UiPath\Packages 文件夹中存在且在 %USERPROFILE%\.nuget\Packages 文件中完成解压的自动化项目支持直接执行。
备注:
当您首次从 Studio 发布自动化项目时,系统会创建 %ProgramData%\UiPath\Packages 文件夹。如果 Studio 和 Orchestrator 均未连接,则必须创建此文件夹。
解压缩第一个自动化包时将创建 %USERPROFILE%\.nuget\Packages 目录。

安全项目注意事项

标准用户无法读取和/或写入已安装的项目的工作流(*.xaml 文件)。此功能适用于将机器人作为服务安装的机器人 v2018.1.1 及更高版本的实例。

如前文所述,机器人服务会下载并安装项目的 NuGet 包。系统将以如下方式保护这些程序包:

  1. 系统会在 %USERPROFILE%\.nuget\Packages 目录中为要安装的包创建 <ProjectName>\<Version> 格式的文件夹。
  2. 对上述目录采取以下安全措施:

    • 禁止权限继承,并清除所有权限;
    • 向本地系统帐户和内置管理员授予完全控制权限;这意味着标准用户将无法再列出、读取 %USERPROFILE%\.nuget\Packages 文件夹中的文件或向其写入文件。
  3. 系统会在本地系统帐户下,使用 NuGet 包管理器将包下载并提取至该目录。
  4. 同时也会保护所有临时生成的文件。
  5. 对于安全文件夹(包括子文件夹)中的每个工作流文件 (*.xaml),系统会禁用权限继承并清除所有权限。
  6. 系统会向本地系统帐户和内置管理员授予对这些文件的完全控制权限。
  7. %USERPROFILE%\.nuget\Packages\<ProjectName>\<Version> 文件夹启用权限继承。现在,%USERPROFILE%\.nuget\Packages\<ProjectName>\<Version> 目录的权限与父目录 %USERPROFILE% 的权限相同。
    注意:系统仍会保护对工作流文件 (*.xaml) 的访问权限,因为第 5 步已在没有继承的情况下显式设置好这些文件的权限。标准用户有权访问项目文件夹中的其他文件。

机器人执行程序实例可在标准用户模式下运行以安全方式安装的项目。

机器人执行程序无法自行访问安装文件夹 (%USERPROFILE%\.nuget\Packages\<ProjectName>\<Version>) 中的工作流文件 (*.xaml),并且会执行以下步骤:
  1. 向机器人服务发出打开文件请求。
  2. 机器人服务仅可用于访问其自行创建的执行程序所请求的工作流文件。
  3. 机器人服务不允许其他用户流程访问受保护的工作流文件。

    备注:

    由之前的 UiPath 版本(2018.1 版之前)安装的包不受保护。

    只有管理员才能删除项目。

流程兼容性

在 Studio 配置文件中创建新项目时,请根据要执行项目的环境选择兼容性:

  • Windows - 旧版 - 使用 .NET Framework 4.6.1。在 2021.10 之前的版本中使用的兼容性。这是默认选项。
  • Windows - 使用具有 Windows 支持的 .NET 6。
  • 跨平台 - 使用具有跨平台支持的 .NET 6。

    重要提示:

    创建为 .NET 6 - Windows 的项目只能在 64 位机器人系统上执行。

    由于 .NET 版本差异,在 Studio 2021.10.6 中使用 Windows 和跨平台兼容性创建的项目与 2021.10.5 或更早的 Studio 和 Robot 版本不兼容。

此页面有帮助吗?

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