Active Directory 用户名和密码身份验证

Last published : Nov 13, 2026
系统会提示用户输入其 Active Directory 用户名和密码。
用户名和密码身份验证屏幕截图(/en-us/storefront/2507-ltsr/media/stores/authentication/logon-username-password.png)。
如果用户的密码已过期或即将过期,则根据配置,用户可能会获得更改密码的选项。
要在使用 Citrix Workspace 应用程序时为应用商店启用或禁用用户名和密码身份验证,请在 身份验证方法 窗口中选中或取消选中 Active Directory 用户名和密码。
默认情况下,为应用商店启用用户名和密码身份验证也会为使用 Web 浏览器的用户启用该应用商店的所有网站的用户名和密码身份验证。您可以在 管理网站身份验证方法选项卡 上为特定网站禁用用户名和密码身份验证。

配置受信任的用户域

您可以限制使用显式域凭据登录的用户对应用商店的访问,无论是直接登录还是通过 Citrix Gateway 使用直通身份验证登录。
  1. 在 Citrix StoreFront 管理控制台的左侧窗格中选择“应用商店”节点,然后在结果窗格中选择相应的身份验证方法。在“操作”窗格中,单击管理身份验证方法。
  2. 从用户名和密码 > 设置列表中,选择配置受信任域。
  3. 选择仅受信任域,然后单击添加以输入受信任域的名称。在该域中拥有帐户的用户可以登录使用身份验证服务的所有应用商店。要修改域名,请在“受信任域”列表中选择该条目,然后单击编辑。要停止域中用户帐户对应用商店的访问,请在列表中选择该域,然后单击删除。
    指定域名的方式决定了用户输入其凭据的格式。如果您希望用户以域用户名格式输入其凭据,请将 NetBIOS 名称添加到列表中。要要求用户以用户主体名称格式输入其凭据,请将完全限定域名添加到列表中。如果您希望用户能够以域用户名格式和用户主体名称格式输入其凭据,则必须将 NetBIOS 名称和完全限定域名都添加到列表中。
  4. 如果您配置了多个受信任域,请从“默认域”列表中选择用户登录时默认选中的域。
  5. 如果要在登录页面上列出受信任域,请选中“在登录页面中显示域列表”复选框。
受信任域屏幕截图(/en-us/storefront/2507-ltsr/media/stores/authentication/authentication-trusted-domain.png)

PowerShell

要获取配置的域列表,请使用 cmdlet Get-STFExplicitCommonOptions。
要更新受信任的域,请使用 cmdlet Set-STFExplicitCommonOptions。

允许用户更改密码

您可以允许用户随时更改密码。或者,您可以将密码更改限制为密码已过期的用户。这意味着您可以确保用户永远不会因密码过期而无法访问其桌面和应用程序。
密码更改功能在以下客户端中可用:
Citrix Workspace 应用程序 如果 StoreFront 上启用了此功能,用户可以更改已过期的密码 用户会收到密码即将过期的通知 如果 StoreFront 上启用了此功能,用户可以在密码过期前更改密码
视窗 是
Mac 是
安卓
iOS
林纳克斯 是
Web 是 是 是
默认配置会阻止 Citrix Workspace 应用程序和 Web 浏览器用户更改其密码,即使密码已过期。如果您决定启用此功能,请确保包含服务器的域的策略不会阻止用户更改其密码。允许用户更改密码会将敏感安全功能暴露给任何可以访问使用身份验证服务的任何应用商店的人员。如果您的组织有安全策略,规定用户密码更改功能仅供内部使用,请确保任何应用商店都无法从公司网络外部访问。
如果您允许用户随时更改密码,则密码即将过期的本地用户在登录时会收到警告。默认情况下,用户的通知期限由适用的 Windows 策略设置决定。或者,您可以配置自定义通知期限。
  1. 在“管理身份验证方法”窗口中,从“Active Directory 用户名和密码”>“设置”下拉菜单中,选择“管理密码选项”
  2. 要允许用户更改密码,请选中“允许用户更改密码”复选框。
    注意:
    如果您不选择此选项,则必须自行安排支持因密码过期而无法访问其桌面和应用程序的用户。
  3. 选择是允许用户仅在密码过期时更改密码,还是随时更改密码。
  4. 选择是否在用户密码过期前提醒他们。您可以选择以下选项:
    • 不提醒 - UI 不显示密码过期提醒。它只在密码过期时通知用户。
    • 使用 Active Directory 组策略中的提醒设置 - 登录后,如果用户的密码将在 组策略 中配置的天数内过期,用户界面会发出通知。用户可以选择更改密码。
      注意:
      StoreFront 不考虑 精细密码策略。因此,如果您正在使用精细密码策略,则不应选择此选项。
    • 使用自定义提醒设置 - 登录后,如果用户的密码将在给定天数内过期,用户界面会通知用户。用户可以选择更改密码。
