阅读背景:

DirContext初始化过程分析

来源:互联网 

这篇博文的原因

主要是因为犯了一个很愚蠢的错误,在实例化DirContext的时候报了AuthenticationException,错误码为49,我很疑惑,同样的方式通过ldapBrowser可以连接,在JNDI却不能连接了,同样尝试了Java的Apache Directory Studio插件也是不能连接,但是匿名连接却连接得上。基于这个原因便开始了探究初始化过程的分析,不过最后的结论却是——只是我的principal错了而已,我一直以为是我的credentials的问题。为什么同样用cn=Manager通过LDAPBrowser能访问,而通过JNDI或者ADS插件却不能访问呢?理由(大概)是访问的时候完整的用户dn应该都是cn=Manager,dc=maxcrc,dc=com,这个你定义在slap.conf的rootDn,而为什么ldapBrowser能够通过cn=Manager来访问呢?那是因为它有进行了一些拼接,因此我们总以为A是这样所以B应该是这样的想法有时候不一定通用,特别是当它们属于两个不同的项目的时候。虽然这样一来分析源码的意义不存在了,但是还是把分析过程贴出来和大家分享分享,过程也是比较简略,而且针对一种情况分析。主要是因为犯了一个很愚蠢的错误,在实例化DirContext的时候报了Authenti




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: