- 概述
- 数据安全性与合规性
- 组织
- 租户
- 许可
- 帐户和角色
- 外部应用程序
- 日志记录
- 迁移到 Automation Cloud™
配置 SAML 集成
仅当您订阅企业版许可计划时,才可以使用此功能。
您可以将 Automation Cloud™ 连接到任何使用 SAML 2.0 标准的身份提供程序 (IdP)。本页将通过展示一些 SAML 集成配置示例来说明整个流程。
SAML 集成经精心设计,您可以逐步实施,而不会影响现有用户。
此页面更详细地描述了流程的主要阶段,其中包括:
- 清理非活动用户帐户
- 配置 SAML 集成
- 转换现有用户以使用 SAML SSO 登录
- 为新用户配置权限和机器人
- 停止使用本地帐户(可选)
通过 SAML 集成登录的目录用户无法查看 API 访问信息(允许您使用用户密钥授权 API 请求)。
要设置 SAML 集成,您需要:
- 一个拥有企业版许可的 Automation Cloud 组织。
-
Automation Cloud 和第三方身份提供程序中的管理员权限。
如果您在身份提供程序中没有管理员权限,则可以与管理员合作完成设置流程。
-
推荐使用 UiPath™ Studio 和 UiPath Assistant 2020.10.3 或更高版本,以便您可以将其设置为使用推荐的部署。
从 Azure Active Directory 集成切换
如果您当前使用的是 Azure Active Directory 集成进行身份验证,我们建议您继续使用 AAD 集成,因为其功能更丰富。
如果您确实决定不再使用 AAD 集成,则必须将通过目录组完成的角色分配手动替换为对目录帐户的直接角色分配,这样您就不必完全重新创建访问架构。
如果您的组织回收电子邮件地址,则在配置 SAML 集成之前请务必删除所有非活动的用户帐户。
启用集成时,Automation Cloud 中的本地帐户可以与使用相同电子邮件地址的外部身份提供程序中的目录帐户相关联。当目录帐户用户首次使用该电子邮件地址登录时,会与该帐户关联。身份提供程序的身份将继承本地帐户具有的任何角色,以便无缝转换。
因此,如果 Automation Cloud 中有非活动本地帐户,则这就会存在本地帐户与目录帐户不匹配的风险,这样可能会导致权限意外得到提升。
要删除非活动的用户帐户,请执行以下操作:
现在,您必须为集成配置 Automation Cloud 和身份提供程序 (IdP)。
Automation Cloud 可以连接到使用 SAML 2.0 标准的任何第三方身份提供程序 (IdP)。
虽然配置可能因您选择的 IdP 而异,但我们已经验证了使用 Okta 或 PingOne 的配置,您可以将其用作配置集成的参考。
对于其他身份提供程序,我们建议您遵循其集成文档。
A. Okta 的示例配置
- 在其他浏览器选项卡中,登录到“Okta 管理控制台”。
- 转到“应用程序”>“应用程序”,单击“创建应用程序集成” ,然后选择“SAML 2.0”作为登录方法。
- 在“常规设置”页面中,指定要集成的 Automation Cloud 应用程序名称。
- 在“配置 SAML”页面上,按照以下内容填写“常规”部分:
- 单点登录 URL:输入从 Automation Cloud 获取的断言使用者服务 URL 值。
- 选中“将此用于收件人 URL 和目标 URL”复选框。
- 受众 URI:输入从 Automation Cloud 获取的实体 ID 值。
- 姓名 ID 格式:选择“电子邮件地址”
- 应用程序用户名:选择“电子邮件”
- 对于属性语句,请添加以下内容:
- 名称:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
- 将“名称格式”保留为“未指定”。
- 将“值”设置为
user.email
或包含用户唯一电子邮件地址的用户属性 - 添加其他属性映射(可选)。Automation Cloud 还支持“名字”、“姓氏”、“职位名称”和“部门”用户属性。然后,此信息将传播到 Automation Cloud,供其他服务(例如 Automation Hub)使用。
- 名称:
- 在“反馈”页面上,选择您偏好的选项。
- 单击“完成”。
- 在“登录”选项卡的“设置”部分,在“查看设置说明”下,复制“身份提供程序元数据 URL”值并保存以备后用。
- 在 Automation Cloud 的“应用程序”页面,选择新创建的应用程序。
-
在“分配”选项卡中,选择“分配”>“分配给人员”,然后选择允许对 Automation Cloud 使用 SAML 身份验证的用户。
新添加的用户将显示在“人员”选项卡上。
B. PingOne 的示例配置
- 在其他浏览器选项卡中,登录到 PingOne 管理控制台。
- 转到“连接” > “应用程序”,然后单击加号图标“+”。
- 单击“网页应用程序”,对于 SAML,单击“配置”。
- 在“创建应用程序配置文件”页面中,指定 Automation Cloud 应用程序的名称。
-
在“配置 SAML 连接”页面上,选择“手动输入”并提供以下信息:
- ACS URL:输入从 Automation Cloud 获取的断言使用者服务 URL 值。
- 实体 ID:输入从 Automation Cloud 获取的实体 ID 值。
- SLO 绑定:HTTP 重定向
- 断言有效期:输入有效期的秒数。
- 单击“保存并继续”。
- 在“映射属性”页面上,添加电子邮件地址:
- 选择“+ 添加属性”。
- 对于“应用程序属性”,请输入
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
。 - 将“传出值”设置为“电子邮件地址”或包含用户的唯一电子邮件地址的用户属性。
- 选中“必填项”复选框。
- 添加其他属性映射(可选)。Automation Cloud 还支持“名字”、“姓氏”、“职位名称”和“部门”用户属性。这些属性区分大小写。然后,系统会将这类信息传播到 Automation Cloud,供其他服务(例如 Automation Hub)使用。
- 单击“保存并关闭”。
- 单击 Automation Cloud 应用程序的切换开关,启用该应用程序以供用户访问。
- 在“配置”选项卡上,复制并保存“IdP 元数据 URL”值以供之后使用。
要验证 SAML SSO 集成是否正常运行,请执行以下操作:
- 打开一个隐身浏览器窗口。
- 导航到您的 Automation Cloud URL。
- 检查以下内容:
- 系统是否会提示您使用 SAML 身份提供程序登录?
- 您能否成功登录?
- 如果您使用与现有用户帐户匹配的电子邮件地址登录,您是否拥有适当的权限?
如果您在 IdP 中使用声明,则可以在配置规则中将其用作条件,以便在用户登录 Automation Cloud 时自动为其配置正确的许可证和角色。
当用户登录时,系统将评估配置规则。如果用户帐户符合规则的条件,系统会自动将其添加到与该规则关联的组中。
阶段 1. 设置配置组
在 Automation Cloud 中,向组添加帐户意味着该帐户将继承为该组定义的许可证、角色和机器人配置(如有)。
因此,如果您针对特定类型的用户(例如,创建自动化的员工或测试自动化的员工)设置了一个组,则只需在 IdP 中以对其他类似帐户采取的相同方式进行设置,即可将该类型的新员工加入 Automation Cloud 中。
这样,您只需设置一次组,然后在需要时通过向组添加帐户来复制设置即可。此外,如果需要更改特定用户组的设置,则只需更新一次该组,这些更改便会应用于该组中的所有帐户。
要为配置规则设置组:
-
在 Automation Cloud 中创建一个新的本地组。
如有需要,您可以使用其中一个现有组,而不必创建新组。
-
(此为可选项,需要用户许可证管理)如果此组中的用户需要用户许可证,请为该组设置许可证分配规则。
如果您使用的是现有组,请检查该组的许可证分配情况,确保分配的许可证正确无误。如未使用现有组,请更改分配情况,或考虑创建一个新组。
-
为组分配租户角色,也可以完成机器人设置。有关说明,请参阅向组分配角色。
如果您使用的是现有组,请检查当前分配给该组的角色,确保其符合您将添加到该组中的用户类型。如未使用现有组,请编辑分配给该组的角色,或考虑创建一个新组。
-
根据需要将组添加到文件夹中并分配文件夹角色。有关说明,请参阅文件夹访问权限。
现在,您可以在配置规则中使用此组。
阶段 2. 为组创建配置规则
通过在 SAML 应用程序中进行配置,确保将与 SAML 配置规则关联的声明发送到 SAML 有效负载。
配置 SAML 集成并设置组后:
-
转到“管理员”,选择您的组织,然后选择“安全”。
组织的“安全设置”页面将在“身份验证设置”选项卡上打开。
-
在“SAML SSO”选项下,单击“查看配置规则”:
系统将打开“SAML SSO 配置规则”页面,其中列出了现有规则。
-
在页面右上角,单击“添加规则”。
系统将打开“添加新规则”页面。
- 在“基本详细信息”下,填写“规则名称”字段,并填写“说明”字段(可选)。
-
在“条件”下,单击“添加规则”。
系统会为新条件添加一行字段。它们共同定义帐户在登录时必须满足的条件,才能被添加到稍后选择的组中。
- 在“声明”字段中,输入 IdP 中显示的声明名称。此字段
区分大小写。
-
从“关系”列表中,选择声明与值的关系。可选择以下选项:
关系
条件要求
示例
是
精确匹配,区分大小写
Department is RPA
要求Department
声明的值为RPA
。例如,如果值为RPADev
,则不满足条件。此关系适用于多值声明。
例如,如果在Group
声明下发送值administrator
和developer
,则Group is administrator
将是有效关系。非
除指定值外的任何内容,区分大小写
对于Department is not ctr
,任何帐户都将添加到组中,除非Department
的值为ctr
。如果部门为Ctr
或electr
,则满足条件。包含
包括,不需要精确匹配,区分大小写
Department contains RPA
要求Department
声明的值包括RPA
。例如,如果值为RPADev
、xRPAx
或NewRPA
,则满足条件。不包含
排除,不需要精确匹配,区分大小写
对于Department not contains ctr
,任何帐户都将添加到组中,除非Department
值包含ctr
。例如,部门为ctr
或electr
的帐户不会被添加到组中。不区分大小写
精确匹配,不区分大小写
Department is case insensitive RPA
要求Department
声明的值为rpa
(任意大写形式)。例如,如果值为rpa
,则满足条件。如果值为crpa
,则不满足条件。不区分大小写
包含,不需要精确匹配,不区分大小写
Department contains case insensitive RPA
要求Department
声明的值包括RPA
(任意大写)。例如,如果值为rpa
、cRPA
或rpA
,则满足条件。 - 在“值”字段中,输入满足条件所需的值。
-
如果要添加另一个条件,请单击“添加规则”,添加新的条件行。
添加多个条件时,必须满足所有条件才能应用配置规则。例如,如果您定义了Title is Engineer
和Department is RPA
规则,则只有同时属于 RPA 部门且具有职位名称为“工程师”的用户才会被添加到指定的组中。部门为 RPA、但职位名称为 QA 的帐户不会被添加到组中。 -
在“分配给组”下的“添加组”框中,开始输入组名,然后从结果列表中选择一个组。如有需要,重复此操作,添加更多组。
若满足条件,帐户会在登录时自动添加到这些组中。
- 单击右下角的“保存”,添加规则。
规则设置好后,每当用户登录 Automation Cloud 并且其帐户满足为规则指定的条件时,系统均会将其帐户添加到附加至规则的配置组中,还会将其账户设置为在 Automation Cloud 中使用。
示例 SAML 有效负载片段
<Attribute
Name="groups">
<AttributeValue
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string">ProcessAutomation-Developer</AttributeValue>
<Attribute
Name="groups">
<AttributeValue
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:type="xs:string">ProcessAutomation-Developer</AttributeValue>
在配置 SAML 目录集成时,组织管理员可以定义应将其 IdP 中的哪些属性映射到系统用户属性。然后,当用户通过 SAML 目录集成登录时,系统将读取传递到 ACS 有效负载中的声明,并将值映射到其对应的系统属性。
例如,如果这是 IdP 中的用户结构,则组织管理员可以设置以下属性映射设置,以便在系统用户对象中填充此信息。
{
"displayname": "John Doe",
"fname": "John",
"lname": "Doe",
"jobtitle": "Hardware Engineer",
"dpt": "Engineering",
"city": "Phoenix"
}
{
"displayname": "John Doe",
"fname": "John",
"lname": "Doe",
"jobtitle": "Hardware Engineer",
"dpt": "Engineering",
"city": "Phoenix"
}
当此组织中的用户通过 SAML 目录集成登录时,其用户对象将更新,以反映此设置。
{
"Display Name": "John Doe",
"First Name": "John",
"Last Name": "Doe",
"Job Title": "Hardware Engineer",
"Department": "Engineering",
"City": "Phoenix"
}
{
"Display Name": "John Doe",
"First Name": "John",
"Last Name": "Doe",
"Job Title": "Hardware Engineer",
"Department": "Engineering",
"City": "Phoenix"
}
-
必须将 IdP 配置为在 ACS 负载中传递这些声明。
-
确保 IdP 中配置的属性名称与组织管理员门户中的属性映射设置匹配。
请务必向所有用户提供 Automation Cloud 特定于组织的 URL,并按照以下说明进行操作。 只有组织管理员才能在“组织设置”中查看组织 URL 。
要使用 SAML SSO 登录 Automation Cloud,用户可以:
- 导航到特定于组织的 URL。URL 必须包含组织 ID,并以正斜杠结尾,例如
https://cloud.uipath.com/orgID/
。 - 导航至 https://cloud.uipath.com,在“登录”页面中选择“使用 SSO 登录”,然后提供其特定于组织的 URL。
改用 SAML 集成后,Azure AD 集成将被禁用。Azure AD 组分配不再适用,因此 Automation Cloud 组成员身份和从 Azure AD 继承的权限不再适用。
要使用 SAML SSO 登录 UiPath Studio 和 UiPath Assistant,用户必须按如下方式配置 Assistant:
这仅适用于以前未使用过 Automation Cloud,且因此在启用集成时未拥有设置好的本地帐户的新用户。
您可以通过电子邮件地址(在外部 IdP 中使用)将新用户添加到 Automation Cloud 组。用户经分配或登录后,即可在所有 Automation Cloud 服务中搜索角色分配来访问组。
在所有用户都已转用 SAML SSO 登录且新用户已设置完成后,我们建议您移除所有非管理员帐户的本地用户帐户。这可确保用户无法再使用其本地帐户凭据登录,而必须使用 SAML SSO 登录。
您可以根据用户图标识别本地用户帐户。
User login failed. (#216)
,则可能是由于 SAML 身份提供程序配置中缺少电子邮件地址映射。
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
,并且该值必须具有有效电子邮件地址。
您可以使用 Azure 门户为添加到 Azure AD 租户的企业应用程序启用 SSO。
配置 SSO 后,用户可以使用其 Azure AD 凭据登录。
If your users are in Azure AD but cannot use the Azure AD integration instructions to configure AAD to your UiPath® organization, configuring AAD as a SAML-based IdP may be an option.
这是因为在授予读取所有 UiPath 应用程序用户的用户详细信息和组成员身份的权限方面存在限制。
-
使用先决条件中列出的角色之一登录 Azure 门户。
-
转到 Azure AD,然后选择“企业应用程序”。
系统将打开“所有应用程序”页面,其中列出了 Azure AD 租户中的应用程序。
搜索,然后选择要使用的应用程序。 例如, UiPath 。
备注:要创建 SSO 应用程序,请按照本部分中的步骤操作。
-
在“管理”部分的左侧边栏中,选择“单点登录”,以打开SSO 编辑页面。
-
选择“SAML” 以打开“ SSO 配置”页面。
配置应用程序后,用户可以使用其 Azure AD 租户凭据登录应用程序。
-
在“基本 SAML 配置” 部分下,单击“编辑” 。
-
根据 UiPath 门户的 SAML 配置设置中提供的值填写“实体 ID ” 和“断言使用者服务 (ACS) URL ” 字段。
-
单击“保存”。
备注:UiPath 需要由 SAML 身份提供程序发送的 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress 或 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn 声明。
如果两个声明都在 ACS 有效负载中发送,则 UiPath 将优先考虑 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress 声明。
默认情况下,Azure AD 中的应用配置为向 http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress 发送声明,并将用户的电子邮件地址作为声明的值。
如果您要从或计划切换到 Azure AD 目录集成,请注意:
-
UiPath 将优先级声明中传递的值用作唯一标识符,并用于将任何现有本地用户(使用本地用户的电子邮件地址)链接到 Azure AD 中的此目录用户。
-
为了在 Azure AD 和 SAML 目录集成之间顺利切换,建议您在这两个声明中传递适当的用户值。
以下是配置示例:
-
-
复制应用程序联合元数据 URL 。
-
导航到“ UiPath 管理” 门户,然后转到“ SAML 配置” 页面。
-
在“ 元数据 URL ”字段中粘贴“ 应用程序联合身份验证 元数据 URL”。
-
单击“获取数据”,让系统从身份提供程序请求用户相关信息。
-
使用先决条件中列出的角色之一登录 Azure 门户。
-
转到 Azure AD,然后选择“企业应用程序”。
系统将打开“所有应用程序”页面,其中列出了 Azure AD 租户中的应用程序。
搜索,然后选择要使用的应用程序。 例如, UiPath 。
备注:要创建 SSO 应用程序,请按照本部分中的步骤操作。
-
在“管理”部分的左侧边栏中,选择“单点登录”,以打开SSO 编辑页面。
-
在 SSO 编辑 页面的“ 属性和声明 ”部分中,单击“ 编辑 ”。
-
单击“添加组声明”,以配置要发送到 UiPath 的组。
备注:要设置高级配置,请从“高级设置”下拉列表中进行选择。
-
单击“保存”。
-
要完成配置,请按照我们公共文档中的步骤 2.5 配置配置规则(可选) 。
如果客户更喜欢使用UPN ,您可以导航至“属性和声明”部分,并更改“电子邮件地址”属性的值。
- 使用先决条件中列出的角色之一登录 Azure 门户。
- 转到 Azure AD,然后选择“企业应用程序”。系统将打开“所有应用程序”页面,其中列出了 Azure AD 租户中的应用程序。
- 单击“新建应用程序”>“创建您自己的应用程序”。
- 为您的应用程序命名。例如,UiPath。
- 选择“集成在库中找不到的任何其他应用程序(非库)”。
- 单击“创建”。
- 配置流程概述
- 已知限制
- 无法从您的身份提供程序搜索帐户
- 无法在组织级别查看目录用户
- 无法查看 API 访问权限信息
- 先决条件
- 步骤 1. 清理非活动用户帐户
- 步骤 2. 配置 SAML 集成
- 步骤 2.1.获取 SAML 服务提供程序详细信息
- 步骤 2.2.配置您的身份提供程序
- 步骤 2.3.配置 Automation Cloud
- 步骤 2.4.检查集成是否正在运行
- 步骤 2.5.配置配置规则(可选)
- SAML 属性映射
- 步骤 3. 让您的用户转用 SAML SSO 登录
- 步骤 4. 配置权限和机器人
- 步骤 5. 停止使用本地帐户(可选)
- 停止使用本地帐户的注意事项
- 故障排除
- 使用 Azure AD 设置 SAML SSO
- 为应用程序启用 SAML SSO
- 设置声明以自动配置到 UiPath
- 为 SSO 创建应用程序