我试图再次使用Spring框架和Spring安全3.0来验证用户AD LDS \ ADAM。我不断收到以下错误,希望有人能从这里解释问题所在。Spring安全和活动目录LDAP错误32问题2001(NO_OBJECT)
[LDAP: error code 32 - 0000208D: NameErr: DSID-0315258B, problem 2001 (NO_OBJECT), data 0, best match of: 'CN=Users,DC=Domain,DC=local' ]; nested exception is javax.naming.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: DSID-0315258B, problem 2001 (NO_OBJECT), data 0, best match of: 'CN=Users,DC=Domain,DC=local' ]; remaining name 'cn=Mo Logan,cn=Users,dc=Domain,dc=local'
任何人都可以解释什么是最好的匹配和剩余名称位的意思 - 这真的让我感到困惑?这种搜索大小写是否敏感?而像服务器和客户端之间的时间差异这样的问题会产生差异吗?
从我在线阅读的错误代码32意味着不能找到对象 - 非常有帮助我相信你会同意。下面是我使用的配置信息:
<authentication-manager alias="ldapAuthenicationManager">
<ldap-authentication-provider
user-search-base="cn=Users,dc=Domain,dc=local"
user-search-filter="(uid={0})"
role-prefix="Users"
/>
</authentication-manager>
<ldap-server url="ldap://server:50006/" manager-dn="CN=Admin,CN=Users,DC=Domain,DC=local" manager-password="Password101" />
我正在寻找通过UID(在LDS没有SAM帐户名),当我使用服务器上ldap.exe相同的标准搜索我能找到用户正确如:
ldap_search_s(ld, "CN=Users,DC=Domain,DC=local", 2, "(uid=mologan)", attrList, 0, &msg)
***Searching...
ldap_search_s(ld, "CN=Users,DC=Domain,DC=local", 2, "(uid=mologan)", attrList, 0, &msg)
Getting 1 entries:
Dn: CN=Mo Logan,CN=Users,DC=Domain,DC=local
badPasswordTime: 9/20/2011 1:19:51 PM GMT Standard Time;
badPwdCount: 0;
cn: Mo Logan;
distinguishedName: CN=Mo Logan,CN=Users,DC=Domain,DC=local;
dSCorePropagationData: 0x0 = ();
instanceType: 0x4 = (WRITE);
lastLogonTimestamp: 9/20/2011 9:10:32 AM GMT Standard Time;
lockoutTime: 0;
memberOf (2): CN=DMSUsers,CN=Users,DC=Domain,DC=local; CN=Users,CN=Roles,CN=Users,DC=Domain,DC=local;
msDS-UserAccountDisabled: FALSE;
name: Mo Logan;
objectCategory: CN=Person,CN=Schema,CN=Configuration,CN={BD500A33-CE7C-492F-9007-BF1B17F972EE};
objectClass (4): top; person; organizationalPerson; user;
objectGUID: 40f74ed4-6cf3-495e-a28c-6aa080a0333b;
objectSid: S-1-514506224-2209559093-2723712157-1234827279-3369888698-2052446679;
pwdLastSet: 9/20/2011 8:19:06 AM GMT Standard Time;
uid: mologan;
uSNChanged: 13994;
uSNCreated: 13985;
whenChanged: 9/20/2011 9:10:32 AM GMT Standard Time;
whenCreated: 9/20/2011 8:16:54 AM GMT Standard Time;
我以属于角色下阅读器组的管理员帐户绑定到AD LDS。此用户与我尝试验证的用户名所在的级别相同。
正如你可能会说我是平的想法,为什么我收到此错误,希望有人能够帮助我或点我在正确的方向,
干杯提前&感谢
是的,apols是一个复制和粘贴错误 - 我抓住了错误的搜索结果,并关闭了窗口,并试图修复它。 – Morrislgn
我编辑我的答案,你可以尝试这个配置 – JPBlanc
感谢您的指点,我再次尝试这个没有任何喜悦的遗憾。同样的错误或多或少,但具有较短的DN例如:[LDAP:错误代码32 - 0000208D:NameErr:DSID-0315258B,问题2001(NO_OBJECT),数据0,最佳匹配:CN =用户,DC =域, DC =本地'];嵌套异常是javax.naming.NameNotFoundException:[LDAP:error code 32 - 0000208D:NameErr:DSID-0315258B,problem 2001(NO_OBJECT),data 0,'CN = Users,DC = Domain,DC = local' ]。剩余名称'cn = Mo Logan,cn =用户' – Morrislgn