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

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

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

-
从“通过以下方式验证密码”下拉列表中,选择:
- 活动目录 - 要求 Windows 验证活动目录中的凭据
- 交付控制器 - 要求配置的 Delivery Controller™ 验证凭据。

-
如果您选择了“交付控制器”,则选择“配置”。在“配置交付控制器”屏幕中,添加一个或多个交付控制器以验证用户凭据,然后单击“确定”。

-
选择“确定”。
PowerShell
要获取密码验证方式,请使用 cmdlet Get-STFExplicitAuthenticator。
要通过交付控制器执行密码验证,请使用 cmdlet Set-STFExplicitAuthenticator 将验证器设置为 xmlServiceAuthenticator。要设置用于验证凭据的交付控制器,请使用 cmdlet Enable-STFXmlServiceAuthentication
单点登录到 VDA
当用户启动资源时,StoreFront 会将用户用于登录应用商店的凭据传递给 VDA 以进行单点登录。
如果为应用商店启用了 Federated Authentication Service (FAS),则 StoreFront 会联系 FAS 服务器以提供证书,从而实现对应用商店的单点登录。此证书将传递给 VDA,而不是凭据。如果 StoreFront 无法联系 FAS 服务器,则无法对 VDA 进行单点登录。
自定义登录屏幕
登录屏幕是根据模板生成的,通常位于 C:\inetpub\wwwroot\Citrix\[Store name]Auth\App_Data\Templates\UsernamePassword.tfrm。该模板使用 Forms Template Language 定义。
以下示例添加了标题,并阻止 Windows 版 Citrix Workspace 应用程序缓存密码:
标题文本
默认情况下,当用户登录应用商店时,登录对话框上不显示标题文本。您可以显示文本“请登录”或编写自己的自定义消息:
-
使用文本编辑器打开身份验证服务的
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 是区域设置标识符。
阻止适用于 Windows 的 Citrix Workspace 应用程序缓存密码和用户名
默认情况下,适用于 Windows 的 Citrix Workspace 应用程序会在用户登录 StoreFront 商店时存储其密码。要阻止适用于 Windows 的 Citrix Workspace 应用程序缓存用户密码,请编辑身份验证服务的文件。
-
Use a text editor to open the file 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-->用户每次登录使用此身份验证服务的商店时都必须输入其密码。
默认情况下,适用于 Windows 的 Citrix Workspace 应用程序会自动填充上次输入的用户名。要禁止填充用户名字段,或者要了解禁止缓存密码的替代机制,请参阅阻止适用于 Windows 的 Citrix Workspace 应用程序缓存密码和用户名。
通过 Citrix 网关 进行远程访问
您可以配置 Citrix Gateway,以便用户使用其域用户名和密码(可选地,还可以使用第二个因素)登录到网关。这些凭据将传递到 StoreFront 以登录到商店。要为 LDAP 用户名和密码身份验证配置 Citrix Gateway,请参阅NetScaler 文档 - LDAP 身份验证。要配置 StoreFront,请参阅从 Citrix Gateway 直通。