管理密码选项的屏幕截图
注意
注意 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 基本身份验证和网关直通身份验证。
要配置 StoreFront 如何验证密码:
  1. 在管理身份验证方法窗口中,从用户名和密码 > 设置下拉菜单中,选择配置密码验证。
    管理身份验证方法对话框
  2. 从通过以下方式验证密码下拉列表中,选择:
    • Active Directory - 要求 Windows 在 Active Directory 中验证凭据
    • Delivery Controllers - 要求配置的 Delivery Controller™ 验证凭据。
    配置密码验证面板
  3. 如果选择了Delivery Controllers,则选择配置。在配置 Delivery Controllers屏幕中,添加一个或多个Delivery Controllers以验证用户凭据,然后单击确定。
    编辑 Delivery Controller 面板
  4. 选择“确定”。

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 应用程序缓存密码:

标题文本

当用户登录到应用商店时,默认情况下登录对话框上不显示标题文本。您可以显示文本“请登录”或编写自己的自定义消息:
  1. 使用文本编辑器打开身份验证服务的 UsernamePassword.tfrm 文件。
  2. 在文件中找到以下行。
    @* @Heading("ExplicitAuth:AuthenticateHeadingText") *@
  3. 通过删除前导 @* 和尾随 *@ 来取消注释该语句。
    @Heading("ExplicitAuth:AuthenticateHeadingText")
    当 Citrix Workspace 应用程序用户登录到使用此身份验证服务的应用商店时,他们会看到默认标题文本“请登录”或此文本的相应本地化版本。
  4. 要修改标题文本,请使用文本编辑器打开身份验证服务的 ExplicitFormsCommon.xx.resx 文件,该文件通常位于 C:\inetpub\wwwroot\Citrix\[Store name]Auth\App_Data\resources\ 目录中。
  5. 在文件中找到以下元素。编辑 <value> 元素中包含的文本,以修改用户在访问使用此身份验证服务的应用商店时在登录对话框上看到的标题文本。
    <data name="AuthenticateHeadingText" xml:space="preserve">
        <value>My Company Name</value>
    </data>
    要修改其他区域设置中用户的登录对话框标题文本,请编辑本地化文件 ExplicitAuth.languagecode.resx,其中 languagecode 是区域设置标识符。

阻止适用于 Windows 的 Citrix Workspace 应用程序缓存密码和用户名

默认情况下,当用户登录到 StoreFront 应用商店时,适用于 Windows 的 Citrix Workspace 应用程序会存储用户的密码。要阻止适用于 Windows 的 Citrix Workspace 应用程序缓存用户的密码,请编辑身份验证服务的文件。
  1. 使用文本编辑器打开文件 inetpub\wwwroot\Citrix\\Auth\App_Data\Templates\UsernamePassword.tfrm。
  2. 在文件中找到以下行。
    @SaveCredential(id: @GetTextValue("saveCredentialsId"), labelKey: "ExplicitFormsCommon:SaveCredentialsLabel", initiallyChecked: ControlValue("SaveCredentials"))
  3. 按如下所示注释该语句。
    <!-- @SaveCredential(id: @GetTextValue("saveCredentialsId"), labelKey: "ExplicitFormsCommon:SaveCredentialsLabel", initiallyChecked: ControlValue("SaveCredentials")) -->
    用户每次登录使用此身份验证服务的商店时,都必须输入其密码。
    默认情况下,Citrix Workspace app for Windows 会自动填充上次输入的用户名。要阻止填充用户名字段,或了解阻止缓存密码的替代机制,请参阅 阻止 Citrix Workspace app for Windows 缓存密码和用户名。

通过 Citrix Gateway 进行远程访问

您可以配置您的 Citrix Gateway,以便用户使用其域用户名和密码(可选地使用第二个因素)登录到网关。这些凭据会传递到 StoreFront 以登录到商店。要为 LDAP 用户名和密码身份验证配置您的 Citrix Gateway,请参阅 NetScaler 文档 - LDAP 身份验证。要配置 StoreFront,请参阅 从 Citrix Gateway 直通。