Active Directory 用户名和密码身份验证
系统会提示用户输入其 Active Directory 用户名和密码。
。
如果用户的密码已过期或即将过期,则根据配置,用户可能会获得更改密码的选项。
要在使用 Citrix Workspace 应用程序时为应用商店启用或禁用用户名和密码身份验证,请在“身份验证方法”窗口中选中或取消选中“Active Directory 用户名和密码”。
默认情况下,为应用商店启用用户名和密码身份验证也会为使用 Web 浏览器的用户启用该应用商店的所有网站的此功能。您可以在“[管理网站身份验证方法]”选项卡上禁用特定网站的用户名和密码身份验证。
配置受信任的用户域
您可以限制使用显式域凭据登录的用户对应用商店的访问,无论是直接登录还是通过 Citrix Gateway 的直通身份验证登录。
-
在 Citrix StoreFront 管理控制台的左窗格中选择“应用商店”节点,然后在结果窗格中选择相应的身份验证方法。在“操作”窗格中,单击“管理身份验证方法”。
-
在“用户名和密码 > 设置”列表中,选择“配置受信任域”。
-
选择“仅受信任域”,然后单击“添加”以输入受信任域的名称。在该域中拥有帐户的用户能够登录到使用身份验证服务的所有应用商店。要修改域名,请在“受信任域”列表中选择该条目,然后单击“编辑”。要停止用户帐户对某个域中的应用商店的访问,请在列表中选择该域,然后单击“删除”。
指定域名的方式决定了用户必须输入其凭据的格式。如果您希望用户以域用户名格式输入其凭据,请将 NetBIOS 名称添加到列表中。要要求用户以用户主体名称格式输入其凭据,请将完全限定域名添加到列表中。如果您希望用户能够以域用户名格式和用户主体名称格式输入其凭据,则必须将 NetBIOS 名称和完全限定域名都添加到列表中。
-
如果配置了多个受信任域,请从“默认域”列表中选择用户登录时默认选中的域。
-
如果您希望在登录页面上列出受信任域,请选中“在登录页面中显示域列表”复选框。

PowerShell
要获取已配置域的列表,请使用 cmdlet Get-STFExplicitCommonOptions。
要更新受信任域,请使用 cmdlet Set-STFExplicitCommonOptions。
允许用户更改其密码
- 您可以允许用户随时更改其密码。或者,您可以将密码更改限制为密码已过期的用户。这意味着您可以确保用户永远不会因密码过期而无法访问其桌面和应用程序。
以下客户端提供密码更改功能:
| Citrix Workspace 应用程序 | 如果在 StoreFront 上启用,用户可以更改已过期的密码 | 用户会收到密码即将过期的通知 | 如果在 StoreFront 上启用,用户可以在密码过期前更改密码 |
|---|---|---|---|
| Windows | 是 | ||
| Mac | 是 | ||
| Android | |||
| iOS | |||
| Linux | 是 | ||
| Web | 是 | 是 | 是 |
默认配置会阻止 Citrix Workspace 应用程序和 Web 浏览器用户更改其密码,即使密码已过期。如果您决定启用此功能,请确保包含您的服务器的域的策略不会阻止用户更改其密码。允许用户更改其密码会将敏感的安全功能暴露给任何可以访问使用身份验证服务的任何应用商店的人。如果您的组织有安全策略规定用户密码更改功能仅供内部使用,请确保任何应用商店都无法从公司网络外部访问。
如果您允许用户随时更改其密码,则即将过期的本地用户在登录时会看到警告。默认情况下,用户的通知期限由适用的 Windows 策略设置决定。或者,您可以配置自定义通知期限。
-
在“管理身份验证方法”窗口中,从“Active Directory 用户名和密码”>“设置”下拉菜单中,选择“管理密码选项”。
-
要允许用户更改密码,请选中“允许用户更改密码”复选框。
注意:
如果您未选择此选项,则必须自行安排支持因密码过期而无法访问其桌面和应用程序的用户。
-
选择是允许用户仅在密码过期时更改密码,还是随时更改密码。
-
选择是否在用户密码过期前提醒他们。您可以从以下选项中进行选择:

注意
注意 1:
确保您的 StoreFront 服务器上有足够的磁盘空间来存储所有用户的配置文件。要检查用户的密码是否即将过期,StoreFront 会在该服务器上为该用户创建本地配置文件。StoreFront 必须能够联系域控制器才能更改用户的密码。
注意 2: 如果您启用安全策略“网络访问:限制允许对 SAM 进行远程调用的客户端”,则必须包含任何需要更改其密码的用户。
注意 3:
如果您随时启用或禁用密码更改,这也会影响 Citrix Gateway 直通身份验证的“管理密码选项”下的设置。
PowerShell
要获取受信任域的列表,请使用 cmdlet Get-STFExplicitCommonOptions。
要更新受信任域,请使用 cmdlet Set-STFExplicitCommonOptions。
密码验证
通常,StoreFront 会要求 Windows 验证 Active Directory 中的凭据。这要求 Windows 服务器与用户位于同一域中,或者两个域之间存在信任关系。如果无法建立 Active Directory 信任关系,您可以将 StoreFront 配置为使用 Citrix Virtual Apps and Desktops 交付控制器来验证凭据。这也会影响 HTTP Basic 和 Gateway 直通身份验证。
要配置 StoreFront 验证密码的方式:
-
在管理身份验证方法窗口中,从用户名和密码 > 设置下拉菜单中,选择配置密码验证。

