PoC 指南:适用于使用 NetScaler 的 Citrix Virtual Apps and Desktops 的 Microsoft Azure Active Directory 联合身份验证
简介
使用云提供企业服务的情况继续增长。云服务继承了云基础架构中内置的优势,包括弹性、可扩展性和全球影响力。Azure Active Directory (AAD) 是Microsoft Azure 托管目录服务,它为企业提供同样的云优势。AAD 允许企业在云中托管员工身份,并安全地访问同样托管在云中或本地的服务。
Citrix Virtual Apps and Desktops 使用本地或云中托管的资源交付虚拟应用程序和桌面。NetScaler 提供对这些虚拟应用程序和桌面的安全远程访问,也可以在本地或云中托管。与 Citrix 联合身份验证服务一起,他们可以利用 AAD 对用户从任何地方访问 Citrix Virtual Apps and Desktops 进行身份验证。
概述
本指南演示了如何使用 SAML 对 NetScaler 的 Citrix Virtual Apps and Desktops 实施 Microsoft AAD 联合身份验证环境。AAD 充当身份提供程序 (IdP),而 NetScaler 则充当服务提供程序 (SP)。
它对某些组件的安装或配置进行假设:
- Active Directory 服务器安装在本地,您可以以域管理员身份登录。
- Azure 租户可以使用 P2 许可证,您可以以全局管理员身份登录。
- NetScaler 设备已安装并获得许可。此外,它还配置了 NetScaler Gateway 虚拟服务器,以提供对本地 Citrix Virtual Apps and Desktops 环境的访问。使用版本 13 版本 60 或更高版本。
- 已安装 Delivery Controller、StoreFront 和 VDA,并配置为为域用户交付虚拟应用程序或桌面。使用 2006 或更高版本。
- 虚拟机可用,或者其他服务器有足够的容量来安装 FAS。DDC、FAS 和 StoreFront 都安装在此 POC 的同一台服务器上。
- 远程客户端能够使用 Workspace 应用程序或浏览器启动虚拟应用程序或桌面。使用 Windows 版本 20.6.0.38 (2006) 或更高版本。
AD 和 AAD 配置
要配置 Active Directory (AD) 和 Azure Active Directory (AAD),请执行以下步骤:
AD
替代 UserPrincipalName (UPN) 后缀
- 登录您的 AD 域控制器。
- 打开 服务器管理器 > 工具 > Active Directory 域和信任
- 右键单击,选择 属性 ,然后输入与您的一个 AAD 域对应的用户的 UPN 后缀。
AD 用户
- 在 AD 域控制器上,打开 服务器管理器 > 工具 > Active Directory 用户和计算机。
- 右键单击并选择“新建”>“用户”,或编辑现有的
- 在属性 > 帐户下,将 UPN 设置 为新的后缀。
Microsoft Azure Active Directory 连接
Azure AD Connect 是将本地身份基础架构连接到 Microsoft Azure AD 的工具。它允许我们将 AD 用户复制到 AAD,并将 UserPrincipalName (UPN) 映射到我们的 AAD 域。
- 登录到 AD 域控制器或托管 Microsoft Azure Active Directory 连接进程的其他虚拟服务器。
- 从Microsoft 下载网站微 软 Azure Active Directory 连接 下载可执行文件并启动它。
- 欢迎页面上将提示您接受对虚拟机进行更改并接受许可协议。
- 系统会提示您以全球 AAD 管理员和域服务管理员身份登录。
- 要在单个 AD 虚拟机上安装,您可以按照快速设置进行操作。验证 UPN 后缀后,它会完全同步所有用户、组和联系人。
有关详细信息,请参阅 使用 Azure AD 连接快速设置 。
认证机构
对于此 POC,我们假设您在 AD DC 上安装了包括 Web 注册在内的证书颁发机构。如果未导航到服务 器管理器 > 添加角色 和功能,然后按照提示安装 Active Directory 证书服务。有关详细信息,请参阅 Microsoft 证书颁发机构安装 。
- 下次启动 MMC
- 选择 添加/删除管理单元 > 证书 > 计算机帐户 > 确定
- 右键单击 个人 > 所有任务 > 申请新证书
- 单击下一步并选择 Active Directory 注册策略
- 选择域控制器身份验证,然后单击注册
Azure Active Directory
- 以全局管理员身份登录 Azure 门户
- 导航到 Azure Active Directory > 企业应用程序
- 选择新应用程序
- 选择非图库应用程序
- 输入唯一名称,然后选择添加
- 选择 单点登录 > SAML ,然后选择铅笔图标以编辑基本 SAML 配置
- 在标识符字段中输入 NetScaler 网关虚拟服务器的 FQDN。
- 输入 FQDN,并在回复网址字段基本 SAM lauth
- 单击“保存”
- 捕获要在 NetScaler SAML 配置中输入的以下内容:
- 在 SAML 签名证书下-下载证书 (base64)
- 在设置 Citrix FAS-登录和注销 URL
- 选择“用户和组”>“添加用户”,然后选择现有用户或使用 AAD UPN 访问 Citrix Virtual Apps and Desktops 的组
NetScaler 配置
要配置 NetScaler,请执行以下步骤:
- 登录 NetScaler UI
- 导航到 流量管理 > SSL> 证书 > 所有证书 以验证您是否安装了域证书。在此 POC 示例中,我们使用了与 Active Directory 域对应的通配符证书。有关更多信息,请参阅 NetScaler SSL 证书 。
- 导航到 安全 > AAA-应用程序流量 > 虚拟服务器 ,然后选择添加
- 输入以下字段,然后单击“确定”:
- 名称-一个唯一的值
- IP 地址类型-不可寻址
- 选择无服务器证书,选择域证书,单击选择、绑定和继续
- 选择无身份验证策略,然后选择添加
- 输入名称,将操作类型设置为 SAML,然后选择添加操作
- 输入以下字段,然后单击“确定”:
- 名称-一个唯一的值
- 取消选择导入元数据
- 重定向 URL-粘贴从 AAD 配置复制的登录 URL
- 单一注销 URL-粘贴从 AAD 配置复制的注销 URL
- 注销绑定-重定向
- IdP 证书名称-选择添加,输入名称,选择证书文件名称 > 本地,然后选择从 AAD 下载的 SAML 签名证书 (base64)
- 签名证书名称-选择 ADC 用于对 AAD 的请求进行签名的域证书。
- 问题名称-输入 NetScaler 网关的 FQDN
- 选择创建以创建操作
- 为表达式输入 true
- 再次选择创建以创建策略
- 选择绑定可将策略绑定到虚拟服务器
- 单击继续完成身份验证虚拟服务器的配置
- 接下来导航到 NetScaler Gateway > 虚拟服务器,然后编辑相关虚拟服务器
- 如果您在基本身份验证下绑定了现有基本策略,请选中该策略,然后选择取消绑定、确认和关闭。
- 从右侧的菜单中选择身份验证配置文件,然后选择添加。输入名称,然后单击身份验证虚拟服务器下的向右箭头。选中策略身份验证虚拟服务器,然后单击创建。
- 单击“确定”以完成将 NetScaler AAA 虚拟服务器绑定到网关虚拟服务器。
- 导航到 NetScaler Gateway > 策略 > 会话,然后使用“Citrix Receiver”表达式选择 Workspace 应用程序策略,然后进行以下更改:
- 在“已发布的应用程序”下,清除“单点登录域”字段,然后清除
- 在凭据索引下拉列表的客户端体验下,选择辅助
- 使用 “Citrix Receiver”).NOT 表达式对 Workspace 的 Web 策略重复这些步骤
有关更多信息,请参阅 NetScaler 。
Citrix Virtual Apps and Desktops 配置
要将 Citrix Virtual Apps and Desktops 组件与 FAS 集成,请执行以下步骤:
StoreFront
在 StoreFront 上启用 FAS
- 以管理员身份打开 PowerShell,然后运行:
Get-Module "Citrix.StoreFront.*" -ListAvailable | Import-Module
$StoreVirtualPath = "/Citrix/Store"
$store = Get-STFStoreService -VirtualPath $StoreVirtualPath $auth = Get-STFAuthenticationService -StoreService $store
Set-STFClaimsFactoryNames -AuthenticationService $auth -ClaimsFactoryName "FASClaimsFactory"
Set-STFStoreLaunchOptions -StoreService $store -VdaLogonDataProvider "FASLogonDataProvider"
有关详细信息 ,请参阅在 StoreFront 应用商店中启用 FAS 插件 。
为 NetScaler Gateway 配置 StoreFront
- 登录 StoreFront 虚拟机(该虚拟机也托管 FAS,以及 POC 中的 DDC),然后启动 StoreFront GUI
- 从右侧的菜单中选择管理身份验证方法
- 从 NetScaler Gateway 中选择直通
- 选择齿轮旁边的向下箭头,然后选择配置委派身份验证
- 选中向 NetScaler Gateway 完全委派凭据验证,然后单击两次确定
- 从右侧菜单中选择 “管理 Citrix 网关”
- 编辑相关的 NetScaler Gateway 条目
- 在身份验证设置下,如果尚未配置回调 URL,则必须配置回调 URL。通常,您可以更新内部 DNS,或者对于单个 StoreFront 实例,更新本地主机文件以将网关虚拟服务器的私有 IP 映射到 FQDN
Delivery Controller
接下来,将桌面 Delivery Controller 配置为信任可以连接到它的 StoreFront 服务器。
- 以管理员身份打开 PowerShell,然后运行
-
Add-PSSnapin Citrix*
(前提是您没有加载所有 Citrix 管理单元)有关详细信息,请参阅 安装和设置 FAS Set-BrokerSite -TrustRequestsSentToTheXmlServicePort $true
-
有关详细信息 ,请参阅配置Delivery Controller 。
Citrix 联合身份验证服务配
要配置 FAS,请执行以下步骤:
- 在 FAS 虚拟机上加载 Citrix Virtual Apps and Desktops ISO 映像
- 选择 FAS 开始安装
- 阅读 Citrix 许可协议,然后单击下一步
- 选择安装目录,然后单击下一步
- 更新主机防火墙以允许端口 80 并单击下一步
- 点击 完成
- 查看您所做的设置,然后单击安装
- 安装成功后再次单击“完成”。 ]
- 在“C:\Program Files\ Citrix\ 联合身份验证服务”下共享 PolicyDefinions 目录内容和“en-us”子目录
- 在“C:\Program Files\Citrix\Federated Authentication Service”下,将其分别粘贴到 C:\Windows\PolicyDefinions 和 ..\en-US 下的 Domain Controller。
文件包括:
- PolicyDefinitions\CitrixBase.admx
- PolicyDefinitions\CitrixFederatedAuthenticationService.admx
- PolicyDefinitions\en-US\CitrixBase.adml
- PolicyDefinitions\CitrixFederatedAuthenticationService.adml
- 打开 服务器管理器 > 工具 > 组策略管理
- a. 右键单击可创建新的,或者编辑应用于所有相关 VDA 和交付控制器的现有组策略对象。(我们对 POC 使用默认域控制器策略。对于生产,您通常需要创建新策略,或者编辑另一个相关策略。)
* b. 导航到 计算机配置 > 策略 > 管理模板 > Citrix 组件 > 身份验证
* c. 右键单击联合身份验证服务
* d。选择编辑
* e。选择显示 DNS
* f. 输入 FAS 服务器的 FQDN,单击确定两次,然后关闭组策略管理编辑器
* g。导航到每个Delivery Controller 和 VDA),以管理员身份打开 MS-DOS 提示符,然后运行
gpupdate /force
* h。要验证它是否已应用,请打开 regedit.exe,然后导航到:/Computer\HKLM\SOFTWARE\Policies\Citrix\Authentication\UserCredentialService\Addresses Address1 条目设置为通过 GPO 应用的 FQDN。如果没有显示,则可能需要重新启动相应的虚拟机。 * i. 接下来返回 FAS 虚拟机开始安装服务。(我们在 POC 的同一虚拟机上托管 FAS、StoreFront 和 DDC。对于生产,您通常会将它们托管在不同的虚拟机上,以提高可扩展性和可支持性。) * j. 运行 Citrix 联合身份验证服务程序。按顺序选择五个步骤中的每个步骤,然后按照说明操作: * i. 部署证书模板 * ii. 设置证书颁发机构 * iii. 授权此服务-对于此步骤,返回 CA 以发出待处理的请求。在此 POC 示例中,CA 托管在域控制器上。 * iv. 创建规则-此处指定 CA 和已配置的证书。还可以筛选 VDA 以及允许使用 FAS 服务的用户。 * v.(连接到 Citrix Cloud-在本指南中,我们使用本地 Citrix Virtual Apps and Desktops)
- a. 右键单击可创建新的,或者编辑应用于所有相关 VDA 和交付控制器的现有组策略对象。(我们对 POC 使用默认域控制器策略。对于生产,您通常需要创建新策略,或者编辑另一个相关策略。)
* b. 导航到 计算机配置 > 策略 > 管理模板 > Citrix 组件 > 身份验证
* c. 右键单击联合身份验证服务
* d。选择编辑
* e。选择显示 DNS
* f. 输入 FAS 服务器的 FQDN,单击确定两次,然后关闭组策略管理编辑器
* g。导航到每个Delivery Controller 和 VDA),以管理员身份打开 MS-DOS 提示符,然后运行
有关更多信息 ,请参阅 FAS 文档 。
Citrix Workspace 客户端验
要验证 POC,请执行以下步骤:
适用于 Web 的 Workspace
- 打开浏览器,然后导航到 NetScaler 管理的域 FQDN。请注意,NetScaler Gateway 将重定向到 AAD。
- 使用配置为 FAS 环境一部分的用户的 UPN
- 验证用户的虚拟应用程序和桌面是否已枚举,并在通过 AAD 用户对象 Logged in 使用 UPN 后启动
总结
数十年来,Citrix Virtual Apps and Desktops 一直是一项弹性技术。云托管身份为企业提供了更可靠的服务。实施本指南中描述的 POC 演示了如何通过将 AAD 集成为 IdP 和 NetScaler 作为服务提供商来实现这一目标。要了解有关 Citrix 定价和包装的更多信息,请访问 Citrix 网站 C itrix.com;要了解有关 Citrix 技术能力的更多信息,请访问 Cit rix TechZone。