PoC 指南:适用于使用 NetScaler 的 Citrix Virtual Apps and Desktops 的 Microsoft Azure Active Directory 联合身份验证
简介
使用云提供企业服务的情况继续增长。云服务继承了云基础架构中内置的优势,包括弹性、可扩展性和全球影响力。Azure Active Directory (AAD) 是Microsoft Azure 托管目录服务,它为企业提供同样的云优势。AAD 允许企业在云中托管员工身份,并安全地访问同样托管在云中或本地的服务。
Citrix虚拟应用程序和桌面使用本地或云中托管的资源交付虚拟应用程序和桌面。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),并在回复网址字段基本山姆
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网关中选择直通
- 选择齿轮旁边的向下箭头,然后选择配置委派身份验证
- 选中向 NetScaler Gateway 完全委派凭据验证,然后单击两次确定
- 从右侧菜单中选择 “管理 Citrix 网关”
- 编辑相关的NetScaler网关条目
- 在身份验证设置下,如果尚未配置回调 URL,则必须配置回调 URL。通常,您可以更新内部 DNS,或者对于单个 StoreFront 实例,更新本地主机文件以将网关虚拟服务器的私有 IP 映射到 FQDN
Delivery Controller
接下来,将桌面 Delivery Controller 配置为信任可以连接到它的 StoreFront 服务器。
- 以管理员身份打开 PowerShell,然后运行
Add-PSSnapin Citrix*
(前提是您没有加载所有 Citrix 管理单元)有关详细信息,请参阅安装和设置 FASSet-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 使用默认域控制器策略。对于生产,您通常需要创建新策略,或者编辑另一个相关策略。)
有关更多信息,请参阅 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 网站 Citrix.com;要了解有关 Citrix 技术能力的更多信息,请访问 Citrix TechZone。