今天遇到1个用户反馈的问题,他们通过JAVA开发了一个工具(修改AD用户密码),在此工具中如果将LDAP指向1台辅助DC时就报错,详细信息如下:
问题描述:
=========
通过JAVA开发的修改AD用户密码的工具,LDAP指向1台辅助域控时,修改用户密码报错,JAVA上报错如下:
javax.naming.CommunicationException: simple bind failed:
10.10.10.23:636 [Root exception is
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target]
原因分析:
=========
通过以上报错:unable to find valid certification path to requested target,大致判断问题出在证书上,通过检查这台辅助域控的事件日志,发现以下报错:
通过查看证书管理器,发现个人证书的颁发者是wireless,而不是用户企业内搭建的CA企业证书给颁发的,如下图:
通过以上分析判断是因为通过JAVA开发的工具连接这台辅助DC时找不到有效的证书,导致报错
解决方法:
=========
在个人证书中,重新申请1张证书,过程如下 :
定位到:个人-证书,右键:所有任务—申请新证书
2. 在证书注册处,直接点击:下一步
3. 在:请求证书处,勾选:域控制器,并点击:属性
4. 在域控制器的属性中,定位到:证书颁发机构,勾选我们的企业根CA,如下图:
5. 申请完成后,如下图
6. 再通过JAVA工具修改AD用户密码,成功
本文转自ljb_job 51CTO博客,原文链接:http://blog.51cto.com/liujb/1795703,如需转载请自行联系原作者