使用 Azure AD 将 SAML 用于工作区身份验证的访客和 B2B 身份
在阅读本文之前,您必须了解 B2B SAML 是否适用于您的身份验证用例。在决定实施此特定特殊情况 SAML 解决方案之前,请仔细阅读用例描述和常见问题解答。在继续之前,请确保您完全了解 B2B SAML 适用的场景以及您需要使用的身份类型。大多数 SAML 用例可以通过遵循其他 SAML 文章并通过发送所有四个 cip_* 属性进行身份验证来实现。
注意:
使用 B2B SAML 会增加 Citrix Cloud 连接器上的负载,因为它们必须为每个 Workspace 最终用户登录查找用户电子邮件、SID 和 OID,而不是由 SAML 断言提供这些值。如果实际上不需要 B2B SAML,从 Citrix Cloud 连接器性能的角度来看,在 SAML 断言中发送所有四个 cip_* 属性是更优选的。
先决条件
- 专门配置用于 B2B SAML 的 SAML 应用程序,该应用程序仅在 SAML 断言中发送 cip_upn 进行身份验证。
- SAML 提供程序中的前端用户。
- 包含一对 Citrix Cloud 连接器的资源位置,这些连接器已加入创建 AD 影子帐户的 AD 林和域。
- 使用隐式 UPN 或将备用 UPN 后缀添加到创建 AD 影子帐户的后端 AD 林。
- 具有匹配 UPN 的后端 AD 影子帐户。
- DaaS 或 CVAD 资源映射到 AD 影子帐户用户。
- 链接到同一资源位置的一个或多个 FAS 服务器。
常见问题
为什么要使用 B2B SAML
大型组织邀请承包商和临时员工加入其身份平台非常常见。目标是使用用户现有身份(例如承包商电子邮件地址或组织外部的电子邮件地址)授予承包商对 Citrix Workspace 的临时访问权限。B2B SAML
允许使用 AD 域中不存在的本机或访客前端身份,而 DaaS 资源发布在该 AD 域中。
什么是 B2B SAML
通常,在登录 Citrix Workspace 时,使用四个 SAML 属性 cip_* 及其相应的 AD 用户属性来验证最终用户。这些四个 SAML 属性应存在于 SAML 断言中,并使用 AD 用户属性填充。B2B SAML
指的是仅需要 cip_upn SAML 属性即可成功进行身份验证。
AD 属性 | SAML 断言中的默认属性名称 |
---|---|
userPrincipalName | cip_upn |
cip_email | |
objectSID | cip_sid |
objectGUID | cip_oid |
身份验证所需的其他三个 AD 用户属性 objectSID、objectGUID 和 mail 是通过加入 AD 域(其中存在 AD 影子帐户)的 Citrix Cloud 连接器获取的。在 Workspace 或 Citrix Cloud 的 SAML 登录流程中,它们不再需要包含在 SAML 断言中。
AD 属性 | SAML 断言中的默认属性名称 |
---|---|
userPrincipalName | cip_upn |
重要提示:
对于所有 SAML 流程(包括
B2B SAML
),仍然需要发送 displayName。Workspace UI 需要 displayName 才能正确显示 Workspace 用户的全名。
什么是本机 SAML 用户身份
本机 SAML 用户是仅存在于您的 SAML 提供程序目录(例如 Entra ID 或 Okta)中的用户身份。这些身份不包含本地用户属性,因为它们不是通过 AD 同步工具(如 Entra ID Connect)创建的。它们需要匹配的 AD 后端影子帐户才能枚举和启动 DaaS 资源,本机 SAML 用户必须映射到 Active Directory 中的相应帐户。
什么是从另一个 Entra ID 租户导入的 B2B 用户
B2B 用户是 Entra ID 用户,它作为成员存在于 Entra ID 租户 1 中,并被邀请到其他 Entra ID 租户(例如 Entra ID 租户 2)作为访客用户。B2B SAML 应用程序在 Entra ID 租户 2 中配置,并作为 SAML IdP 连接到 Citrix Cloud。B2B 用户需要匹配的 AD 后端影子帐户才能枚举和启动 DaaS 资源。B2B 用户必须映射到 Active Directory 中的相应影子帐户。
有关 B2B 用户的详细信息以及如何邀请其他 Entra ID 租户中的成员用户作为访客用户加入您的 Entra ID 租户,请参阅 Microsoft 文档。
概述:与外部访客进行 B2B 协作以支持您的员工 Microsoft Entra B2B 协作用户的属性
什么是 AD 支持的 SAML 用户身份
AD 支持的 SAML 用户是存在于您的 SAML 提供程序目录(如 Entra ID 或 Okta)以及您的本地 AD 林中的用户身份。这些身份包含本地用户属性,因为它们是通过 AD 同步工具(如 Entra ID Connect)创建的。这些用户不需要 AD 后端影子帐户,因为它们包含本地 SID 和 OID,因此可以枚举和启动使用已加入 AD 域的 VDA 发布的 DaaS 资源。
什么是前端身份
前端身份是用于登录 SAML 提供程序和 Workspace 的身份。前端身份具有不同的用户属性,具体取决于它们在 SAML 提供程序中创建的方式。
- 本机 SAML 用户身份
- AD 支持的 SAML 用户身份
您的 SAML 提供程序可能混合了这两种类型的身份。例如,如果您的身份平台中既有承包商也有永久员工,则 B2B SAML
将适用于这两种类型的前端身份,但仅当您拥有某些属于本机 SAML 用户身份类型的帐户时才强制要求。
什么是后端 AD 影子帐户
后端 AD 影子帐户是 DaaS 使用的 AD 帐户,它映射到 SAML 提供程序中的相应前端身份。
为什么需要后端 AD 影子帐户
为了枚举使用已加入 AD 域的 VDA 发布的 DaaS 或 CVAD 资源,需要 VDA 所加入的 Active Directory 林中的 AD 帐户。将 DaaS 交付组中的资源映射到影子帐户用户,以及映射到您将 VDA 加入的 AD 域中包含影子帐户的 AD 组。
重要提示:
只有没有 AD 域属性的本机 SAML 用户才需要匹配的 AD 影子帐户。如果您的前端身份是从 Active Directory 导入的,则您不需要使用
B2B SAML
,也不需要创建后端 AD 影子帐户。
如何将前端身份链接到相应的后端 AD 影子帐户
链接前端身份和后端身份的方法是使用匹配的 UPN。两个链接的身份应具有相同的 UPN,以便 Workspace 可以判断它们代表需要登录 Workspace 并枚举和启动 DaaS 资源的同一最终用户。
重要提示
单个前端身份只能映射到单个 AD 林/域中的单个后端身份。DaaS 资源的枚举将仅使用从正确 Citrix Cloud 连接器执行的 AD 影子帐户查找中获得的单个 SID 值。您不能使用与具有相同 UPN 后缀的多个 AD 影子帐户匹配的单个前端用户创建一对多关系。后端 AD 影子帐户应仅存在于单个 AD 林/域中。
支持使用前端和后端身份之间明确的 UPN 匹配 前端用户
(user@yourforest.com)
> AD 林 1 中的后端用户(UPN user@yourforest.com)
不支持,因为尝试将一个前端与一个后端身份匹配时存在 UPN 歧义 前端用户
(user@yourforest1.com)
> AD 林 1 中的后端用户(UPN user@yourforest1.com)
> AD 林 2 中的后端用户(UPN user@yourforest1.com)
B2B SAML 是否需要 Citrix FAS
是的。在使用任何联合身份验证方法登录 Workspace 时,FAS 是在启动期间对 VDA 进行 SSON 所必需的。
什么是“SID 不匹配问题”以及何时可能发生
“SID 不匹配问题”是由于 SAML 断言中包含的前端用户的 SID 与 AD 影子帐户用户的 SID 不匹配而引起的。当登录到 SAML 提供程序的帐户具有本地 SID 且与影子帐户用户的 SID 不同时,可能会发生这种情况。这仅当前端身份由 AD 同步工具(如 Entra ID Connect)预配且来自与创建影子帐户的 AD 林不同的 AD 林时才会发生。
B2B SAML
可防止“SID 不匹配问题”的发生。通过加入后端 AD 域的 Citrix Cloud 连接器,始终为影子帐户用户获取正确的 SID。影子帐户用户查找是使用前端用户的 UPN 执行的,然后将其与相应的后端影子帐户用户匹配。
SID 不匹配问题示例:
前端用户由 Entra ID Connect 创建并从 AD 林 1 同步。
S-1-5-21-000000000-0000000000-0000000001-0001
后端影子帐户用户在 AD 林 2 中创建并映射到 DaaS 资源
S-1-5-21-000000000-0000000000-0000000002-0002
SAML 断言包含所有四个 cip_* 属性,并且 cip_sid 包含值 S-1-5-21-000000000-0000000000-0000000001-0001
,该值与影子帐户的 SID 不匹配并触发错误。
在 Entra ID 中为外部访客帐户配置 B2B SAML 应用程序
- 登录 Azure 门户。
- 从门户菜单中,选择 Entra ID。
- 在左侧窗格中,在管理下,选择企业应用程序。
- 选择创建自己的应用程序。
-
为 SAML 应用程序输入一个合适的名称,例如
Citrix Cloud SAML SSO Production B2B SAML UPN Only
。 - 在左侧导航窗格中,选择单一登录,然后在工作窗格中,单击 SAML。
- 在基本 SAML 配置部分中,单击编辑并配置以下设置:
- 在标识符 (实体 ID) 部分中,选择添加标识符,然后输入与您的 Citrix Cloud 租户所在区域关联的值:
- 对于欧洲、美国和亚太南部地区,输入
https://saml.cloud.com
。 - 对于日本地区,输入
https://saml.citrixcloud.jp
。 - 对于 Citrix Cloud Government 地区,输入
https://saml.cloud.us
。
- 对于欧洲、美国和亚太南部地区,输入
- 在回复 URL (断言消费者服务 URL) 部分中,选择添加回复 URL,然后输入与您的 Citrix Cloud 租户所在区域关联的值:
- 对于欧洲、美国和亚太南部地区,输入
https://saml.cloud.com/saml/acs
。 - 对于日本地区,输入
https://saml.citrixcloud.jp/saml/acs
。 - 对于 Citrix Cloud Government 地区,输入
https://saml.cloud.us/saml/acs
。
- 对于欧洲、美国和亚太南部地区,输入
- 在登录 URL 部分中,输入您的 Workspace URL。
- 在注销 URL (可选) 部分中,输入与您的 Citrix Cloud 租户所在区域关联的值:
- 对于欧洲、美国和亚太南部地区,输入
https://saml.cloud.com/saml/logout/callback
。 - 对于日本地区,输入
https://saml.citrixcloud.jp/saml/logout/callback
。 - 对于 Citrix Cloud Government 地区,输入
https://saml.cloud.us/saml/logout/callback
。
- 对于欧洲、美国和亚太南部地区,输入
-
在命令栏中,单击保存。“基本 SAML 配置”部分显示如下:
- 在标识符 (实体 ID) 部分中,选择添加标识符,然后输入与您的 Citrix Cloud 租户所在区域关联的值:
-
在属性和声明部分中,单击编辑以配置以下声明。这些声明将出现在 SAML 响应中的 SAML 断言中。创建 SAML 应用程序后,配置以下属性。
- 对于唯一用户标识符 (Name ID) 声明,将名称标识符格式设置为未指定,并将其源属性设置为
user.localuserprincipalname
。 - 对于 cip_upn 声明,保留默认值
user.localuserprincipalname
。 - 对于 displayName,保留默认值
user.displayname
。 -
在其他声明部分中,对于任何剩余的具有
http://schemas.xmlsoap.org/ws/2005/05/identity/claims
命名空间的声明,单击省略号 (…) 按钮,然后单击删除。无需包含这些声明,因为它们是上述用户属性的重复项。完成后,“属性和声明”部分显示如下:
- 使用此第三方在线工具获取 Citrix Cloud SAML 签名证书的副本。
- 在 URL 字段中输入
https://saml.cloud.com/saml/metadata
,然后单击加载。
- 对于唯一用户标识符 (Name ID) 声明,将名称标识符格式设置为未指定,并将其源属性设置为
-
滚动到页面底部,然后单击下载。
- 配置 Azure Active Directory SAML 应用程序签名设置。
- 在 Azure Active Directory SAML 应用程序中上传在步骤 10 中获取的生产 SAML 签名证书
- 启用要求验证证书。
配置 Citrix Cloud B2B SAML 连接
默认情况下,Citrix Cloud 将期望 SAML 断言中存在 cip_upn、cip_email、cip_sid 和 cip_oid,如果未发送这些属性,则 SAML 登录将失败。为防止这种情况,在创建新的 SAML 连接时,请删除对这些属性的检查。
- 使用默认设置创建新的 SAML 连接。
- 导航到底部的SAML 属性映射配置部分,并在保存新的 SAML 配置之前进行更改。
- 从 cip_email、cip_sid 和 cip_oid 字段中删除 SAML 属性名称。
- 不要从 cip_upn 字段中删除它。
- 不要从其各自字段中删除任何其他属性。Workspace UI 仍然需要 displayName,不应更改。
配置 AD 影子帐户资源位置和连接器
后端影子帐户 AD 林中需要一个资源位置和连接器对。当仅在 SAML 断言中直接提供 cip_upn 时,Citrix Cloud 需要此 AD 林中的连接器来查找影子帐户用户身份和属性,例如 cip_email、cip_sid 和 cip_oid。
-
创建新的资源位置,其中将包含已加入后端影子帐户 AD 林的 Citrix Cloud 连接器。
- 将资源位置命名为与包含您希望使用的后端 AD 影子帐户的 AD 林匹配。
- 在新创建的资源位置中配置一对 Citrix Cloud 连接器。
例如
ccconnector1.shadowaccountforest.com
ccconnector2.shadowaccountforest.com
在后端 AD 林中配置 FAS
承包商前端用户肯定需要 FAS。在 DaaS 启动期间,承包商用户将无法手动输入 Windows 凭据来完成启动,因为他们可能不知道 AD 影子帐户密码。
- 在创建影子帐户的后端 AD 林中配置一个或多个 FAS 服务器。
- 将 FAS 服务器链接到包含一对已加入后端 AD 林(其中创建了影子帐户)的 Citrix Cloud 连接器的同一资源位置。
在 AD 域中配置备用 UPN 后缀
重要提示:
UPN 与用户的电子邮件地址不同。在许多情况下,为了方便使用,它们是相同的值,但 UPN 和电子邮件通常可以具有不同的值,并且在不同的 Active Directory 属性和不同的 Entra ID 用户属性中定义。此解决方案依赖于前端和后端身份之间的 UPN 匹配,而不是电子邮件匹配。
如果您的域在 DNS 中可公开路由,则可以使用隐式 UPN 后缀,或者为希望邀请到 Okta 或 Azure AD 租户中的每个外部前端用户添加匹配的备用 UPN 后缀。如果 AD 使用 yourdomain.local
作为隐式 UPN,则必须选择 yourdomain.com
等备用 UPN 后缀。Entra ID 不允许您在自定义域名中添加 yourdomain.local
。
例如,如果您邀请外部用户 contractoruser@hotmail.co.uk
,并且希望将其与后端 AD 影子帐户 contractoruser@yourforest.com
关联,则在您的 AD 林中添加 yourforest.com
作为 ALT UPN 后缀。
使用 Active Directory 域和信任 UI 在 Active Directory 中添加备用 UPN 后缀
- 登录到后端 AD 林中的域控制器。
- 打开运行对话框,然后键入
domain.msc
,然后单击确定。 - 在“Active Directory 域和信任”窗口中,右键单击“Active Directory 域和信任”,然后选择属性。
-
在UPN 后缀选项卡上的“备用 UPN 后缀”框中,添加备用 UPN 后缀,然后选择添加。
- 单击确定。
使用 PowerShell 管理后端 AD 林的 UPN 后缀
您可能需要向后端 AD 林添加大量新的 UPN 后缀,以创建必要的影子帐户 UPN。您需要添加到后端 AD 林的备用 UPN 后缀的数量将取决于您选择邀请到 SAML 提供程序租户中的外部用户的数量。
如果需要创建大量新的备用 UPN 后缀,以下是一些 PowerShell 命令:
# Get the list of existing ALT UPN suffixes within your AD Forest
(Get-ADForest).UPNSuffixes
# Add or remove ALT UPN Suffixes
$NewUPNSuffixes = @("yourforest.com","externalusers.com")
# Set action to "add" or "remove" depending on the operation you wish to perform.
$Action = "add"
foreach($NewUPNSuffix in $NewUPNSuffixes)
{
Get-ADForest | Set-ADForest -UPNSuffixes @{ $Action=$NewUPNSuffix }
}
<!--NeedCopy-->
在后端 AD 林中配置 AD 影子帐户
- 创建新的 AD 影子帐户用户。
-
默认情况下,新 AD 用户会选择 AD 林隐式 UPN,例如
yourforest.local
。选择您之前创建的相应备用 UPN 后缀。例如,选择yourforest.com
作为影子帐户用户的 UPN 后缀。影子帐户用户的 UPN 也可以通过 PowerShell 更新。
Set-ADUser "contractoruser" -UserPrincipalName "contractoruser@yourforest.com" <!--NeedCopy-->
重要提示
Windows AD PowerShell 将允许您创建具有任何指定 UPN 后缀的影子帐户用户,即使该 UPN 后缀在您的 AD 林中不存在。您希望使用的备用 UPN 后缀必须存在于 AD 林中,因为 Citrix Cloud 连接器依赖此列表来查找后端影子帐户用户。如果备用 UPN 后缀未按上述屏幕截图所示出现在 AD 林中,则 Citrix Cloud 将无法将您的前端身份与适当的后端 AD 影子帐户匹配。
- 影子帐户用户的 UPN 应与外部前端身份用户的 UPN 完全匹配。
- 测试前端用户登录 Workspace。
- 验证登录成功后 Workspace 中是否枚举了所有预期资源。映射到 AD 影子帐户的资源应显示。
配置访客 Entra ID 用户 UPN 以匹配 AD 影子帐户 UPN
当外部访客用户被邀请到 Entra ID 租户时,会创建一个自动生成的 UPN,指示该用户是外部用户。外部 Entra ID 用户将自动分配 @Entra IDtenant.onmicrosoft.com UPN 后缀,这不适用于 B2B SAML,并且不会与您的 AD 影子帐户匹配。这需要更新以匹配 Entra ID 中导入的 DNS 域以及您在 AD 林中创建的备用 UPN 后缀。
-
将与您添加到 AD 林中的备用 UPN 后缀匹配的自定义域导入 Entra ID。
-
邀请访客用户,例如
contractoruser@hotmail.co.uk
,并确保受邀访客用户接受 Microsoft 对 Entra ID 租户的邀请。Microsoft 生成的外部访客用户 UPN 格式示例。
contractoruser_hotmail.co.uk#EXT#@yourEntra IDtenant.onmicrosoft.com
重要提示:
Citrix Cloud 和 Workspace 不能使用包含 # 字符的 UPN 进行 SAML 身份验证。
-
安装必要的 Azure PowerShell Graph 模块,以便管理 Entra ID 用户。
Install-Module -Name "Microsoft.Graph" -Force Get-InstalledModule -Name "Microsoft.Graph" <!--NeedCopy-->
-
使用全局管理员帐户并使用
Directory.AccessAsUser.All
范围登录到您的 Entra ID 租户。重要提示:
如果您使用权限较低的帐户或未指定
Directory.AccessAsUser.All
范围,则将无法完成步骤 4 并更新访客用户的 UPN。Connect-MgGraph -Scopes Directory.AccessAsUser.All <!--NeedCopy-->
-
使用与您为 AD 影子帐户配置的 UPN 匹配的 UPN 更新 Entra ID 用户。
$GuestUserId = (Get-MgUser -UserId "contractoruser_hotmail.co.uk#EXT#@yourentraidtenant.onmicrosoft.com").Id Update-MgUser -UserId $GuestUserId -UserPrincipalName "contractoruser@your.com" <!--NeedCopy-->
-
获取 Entra ID 租户中所有外部访客用户的完整列表(可选)。
Get-MgUser -filter "userType eq 'Guest'" | Select Id,DisplayName,UserPrincipalName,Mail <!--NeedCopy-->
-
获取需要更新 UPN 的访客用户身份,然后更新其 UPN 后缀。
$GuestUserId = (Get-MgUser -UserId "contractoruser_hotmail.co.uk#EXT#@yourEntra IDtenant.onmicrosoft.com").Id Update-MgUser -UserId $GuestUserId -UserPrincipalName "contractoruser@yourforest.com" <!--NeedCopy-->
-
检查是否可以使用新更新的 UPN 找到访客用户身份。
Get-MgUser -UserId "contractoruser@yourforest.com" <!--NeedCopy-->
测试 B2B SAML 解决方案
在 AD、Citrix Cloud 和您的 SAML 提供程序中完成所有文档步骤后,您需要测试登录并验证 Workspace 中为访客用户显示了正确的资源列表。
Citrix 建议使用 SAML-tracer 浏览器扩展进行所有 SAML 调试。此扩展适用于大多数常见的 Web 浏览器。该扩展将 Base64 编码的请求和响应解码为 SAML XML,使其易于阅读。
使用 SAML tracer 捕获的仅使用 cip_upn 进行身份验证的 B2B SAML 断言示例。
-
将正确的 DaaS 资源映射到 AD 支持的影子帐户用户或包含它们的组。
-
启动 SAML tracer 浏览器扩展并捕获整个登录和注销流程。
-
使用表中为要测试的前端用户类型指定的属性登录 Workspace。
访客 Entra ID 用户登录: 您邀请到 Entra ID 租户的承包商用户作为访客用户,其电子邮件地址为
contractoruser@hotmail.co.uk
。当 Entra ID 提示时,输入访客用户的电子邮件地址。
或者
AD 支持的 Entra ID 用户/本机 Entra ID 用户登录: 这些 Entra ID 用户将具有
adbackeduser@yourforest.com
或nativeuser@yourforest.com
格式的 UPN。当 Entra ID 提示时,输入用户的 UPN。
-
检查断言是否仅包含用于身份验证的 cip_upn 属性,并且还包含 Workspace UI 所需的 displayName 属性。
-
检查用户是否可以在 UI 中看到所需的 DaaS 资源。
B2B SAML 解决方案故障排除
SAML 断言中发送了错误的 UPN
原因:这仅适用于从 Entra ID 租户 1 导入到 Entra ID 租户 2 的 B2B 帐户。当使用从其他 Entra ID 租户导入的 B2B 用户时,SAML 断言中可能会发送错误的 UPN。如果使用 user.userprincipalname
并且最终用户使用从另一个 Entra ID 租户导入的 B2B 用户登录,则 SAML 断言中将发送错误的 cip_upn 值。SAML 断言中使用的 cip_upn 值将来自包含 B2B 用户作为成员的源 Entra ID 租户。使用 user.localuserprincipalname
可确保 cip_upn 的值取自将 B2B 用户作为访客邀请的 Entra ID 租户。
缺少 cip_* 属性错误
原因 1:SAML 断言中不存在 SAML 属性,但 Citrix Cloud 配置为期望接收它。您未能从 SAML 属性部分中的 Citrix Cloud SAML 连接中删除不必要的 cip_* 属性。断开并重新连接 SAML 以删除对不必要的 cip_* 属性的引用。
原因 2:如果 Citrix Cloud 连接器在后端 AD 林中没有相应的 AD 影子帐户可供查找,也可能发生此错误。您可能已正确配置前端身份,但具有匹配 UPN 的后端 AD 影子帐户身份不存在或无法找到。
登录成功,但用户登录 Workspace 后未显示 DaaS 资源
原因:这很可能是由于前端到后端身份 UPN 映射不正确造成的。
确保前端和后端身份的 2 个 UPN 完全匹配,并且代表登录 Workspace 的同一最终用户。检查 DaaS 交付组是否包含到正确的 AD 影子帐户用户或包含它们的 AD 组的映射。
在启动 DaaS 资源期间,FAS SSON 到已加入 AD 域的 VDA 失败
尝试启动 DaaS 资源时,Workspace 最终用户会收到在 GINA 中输入其 Windows 凭据的提示。此外,FAS 服务器上的 Windows 事件日志中出现事件 ID 103。
[S103] 服务器 [CC:FASServer] 请求的 UPN [frontenduser@yourforest.com] SID S-1-5-21-000000000-0000000000-0000000001-0001
,但查找返回 SID S-1-5-21-000000000-0000000000-0000000001-0002
。[关联:cc#967472c8-4342-489b-9589-044a24ca57d1]
原因:您的 B2B SAML 部署存在“SID 不匹配问题”。您的前端身份包含来自与后端影子帐户 AD 林不同的 AD 林的 SID。 不要在 SAML 断言中发送 cip_sid。
当多个连接的 AD 林中存在相同的 UPN 后缀时,AD 支持的用户登录失败
Citrix Cloud 具有多个资源位置和连接器,这些连接器已加入不同的 AD 林。当使用从与影子帐户 AD 林不同的 AD 林导入到 Entra ID 的 AD 支持用户时,登录失败。
AD 林 1 同步到 Entra ID 以创建具有 UPN(例如 frontenduser@yourforest.com
)的前端用户。
AD 林 2 包含具有 UPN(例如 frontenduser@yourforest.com
)的后端影子帐户。
原因:您的 B2B SAML 部署存在“UPN 歧义问题”。Citrix Cloud 无法确定使用哪个连接器来查找用户的后端身份。 不要在 SAML 断言中发送 cip_sid。 您的用户的 UPN 存在于连接到 Citrix Cloud 的多个 AD 林中。
配置 Citrix Cloud SAML 连接
所有 Citrix 登录流程都需要使用 Workspace URL 或 Citrix Cloud GO URL 进行服务提供商发起。
从您的 Entra ID 门户获取 Entra ID SAML 应用程序 SAML 端点,以输入到 Citrix Cloud 中。
在 Citrix Cloud SAML 连接中使用的 Entra ID SAML 端点示例
在身份和访问管理 > 身份验证 > 添加身份提供程序 > SAML 中使用 SAML 连接的默认推荐值。
重要提示:
EntraID SSO 和注销 SAML 端点是相同的 URL。
Citrix Cloud 中的此字段 | 输入此值 |
---|---|
Entity ID | https://sts.windows.net/<yourEntraIDTenantID> |
Sign Authentication Request | Yes |
SSO Service URL | https://login.microsoftonline.com/<yourEntraIDTenantID>/saml2 |
SSO Binding Mechanism | HTTP Post |
SAML Response | Sign Either Response Or Assertion |
Authentication Context | Unspecified, Exact |
Logout URL | https://login.microsoftonline.com/<yourEntraIDTenantID>/saml2 |
Sign Logout Request | Yes |
SLO Binding Mechanism | HTTP Post |