-
从通过以下方式验证密码下拉菜单中,选择:
- Active Directory - 要求 Windows 在 Active Directory 中验证凭据
- Delivery Controllers - 要求配置的 Delivery Controller™ 验证凭据。

-
如果选择了 Delivery Controllers,则选择配置。在配置 Delivery Controllers 屏幕中,添加一个或多个 Delivery Controllers 以验证用户凭据,然后单击确定。

-
选择确定。
PowerShell
要获取密码的验证方式,请使用 cmdlet Get-STFExplicitAuthenticator。
要通过 Delivery Controllers 执行密码验证,请使用 cmdlet Set-STFExplicitAuthenticator 将验证器设置为 xmlServiceAuthenticator。要设置用于验证凭据的 Delivery Controller,请使用 cmdlet Enable-STFXmlServiceAuthentication
单点登录到 VDA
当用户启动资源时,StoreFront 会将用户用于登录到应用商店的凭据传递给 VDA 以进行单点登录。
如果为应用商店启用了 联合身份验证服务 (FAS),则 StoreFront 会联系 FAS 服务器以提供证书,从而实现对应用商店的单点登录。此证书将传递给 VDA,而不是凭据。如果 StoreFront 无法联系 FAS 服务器,则无法对 VDA 进行单点登录。
自定义登录屏幕
登录屏幕是根据模板生成的,该模板通常位于 C:\inetpub\wwwroot\Citrix\[Store name]Auth\App_Data\Templates\UsernamePassword.tfrm。该模板是使用 Forms Template Language 定义的。
以下示例添加了标题并阻止 Citrix Workspace app for Windows 缓存密码:
标题文本
当用户登录到应用商店时,默认情况下登录对话框上不显示标题文本。您可以显示文本“请登录”或编写自己的自定义消息:
-
使用文本编辑器打开身份验证服务的
UsernamePassword.tfrm文件。 -
在文件中找到以下行。
@* @Heading("ExplicitAuth:AuthenticateHeadingText") *@ <!--NeedCopy--> -
通过删除开头和结尾的
@*和*@来取消注释该语句。@Heading("ExplicitAuth:AuthenticateHeadingText") <!--NeedCopy-->Citrix Workspace app 用户在登录使用此身份验证服务的应用商店时,会看到默认标题文本“请登录”或此文本的相应本地化版本。
-
要修改标题文本,请使用文本编辑器打开身份验证服务的
ExplicitFormsCommon.xx.resx文件,该文件通常位于C:\inetpub\wwwroot\Citrix\[Store name]Auth\App_Data\resources\目录中。 -
在文件中找到以下元素。编辑
<value>元素中包含的文本,以修改用户在访问使用此身份验证服务的应用商店时在登录对话框上看到的标题文本。<data name="AuthenticateHeadingText" xml:space="preserve"> <value>My Company Name</value> </data> <!--NeedCopy-->要修改其他区域设置中用户的登录对话框标题文本,请编辑本地化文件 ExplicitAuth.languagecode.resx,其中 languagecode 是区域设置标识符。
阻止 Citrix Workspace app for Windows 缓存密码和用户名
默认情况下,Citrix Workspace app for Windows 在用户登录到 StoreFront 应用商店时会存储用户的密码。要阻止 Citrix Workspace app for Windows 缓存用户密码,请编辑身份验证服务的文件。
-
使用文本编辑器打开文件
inetpub\wwwroot\Citrix\[Store name]Auth\App_Data\Templates\UsernamePassword.tfrm。 -
在文件中找到以下行。
@SaveCredential(id: @GetTextValue("saveCredentialsId"), labelKey: "ExplicitFormsCommon:SaveCredentialsLabel", initiallyChecked: ControlValue("SaveCredentials")) <!--NeedCopy--> -
按如下所示注释该语句。
<!-- @SaveCredential(id: @GetTextValue("saveCredentialsId"), labelKey: "ExplicitFormsCommon:SaveCredentialsLabel", initiallyChecked: ControlValue("SaveCredentials")) --> <!--NeedCopy-->用户每次登录到使用此身份验证服务的应用商店时都必须输入其密码。
默认情况下,Citrix Workspace app for Windows 会自动填充上次输入的用户名。要禁止填充用户名字段,或了解禁止缓存密码的替代机制,请参阅阻止 Citrix Workspace app for Windows 缓存密码和用户名。
通过 Citrix Gateway 进行远程访问
您可以配置 Citrix Gateway,以便用户使用其域用户名和密码(可选地使用第二个因素)登录到网关。这些凭据将传递给 StoreFront 以登录到应用商店。要为 LDAP 用户名和密码身份验证配置 Citrix Gateway,请参阅 NetScaler 文档 - LDAP 身份验证。要配置 StoreFront,请参阅从 Citrix Gateway 直通。