解决 Windows 登录问题
本文介绍了当用户使用证书或智能卡(或两者)登录时 Windows 提供的日志和错误消息。这些日志提供了可用于排查身份验证失败的信息。
-
证书和公钥基础设施
-
Windows Active Directory 维护多个证书存储,用于管理登录用户的证书。
-
NTAuth 证书存储:要向 Windows 进行身份验证,直接颁发用户证书(即不支持链式)的证书颁发机构必须放置在 NTAuth 存储中。要查看这些证书,请在 certutil 程序中输入:
certutil –viewstore –enterprise NTAuth - 根证书和中间证书存储:通常,证书登录系统只能提供单个证书,因此如果使用证书链,则所有计算机上的中间证书存储必须包含这些证书。根证书必须位于受信任的根存储中,倒数第二个证书必须位于 NTAuth 存储中。
- 登录证书扩展和组策略:可以将 Windows 配置为强制验证 EKU 和其他证书策略。请参阅 Microsoft 文档:https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ff404287(v=ws.10)。
| 注册表策略 | 描述 |
|---|---|
| AllowCertificatesWithNoEKU | 禁用时,证书必须包含智能卡登录扩展密钥用法 (EKU)。 |
-
AllowSignatureOnlyKeys 默认情况下,Windows 会筛选掉不允许 RSA 解密的证书私钥。此选项会覆盖该筛选器。 AllowTimeInvalidCertificates 默认情况下,Windows 会筛选掉已过期的证书。此选项会覆盖该筛选器。 EnumerateECCCerts 启用椭圆曲线身份验证。 X509HintsNeeded 如果证书不包含唯一的用户主体名称 (UPN),或者存在歧义,此选项允许用户手动指定其 Windows 登录帐户。 UseCachedCRLOnlyAnd, IgnoreRevocationUnknownErrors 禁用吊销检查(在域控制器上设置)。 - 域控制器证书:要对 Kerberos 连接进行身份验证,所有服务器都必须具有相应的“域控制器”证书。可以使用“本地计算机证书个人存储”MMC 管理单元菜单请求这些证书。
UPN 名称和证书映射
建议用户证书在主题备用名称扩展中包含唯一的用户主体名称 (UPN)。
Active Directory 中的 UPN 名称
默认情况下,Active Directory 中的每个用户都具有基于模式 <samUsername>@<domainNetBios> 和 <samUsername>@<domainFQDN> 的隐式 UPN。可用的域和 FQDN 包含在林的 RootDSE 条目中。单个域可以在 RootDSE 中注册多个 FQDN 地址。
此外,Active Directory 中的每个用户都具有显式 UPN 和 altUserPrincipalNames。这些是指定用户 UPN 的 LDAP 条目。
当按 UPN 搜索用户时,Windows 首先在当前域(基于查找 UPN 的进程的身份)中查找显式 UPN,然后查找备用 UPN。如果没有匹配项,它会查找隐式 UPN,这可能会解析到林中的不同域。
证书映射服务
如果证书不包含显式 UPN,Active Directory 可以选择在“x509certificate”属性中存储每个用途的精确公共证书。要将此类证书解析为用户,计算机可以直接查询此属性(默认情况下,在单个域中)。
提供了一个选项,允许用户指定一个用户帐户,以加快此搜索速度,并允许在跨域环境中使用此功能。
如果林中有多个域,并且用户未明确指定域,则 Active Directory rootDSE 会指定证书映射服务的位置。该服务位于全局编录计算机上,并具有林中所有 x509certificate 属性的缓存视图。此计算机可用于仅基于证书高效地查找任何域中的用户帐户。
控制域控制器登录选择
当环境中包含多个域控制器时,查看并限制用于身份验证的域控制器非常有用,以便可以启用和检索日志。
控制域控制器选择
要强制 Windows 使用特定的 Windows 域控制器进行登录,您可以通过配置 lmhosts 文件来显式设置 Windows 计算机使用的域控制器列表:\Windows\System32\drivers\etc\lmhosts。
通常在该位置有一个名为 “lmhosts.sam” 的示例文件。只需包含一行:
1.2.3.4 dcnetbiosname #PRE #DOM:mydomai
其中 “1.2.3.4” 是 mydomain 域中名为 dcnetbiosname 的域控制器的 IP 地址。
重启后,Windows 计算机将使用该信息登录到 mydomain。调试完成后,必须还原此配置。
识别正在使用的域控制器
登录时,Windows 会设置一个 MSDOS 环境变量,其中包含登录用户的域控制器。要查看此信息,请使用命令启动命令提示符:echo %LOGONSERVER%。
与身份验证相关的日志存储在此命令返回的计算机上。
启用账户审核事件
默认情况下,Windows 域控制器不启用完整的账户审核日志。这可以通过组策略编辑器中安全设置中的审核策略进行控制。要打开组策略编辑器,请在域控制器上运行 gpedit.msc。启用审核策略后,域控制器会在安全日志中生成额外的事件日志信息。

