LsaLogonUser返回错误码0xC004848c:智能卡登录Azure/Entra认证求助
错误0xC004848c的含义及Azure/Entra联合认证配置要点
错误0xC004848c的具体含义
这个错误码对应Kerberos证书登录流程中,WS-Fed元数据未包含智能卡认证必需的证书端点配置。本质是Windows的LSA服务解析WS-Fed元数据时,找不到用于验证智能卡证书链、完成证书到用户身份映射的关键配置项或端点,导致登录流程中断。
需补充的核心配置项
你已配置TokenSigningKeyInfo,但还需补充以下关键配置:
- CA证书链配置:在WS-Fed元数据的
<KeyDescriptor>或<X509Data>节点中,嵌入完整的智能卡证书信任链(根CA+中间CA证书),或添加CA证书分发端点,确保LSA能验证智能卡证书的有效性。 - 证书-用户映射规则:在元数据的
<fed:ClaimType>节点明确映射规则,指定智能卡证书中哪个字段(如SAN里的UPN)对应Azure/Entra用户的UPN属性,同时配置证书与用户绑定关系的查询端点。 - 智能卡认证方法声明:在元数据的
<auth:AuthenticationMethod>节点添加urn:ietf:rfc:4556(智能卡认证标准OID),并关联对应的证书验证端点。 - 元数据签名信任:确保元数据本身由可信证书签名,且签名证书存在于本地系统信任存储,LSA会校验元数据签名完整性,签名不可信会间接导致无法识别证书端点。
快速排查步骤
- 检查元数据
<EntityDescriptor>下的<RoleDescriptor>节点,确认是否存在<KeyDescriptor use="encryption">节点,且其中的X509证书为证书验证用CA证书(而非仅签名证书)。 - 验证智能卡证书的SAN/Subject字段中的UPN,是否与Azure/Entra用户的UPN完全一致,LSA依赖该映射关联身份。
- 用
certutil -urlfetch -verify <智能卡证书路径>验证证书链完整性,确保本地信任存储包含链中所有CA证书。
内容的提问来源于stack exchange,提问作者atlredsox
相关产品推荐
相关产品推荐

