You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows Server 2019 & 2012 R2环境下Active Directory TLS认证异常问题求助

Windows Server 2019 & 2012 R2环境下Active Directory TLS认证异常问题求助

Hi there! 针对您遇到的「半年前仅需CA证书即可完成AD SSL用户认证,现在必须同时提供CA证书、客户端证书及密钥才能登录」的问题,我整理了几个适用于Windows Server 2019/2012 R2的排查与修复方案,您可以按步骤尝试:

一、调整AD LDAP服务器的TLS客户端证书要求

AD的LDAP TLS验证行为主要通过注册表项控制,您可以修改设置来禁用强制客户端证书校验:

  1. 打开注册表编辑器(regedit),导航到路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters
  2. 查找或新建DWORD(32位)值,命名为LDAPServerIntegrity
    • 值为1:允许匿名/简单绑定(仅用于测试,不推荐生产环境)
    • 值为2:要求SSL/TLS加密,但不强制客户端证书(这是您需要的模式)
    • 值为3:强制SSL/TLS加密且要求客户端证书(这很可能是当前导致您问题的配置)
  3. LDAPServerIntegrity的值修改为2,然后重启Active Directory Domain Services服务(在服务控制台找到该服务右键重启)

另外,检查是否有组策略强制了客户端证书要求:

  • 打开组策略管理控制台(gpmc.msc),找到针对域控制器的组策略对象(GPO)
  • 导航到「计算机配置」>「Windows设置」>「安全设置」>「公钥策略」>「SSL证书设置」
  • 查看是否存在针对LDAP服务的规则,若设置为「要求客户端证书」,请修改为「不要求客户端证书」

二、排查Windows安全更新导致的配置变更

近半年的Windows安全补丁可能调整了AD的TLS默认策略(比如KB5014754这类LDAP硬ening补丁),您可以:

  1. 查看域控制器的更新历史,确认是否安装了涉及LDAP/TLS安全的补丁
  2. 若确定是补丁导致,可查阅对应补丁的官方文档,部分补丁提供了注册表回退参数(仅临时测试使用,生产环境需谨慎)

三、验证AD服务器的TLS证书有效性

确保AD服务器的LDAP证书及CA证书配置正常:

  1. 打开本地证书控制台(certlm.msc),在「个人」>「证书」下检查AD的LDAP证书是否有效(无过期、吊销、链信任问题)
  2. 确认您使用的CA证书已部署到域控制器的「受信任的根证书颁发机构」存储中

四、客户端侧临时测试调整(仅供验证)

如果服务器端调整暂时无法生效,您可以在客户端代码中临时设置LDAP_OPT_X_TLS_REQUIRE_CERTnever,验证是否能恢复原认证方式(此为临时测试,不建议长期用于生产):

// 设置不要求客户端证书验证
ldap_set_option(ld, LDAP_OPT_X_TLS_REQUIRE_CERT, LDAP_OPT_X_TLS_NEVER);

如果以上方案都无效,建议您收集域控制器的「系统日志」和「目录服务日志」,查看其中的TLS/LDAP相关错误事件,进一步定位问题根源。

备注:内容来源于stack exchange,提问作者ram ajay

火山引擎 最新活动