证书验证日志
检查证书有效性
- 如果智能卡证书导出为 DER 证书(无需私钥),您可以使用以下命令对其进行验证:**certutil –verify user.cer**
- ### 启用 CAPI 日志记录
在域控制器和用户计算机上,打开事件查看器并为 Microsoft/Windows/CAPI2/Operational Logs 启用日志记录。
-
在域控制器和 VDA 计算机上,打开事件查看器并导航到 应用程序和服务日志 > Microsoft > Windows > CAPI2 > 操作。右键单击操作并选择启用日志。
-
此外,使用注册表值微调 CAPI 日志记录,注册表值位于:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\crypt32。以下值默认不存在。您必须创建它们。如果要恢复默认 CAPI2 日志记录设置,请删除这些值。
| 值 | 描述 |
|---|---|
| DiagLevel (DWORD) | 详细级别(0 到 5) |
| DiagMatchAnyMask (QUADWORD) | 事件筛选器(全部使用 0xffffff) |
| DiagProcessName (MULTI_SZ) | 按进程名称筛选(例如,LSASS.exe) |
CAPI 日志
| 消息 | 描述 |
|---|---|
| 生成链 | LSA 调用 CertGetCertificateChain(包括结果) |
| 验证吊销 | LSA 调用 CertVerifyRevocation(包括结果) |
| X509 对象 | 在详细模式下,证书和证书吊销列表 (CRL) 将转储到 AppData\LocalLow\Microsoft\X509Objects |
| 验证链策略 | LSA 调用 CertVerifyChainPolicy(包括参数) |
错误消息
| 错误代码 | 描述 |
| Value | Description |
|---|---|
| DiagLevel (DWORD) | 详细级别(0 到 |
| DiagMatchAnyMask (QUADWORD) | 事件筛选器(全部使用 0xffffff) |
| DiagProcessName (MULTI_SZ) | 按进程名称筛选(例如,LSASS.exe) |
| Value | Description |
| DiagLevel (DWORD) | 详细级别(0 到 5) |
| DiagMatchAnyMask (QUADWORD) | 事件筛选器(全部使用 0xffffff) |
| DiagProcessName (MULTI_SZ) | 按进程名称筛选(例如,LSASS.exe) |
CAPI 日志
| 消息 | 描述 |
|---|---|
| Build Chain | LSA 调用 CertGetCertificateChain(包括结果) |
| Verify Revocation | LSA 调用 CertVerifyRevocation(包括结果) |
| X509 Objects | 在详细模式下,证书和证书吊销列表 (CRL) 将转储到 AppData\LocalLow\Microsoft\X509Objects |
| Verify Chain Policy | LSA 调用 CertVerifyChainPolicy(包括参数) |
错误消息
| 错误代码 | 描述 | Value | Description |
|---|---|---|---|
| DiagLevel (DWORD) | Verbosity level (0 to 5) | ||
| DiagMatchAnyMask (QUADWORD) | Event filter (use 0xffffff for all) | ||
| DiagProcessName (MULTI_SZ) | Filter by process name (for example, LSASS.exe) |
CAPI logs
| Message | Description |
|---|---|
| Build Chain | LSA called CertGetCertificateChain (includes result) |
| Verify Revocation | LSA called CertVerifyRevocation (includes result) |
| X509 Objects | In verbose mode, certificates and Certificate Revocation Lists (CRLs) are dumped to AppData\LocalLow\Microsoft\X509Objects |
| Verify Chain Policy | LSA called CertVerifyChainPolicy (includes parameters) |
Error messages
| Error code | Description |
|---|---|
| Certificate not trusted | 无法使用计算机的中间和受信任的根证书存储中的证书生成智能卡证书。 |
| Certificate revocation check error | 无法从证书 CRL 分发点指定的地址下载智能卡的 CRL。如果强制执行吊销检查,则会阻止登录成功。请参阅证书和公钥基础结构部分。 |
| Certificate Usage errors | 该证书不适用于登录。例如,它可能是服务器证书或签名证书。 |
Kerberos 日志
要启用 Kerberos 日志记录,请在域控制器和最终用户计算机上创建以下注册表值:
| 配置单元 | 值名称 | 值 [DWORD] |
|---|---|---|
| CurrentControlSet\Control\Lsa\Kerberos\Parameters | LogLevel | 0x1 |
| CurrentControlSet\Control\Lsa\Kerberos\Parameters | KerbDebuglevel | 0xffffffff |
| CurrentControlSet\Services\Kdc | KdcDebugLevel | 0x1 |
| CurrentControlSet\Services\Kdc | KdcExtraLogLevel | 0x1f |
Kerberos 日志记录输出到系统事件日志。
- 诸如不受信任的证书之类的消息必须易于诊断。
- 两个错误代码是信息性的,可以安全地忽略:
- KDC_ERR_PREAUTH_REQUIRED(用于与旧域控制器向后兼容)
- 未知错误 0x4b
域控制器和工作站日志
本节介绍当用户使用证书登录时,域控制器和工作站上预期的日志条目。
- 域控制器 CAPI2 日志
- 域控制器安全日志
- Virtual Delivery Agent (VDA) 安全日志
- VDA CAPI 日志
- VDA 系统日志
域控制器 CAPI2 日志
在登录期间,域控制器验证调用者的证书,生成一系列日志条目,其形式如下。

最终事件日志消息显示,域控制器上的 lsass.exe 根据 VDA 提供的证书构建证书链,并验证其有效性(包括吊销)。结果返回为 “ERROR_SUCCESS”。

域控制器安全日志
域控制器显示一系列登录事件,关键事件是 4768,其中证书用于颁发 Kerberos 票证授予票证 (krbtgt)。
此前的消息显示服务器的计算机帐户向域控制器进行身份验证。此后的消息显示属于新 krbtgt 的用户帐户用于向域控制器进行身份验证。

VDA 安全日志
对应于登录事件的 VDA 安全审计日志是事件 ID 为 4648 的条目,源自 winlogon.exe。

VDA CAPI 日志
此示例 VDA CAPI 日志显示了 lsass.exe 的单个证书链构建和验证序列,验证了域控制器证书 (dc.citrixtest.net)。


VDA 系统日志
启用 Kerberos 日志记录后,系统日志会显示错误 KDC_ERR_PREAUTH_REQUIRED (可以忽略),以及来自 Windows 登录的条目,显示 Kerberos 登录成功。

使用 Windows 事件日志监视 FAS
所有 FAS 事件都写入 Windows 应用程序事件日志。您可以使用诸如 System Center Operations Manager (SCOM) 等产品,通过此处描述的进程和事件来监视 FAS 服务的运行状况。
FAS 服务是否正在运行
要确定 FAS 服务是否正在运行,请监视进程 Citrix.Authentication.FederatedAuthenticationService.exe。
本部分仅介绍用于监视 FAS 服务的最重要事件。有关 FAS 事件代码的完整列表,请参阅 FAS 事件日志。
FAS 运行状况事件
以下事件显示 FAS 服务是否正常运行。
事件源为 Citrix.Authentication.FederatedAuthenticationService。
| 事件 | 事件文本 | 说明 | 备注 |
|---|---|---|---|
| [S003] | 管理员 [{0}] 将维护模式设置为 [{1}] | FAS 服务已进入或退出维护模式。 | 在维护模式下,FAS 服务器无法用于单点登录。 |
| [S022] | 管理员 [{0}] 将维护模式设置为“关” | FAS 服务已退出维护模式。 | 适用于 FAS 10.7 / Citrix Virtual Apps and Desktops 2109 及更高版本。 |
| [S023] | 管理员 [{0}] 将维护模式设置为“开” | FAS 服务已进入维护模式。 | 适用于 FAS 10.7 / Citrix Virtual Apps and Desktops 2109 及更高版本。 |
| [S123] | 未能为任何 CA 颁发证书,适用于 [upn: {0} 角色: {1}] [异常: {2}] | 如果 FAS 配置的 CA 均未能成功颁发用户证书,则此事件会在 [S124] 之后发生。该用户的单点登录将失败。 | 此事件指示所有配置的 CA 均无法正常工作。如果 FAS 配置为使用 HSM,则还可能指示 HSM 无法正常工作。 |
| [S124] | 未能为 [upn: {0} 角色: {1}] 在 [证书颁发机构: {2}] 颁发证书 [异常: {3}] | FAS 尝试从给定 CA 请求用户证书时发生故障。如果 FAS 配置了多个 CA,FAS 将尝试向另一个 CA 请求。 | 此事件可能指示 CA 无法正常工作或无法联系。如果 FAS 配置为使用 HSM,则还可能指示 HSM 无法正常工作。可以使用异常来帮助识别问题原因。 |
| [S413] | 授权证书即将过期(剩余 {0} 天)。证书详细信息: {1} | 当 FAS 授权证书即将过期时,会定期生成此事件。默认情况下,如果授权证书在 30 天内过期,则每天生成此事件。 | 可以使用 cmdlet Set-FasRaCertificateMonitor 调整默认设置;请参阅 PowerShell cmdlet。 |
| [S414] | 授权证书已过期。证书详细信息: {0} | 当 FAS 授权证书已过期时,会定期生成此事件。默认情况下,每天生成此事件。 | 证书过期后,FAS 将无法生成新的用户证书,并且单点登录将开始失败。 |
云连接的 FAS 事件
如果您将 FAS 与 Citrix Cloud™ 结合使用,以下事件显示 FAS 服务是否正常运行。
事件源为 Citrix.Fas.Cloud。
| 事件 | 事件文本 | 说明 | 备注 |
|---|---|---|---|
| [S012] | FAS 服务可用于从 Citrix Cloud 进行单点登录 | 此事件指示 Workspace(即 Citrix Cloud)的单点登录应正常工作。 | 在发出此事件之前,FAS 会检查 (1) 是否已配置,(2) 是否未处于维护模式,以及 (3) 是否已连接到 Citrix Cloud。 |
| [S013] | FAS 服务无法用于从 Citrix Cloud 进行单点登录。[{0}] 更多详细信息可在管理控制台中找到。 | 此事件指示 FAS 无法从 Workspace(即 Citrix Cloud)提供单点登录。该消息包含单点登录无法工作的原因。 | FAS 维护与 Citrix Cloud 的持久连接。此连接有时可能会因各种原因(例如网络故障或代理服务器上的连接生存期策略)而终止。发生这种情况时,事件文本将包含“服务未连接到云”。这是正常行为,FAS 会立即尝试重新建立与 Citrix Cloud 的连接。 |
安全事件
以下事件指示未经授权的实体尝试使用 FAS。
事件源为 Citrix.Authentication.FederatedAuthenticationService。
| 事件 | 事件文本 | 说明 |
|---|---|---|
| [S001] | 访问被拒绝: 用户 [{0}] 不是 Administrators 组的成员 | 尝试查看或更改 FAS 配置,但调用方不是 FAS 管理员。 |
| [S002] | 访问被拒绝: 用户 [{0}] 不是角色 [{1}] 的管理员 | 尝试查看或更改 FAS 规则的配置,但调用方不是 FAS 管理员。 |
| [S101] | 服务器 [{0}] 无权在角色 [{1}] 中声明身份 | 尝试声明用户身份,但调用方无权执行此操作。只有在 FAS 规则配置中允许的 StoreFront™ 服务器(以及适用的 Workspace)才允许声明用户身份。 |
| [S104] | 服务器 [{0}] 未能声明 UPN [{1}](UPN 不允许通过规则 [{2}]) | 尝试声明用户身份,但根据 FAS 规则配置,不允许该用户帐户。 |
| [S205] | 依赖方访问被拒绝 - 调用帐户 [{0}] 不是规则 [{1}] 的允许依赖方 | VDA 尝试使用 FAS 执行单点登录,但根据 FAS 规则配置,不允许该 VDA。 |
FAS 事件日志
以下表格列出了 FAS 生成的事件日志条目。
管理事件 [Federated Authentication Service]
[Event Source: Citrix.Authentication.FederatedAuthenticationService]
这些事件在 FAS 服务器中配置更改时记录。
| 日志代码 |
|---|
| [S001] 访问被拒绝: 用户 [{0}] 不是 Administrators 组的成员 |
| [S002] 访问被拒绝: 用户 [{0}] 不是角色 [{1}] 的管理员 |
| [S003] 管理员 [{0}] 将维护模式设置为 [{1}] |
| [S004] 管理员 [{0}] 从 CA [{1}] 请求授权证书,使用模板 [{2}] 和 [{3}] |
| [S005] 管理员 [{0}] 移除 FAS 授权 [RA 证书 ID: {1}] |
| [S006] 管理员 [{0}] 创建证书定义 [{1}] |
| [S007] 管理员 [{0}] 更新证书定义 [{1}] |
| [S008] 管理员 [{0}] 删除证书定义 [{1}] |
| [S009] 管理员 [{0}] 创建规则 [{1}] |
| [S010] 管理员 [{0}] 更新规则 [{1}] |
| [S011] 管理员 [{0}] 删除规则 [{1}] |
| [S012] 管理员 [{0}] 创建证书 [UPN: {1} SID: {2} 规则: {3}]证书定义: {4} 安全上下文: {5}] |
| [S013] 管理员 [{0}] 删除证书 [UPN: {1} 角色: {2} 证书定义: {3} 安全上下文: {4}] |
| [S015] 管理员 [{0}] 创建证书请求 [TPM: {1}] |
| [S016] 管理员 [{0}] 导入授权证书 [参考: {1}] |
| [S022] 管理员 [{0}] 将维护模式设置为“关” |
| [S023] 管理员 [{0}] 将维护模式设置为“开” |
| [S024] 管理员 [{0}] 设置系统健康监视器 |
| [S025] 管理员 [{0}] 设置系统健康监视器 |
| [S026] 管理员 [{0}] 设置 RA 证书监视器 |
| [S027] 管理员 [{0}] 重置 RA 证书监视器 |
| [S028] 管理员 [{0}] 将 [{1}] 证书的密钥配置设置为 [{2}] |
| [S029] 管理员 [{0}] 将 [{1}] 证书的密钥配置重置为默认值 [{2}] |
| [S030] 管理员 [{0}] 将服务属性设置为 [{1}] |
| [S031] 管理员 [{0}] 取消授权 CA [RA 证书 ID: {1}] |
| [S050] 管理员 [{0}] 创建云配置: [{1}] |
| [S051] 管理员 [{0}] 更新云配置: [{1}] |
| [S052] 管理员 [{0}] 移除云配置 |
| [S060] 管理员 [{0}] 请求云注册。实例: {1} |
| [S060] 管理员 [{0}] 请求直接信任云注册。实例: {1} CloudServiceUrlFormat: {2} |
| [S061] 管理员 [{0}] 完成云注册。资源位置: {1},规则名称: {2} |
| [S062] 管理员 [{0}] 已完成云注册。资源位置: {1} ({2}),规则名称: {3},客户: {4} ({5}) |
| [S063] 云注册期间发生 KRS 错误。异常为 {0} |
| [S064] 云注册期间发生未知错误。异常为 {0} |
| [S065] 管理员 [{0}] 请求直接信任云注册。实例: {1} CloudServiceUrlFormat: {2} |
| 日志代码 |
| [S401] 执行配置升级 - [从版本 {0} 到版本 {1}] |
| [S402] 错误: Citrix Federated Authentication Service 必须以网络服务身份运行 [当前运行身份: {0}] |
| [S404] 强制擦除 Citrix Federated Authentication Service 数据库 |
| [S405] 将数据从注册表迁移到数据库时发生错误: [{0}] |
| [S406] 数据从注册表到数据库的迁移已完成(注意: 用户证书未迁移) |
| [S407] 由于数据库已存在,基于注册表的数据未迁移到数据库 |
| [S408] 无法降级配置 – [从版本 {0} 到版本 {1}] |
| [S409] 线程池配置成功 - MinThreads 已从 [工作线程: {0} 完成: {1}] 调整为: [工作线程: {2} 完成: {3}] |
| [S410] 线程池配置失败 - 无法将 MinThreads 从 [工作线程: {0} 完成: {1}] 调整为: [工作线程: {2} 完成: {3}];这可能会影响 FAS 服务器的可伸缩性 |
| [S411] 启动 FAS 服务时出错: [{0}] |
| [S412] 配置升级完成 – [从版本 {0} 到版本 {1}] |
| [S413] 授权证书即将过期(剩余 {0} 天)。证书详细信息: {1} |
| [S414] 授权证书已过期。证书详细信息: {0} |
| [S415] 授权证书检查已完成。已记录 {0} 个问题。下次检查将在 {1} 后进行 |
创建身份断言 [Federated Authentication Service]
[Event Source: Citrix.Authentication.FederatedAuthenticationService]
-
这些事件在 FAS 服务器运行时,当受信任的服务器断言用户登录时记录。
-
日志代码 [S101] 服务器 [{0}] 无权在角色 [{1}] 中断言身份 [S102] 服务器 [{0}] 未能断言 UPN [{1}](异常: {2}{3}) [S103] 服务器 [{0}] 请求了 UPN [{1}] SID {2},但查找返回了 SID {3} [S104] 服务器 [{0}] 未能断言 UPN [{1}](规则 [{2}] 不允许此 UPN) [S105] 服务器 [{0}] 发布了身份断言 [UPN: {1},角色 {2},安全上下文: [{3}]] [S120] 正在向 [UPN: {0} 角色: {1} 安全上下文: [{2}]] 颁发证书 [S121] 证书已颁发给 [UPN: {0} 角色: {1}],颁发者为 [证书颁发机构: {2}] -
[S122] 警告: 服务器过载 [UPN: {0} 角色: {1}][每分钟请求数 {2}]。 -
[S123] 未能为 [UPN: {0} 角色: {1}] 在任何 CA 颁发证书 [异常: {2}] -
[S124] 未能为 [UPN: {0} 角色: {1}] 在 [证书颁发机构: {2}] 颁发证书 [异常: {3}] -
[S125] 等待挂起的证书请求完成,在 {0} 秒后调用超时 [UPN: {1} 角色: {2} 安全上下文: [{3}]] -
[S126] 服务器 [{0}] 尝试使用未定义的规则 [{1}] 断言身份 [S127] FAS 无法为 [UPN: {0} 角色: {1} 定义: {2}] 请求证书,因为服务器处于维护模式;请使用 PowerShell cmdlet Set-FasServer 在维护模式下更改行为
作为信赖方 [Federated Authentication Service]
[Event Source: Citrix.Authentication.FederatedAuthenticationService]
这些事件在 FAS 服务器运行时,当 VDA 登录用户时记录。
| 日志代码 |
|---|
| [S201] 信赖方 [{0}] 无权访问密码。 |
| [S202] 信赖方 [{0}] 无权访问证书。 |
| [S203] 信赖方 [{0}] 无权访问登录提供程序 |
| [S204] 信赖方 [{0}] 正在访问登录提供程序,针对 [upn: {1}],角色为: [{2}] [操作: {3}],由 [{4}] 授权 |
| [S205] 信赖方访问被拒绝 - 调用帐户 [{0}] 不是规则 [{1}] 允许的信赖方 |
| [S206] 调用帐户 [{0}] 不是信赖方 |
| [S208] 私钥操作失败 [操作: {0} upn: {1} 角色: {2} 证书定义 {3} 错误 {4} {5}]。 |
| [S209] 未找到缓存证书。[调用方: {0}] [upn: {1}] [角色: {2}] [证书定义: {3}] [操作: {4}] |
会话内证书服务器 [Federated Authentication Service]
[事件源: Citrix.Authentication.FederatedAuthenticationService]
当用户使用会话内证书时,这些事件将记录在 FAS 服务器上。
| 日志代码 |
|---|
| [S301] 访问被拒绝: 用户 [{0}] 无权访问虚拟智能卡 |
| [S302] 用户 [{0}] 请求了未知的虚拟智能卡 [指纹: {1}] |
| [S303] 访问被拒绝: 用户 [{0}] 与虚拟智能卡不匹配 [upn: {1}] |
| [S304] 用户 [{0}] 正在计算机 [{2}] 上运行程序 [{1}],使用虚拟智能卡 [upn: {3} 角色: {4} 指纹: {5}] 进行私钥操作 [{6}] |
| [S305] 私钥操作失败 [操作: {0}] [upn: {1} 角色: {2} 容器名称 {3} 错误 {4} {5}]。 |
FAS 断言插件 [Federated Authentication Service]
[事件源: Citrix.Authentication.FederatedAuthenticationService]
这些事件由 FAS 断言插件记录。
| 日志代码 |
|---|
| [S500] 未配置 FAS 断言插件 |
| [S501] 无法加载已配置的 FAS 断言插件 [异常:{0}] |
| [S502] FAS 断言插件已加载 [pluginId={0}] [assembly={1}] [location={2}] |
| [S503] 服务器 [{0}] 未能断言 UPN [{1}](提供了登录凭据,但插件 [{2}] 不支持) |
| [S504] 服务器 [{0}] 未能断言 UPN [{1}](提供了登录凭据,但未配置 FAS 插件) |
| [S505] 服务器 [{0}] 未能断言 UPN [{1}](插件 [{2}] 拒绝了登录凭据,状态为 [{3}],消息为 [{4}]) |
| [S506] 插件 [{0}] 接受了来自服务器 [{1}] 的 UPN [{2}] 登录凭据,消息为 [{3}] |
| [S507] 服务器 [{0}] 未能断言 UPN [{1}](插件 [{2}] 在方法 [{4}] 期间抛出异常 [{3}]) |
| [S507] 服务器 [{0}] 未能断言 UPN [{1}](插件 [{2}] 抛出异常 [{3}]) |
| [S508] 服务器 [{0}] 未能断言 UPN [{1}](提供了访问处置,但插件 [{2}] 不支持) |
| [S509] 服务器 [{0}] 未能断言 UPN [{1}](提供了访问处置,但未配置 FAS 插件) |
| [S510] 服务器 [{0}] 未能断言 UPN [{1}](访问处置被插件 [{2}] 视为无效) |
启用 Workspace 的 FAS [联合身份验证服务]
[事件源: Citrix.Fas.Cloud]
当 FAS 与 Workspace 结合使用时,会记录这些事件。
| 日志代码 |
|---|
| [S001] 轮换了 Citrix Cloud 授权密钥 [FAS ID: {0}] [旧密钥 ID:{1}] [新密钥 ID:{2}] |
| [S002] 云支持模块正在启动。FasHub 云服务 URL: {0} |
| [S003] FAS 已在云中注册 [FAS ID: {0}] [事务 ID: {1}] |
| [S004] FAS 未能注册到云 [FAS ID: {0}] [事务 ID: {1}] [异常: {2}] |
| [S005] FAS 已将其当前配置发送到云 [FAS ID: {0}] [事务 ID: {1}] |
| [S006] FAS 未能将其当前配置发送到云 [FAS ID: {0}] [事务 ID: {1}] [异常: {2}] |
| [S007] FAS 已从云中注销 [FAS ID: {0}] [事务 ID: {1}] |
| [S009] FAS 未能从云中注销 [FAS ID: {0}] [事务 ID: {1}] [异常: {2}] |
| [S010] FAS 服务已连接到云消息传递 URL: {0} |
| [S011] FAS 服务未连接到云 |
| [S012] FAS 服务可用于 Citrix Cloud 的单点登录 |
| [S013] FAS 服务不可用于 Citrix Cloud 的单点登录。[{0}] 更多详细信息可在管理控制台中找到 |
[S014] 对云服务 <service name> 的调用失败 [FAS ID: {0}] [事务 ID: {1}] [异常: {2}] |
| [S015] 来自 Citrix Cloud 的消息被阻止,因为调用方未获许可 [消息 ID {0}] [事务 ID {1}] [调用方 {2}] |
[S016] 对云服务 <service name> 的调用成功 [FAS ID: {0}] [事务 ID: {1}] |
| [S019] FAS 已从云中下载其配置 [FAS ID: {0}] [事务 ID: {1}] |
| [S020] FAS 未能从云中下载其配置 [FAS ID: {0}] [事务 ID: {1}] [异常: {2}] |
| [S021] 云支持模块未能启动。异常: {0} |
| [S022] 云支持模块正在停止 |
| [S023] 未能轮换 Citrix Cloud 授权密钥 [FAS ID: {0}] [当前密钥 ID:{1}] [新密钥 ID:{2}] [云中的密钥:{3}] |
| [S024] 正在启动 Citrix Cloud 授权密钥的轮换 [FAS ID: {0}] [当前密钥 ID:{1}] [新密钥 ID:{2}] |
| [S025] 此服务的授权密钥存在于 Citrix Cloud 中 [当前密钥: {0}] [云中的密钥: {1}] |
| [S026] 此服务的授权密钥不存在于 Citrix Cloud 中 [当前密钥: {0}] [云中的密钥: {1}] |
| [S027] 升级了 Citrix Cloud 授权密钥存储格式 [FAS ID: {0}] |
| [S028] FAS 已将其当前遥测数据发送到云 [FAS ID: {0}] [事务 ID: {1}] |
| [S029] FAS 未能将其当前遥测数据发送到云 [FAS ID: {0}] [事务 ID: {1}] [异常: {2}] |
登录 [VDA]
[事件源: Citrix.Authentication.IdentityAssertion]
这些事件在登录阶段记录在 VDA 上。
| 日志代码 |
|---|
| [S101] 身份断言登录失败。无法识别的联合身份验证服务 GPO 索引 [索引: {0}] [注册表名称: {1}] |
| [S102] 身份断言登录失败。{0} 的 SID 查找失败 [异常: {1}{2}] |
| [S103] 身份断言登录失败。用户 {0} 的 SID 为 {1},但预期的 SID 为 {2} |
| [S104] 身份断言登录失败。对 {0} 的调用返回 [错误: {1} {2}] |
| [S105] 身份断言登录。正在登录 [用户名: {0} 域: {1}] |
| [S106] 身份断言登录。\n\n联合身份验证服务: {0}\n\n正在登录 [证书: {1}] |
| [S107] 身份断言登录失败。 [异常: {0}{1}] |
| [S108] 身份断言子系统。ACCESS_DENIED [调用方: {0}] |
会话内证书 [VDA]
[事件源: Citrix.Authentication.IdentityAssertion]
当用户尝试使用会话内证书时,这些事件会记录在 VDA 上。
| 日志代码 |
|---|
| [S201] 虚拟智能卡访问由 [{0}] 授权,适用于 [PID: {1} 程序名称: {2}证书指纹: {3}] |
| [S203] 虚拟智能卡子系统。访问被拒绝 [调用方: {0},会话 {1}] |
| [S204] 虚拟智能卡子系统。智能卡支持已禁用 |
证书请求和密钥对生成 [联合身份验证服务]
[事件源: Citrix.Fas.PkiCore]
当 FAS 服务器执行低级别加密操作时,会记录这些事件。
| 日志代码 |
|---|
| [S001] TrustArea::TrustArea: 已安装证书 [信任区域: {0} 证书 {1}TrustAreaJoinParameters {2}] |
| [S014] Pkcs10Request::Create: 已创建 PKCS10 请求 [可分辨名称: {0}] [原因: {1}] |
| [S016] PrivateKey::Create [标识符: {0}] [计算机范围: {1}] [提供程序: {2}] [提供程序类型: {3}] [椭圆曲线: {4}] [密钥长度: {5}] [可导出: {6}] [创建原因: {7}] |
| [S017] PrivateKey::Delete [提供程序: {0}] [标识符 {1}] [孪生: {2}] |
| [S018] PrivateKey::Create 失败 [标识符: {0}] [计算机范围: {1}] [提供程序: {2}] [提供程序类型: {3}] [椭圆曲线: {4}] [密钥长度: {5}] [可导出: {6}] [创建原因: {7}] [异常: {8}] |
| 日志代码 |
| [S104] FAS 从 CA {0} 接收到授权证书 |
| [S105] MicrosoftCertificateAuthority::SubmitCertificateRequest 提交响应错误 [{0}] |
| [S106] MicrosoftCertificateAuthority::SubmitCertificateRequest 已颁发证书 [{0}] |
| [S112] MicrosoftCertificateAuthority::SubmitCertificateRequest - 等待批准 [CR_DISP_UNDER_SUBMISSION] [参考: {0}] |
最终用户错误消息
本节列出了在 Windows 登录页面上向用户显示的常见错误消息。
| 显示的错误消息 | 说明和参考 |
|---|---|
| 用户名或密码无效 | 计算机认为您拥有有效的证书和私钥,但 Kerberos 域控制器拒绝了连接。请参阅本文的 Kerberos 日志部分。 |
| 系统无法将您登录。您的凭据无法验证。/ 请求不受支持 | 无法联系域控制器,或者域控制器未配置支持智能卡身份验证的证书。为域控制器注册“Kerberos 身份验证”、“域控制器身份验证”或“域控制器”证书。即使现有证书看起来有效,也值得尝试。 |
| 系统无法将您登录。用于身份验证的智能卡证书不受信任。 | 中间证书和根证书未安装在本地计算机上。请参阅证书和公钥基础结构。 |
| 错误请求 | 这通常表示证书上的扩展未正确设置,或者 RSA 密钥太短(<2048 位)。 |
FAS 始终开启跟踪
通过始终开启跟踪,FAS 会将其活动记录到文件系统。这有助于故障排除,可能无需重现已发生的事件。
使用以下任一方法安装或升级 FAS 时,将启用始终开启跟踪:
- Citrix Virtual Apps and Desktops™ 安装程序:当插入 ISO 时,从自动运行启动屏幕上的联合身份验证服务按钮
-
XenDesktopFasSetup.exe:位于 Citrix Virtual Apps and Desktops ISO 的x64\XenDesktop Setup\XenDesktopFasSetup.exe -
FasSetup_2503.exe:独立的 FAS 安装程序文件,可从 Citrix 下载获取。
注意:
如果您使用 FAS 安装程序 MSI 文件
FederatedAuthenticationService_x64.msi进行安装或升级,则始终开启跟踪不可用。
收集始终开启跟踪
使用 Citrix Scout 从 FAS 服务器收集始终开启跟踪和其他诊断数据。使用上述任何方法安装 FAS 时,都会安装 Citrix Scout。
禁用始终开启跟踪
如果出于任何原因希望禁用始终开启跟踪,请在 FAS 服务器上停止并禁用 Citrix Telemetry Service。