I ont une structure de répertoire queConfiguration LDAP Base Spring
ou=studentBase,dc=example,dc=com
Dans mon XML de sécurité Je
<bean id="contextSource" class="org.springframework.ldap.core.support.LdapContextSource">
<property name="base" value="ou=studentBase,dc=example,dc=com" />
<property name="url" value="ldaps://serveraddress:port" />
<property name="userDn" value="username" />
<property name="password" value="pwd" />
</bean>
Je suppose que d'interroger les attributs de l'objet conteneur
cn=container,cn=schema,cn=configuration,dc=example,dc=com
Lorsque Je recherche avec base réglé à
cn=container,cn=schema,cn=configuration,dc=example,dc=com
ldapTemplate.search(base, filter.encode(), new AttributesMapper()){
}
Je reçois une erreur
org.springframework.ldap.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: DSID-03100238, problem 2001 (NO_OBJECT), data 0, best match of: 'ou=studentBase,dc=example,dc=com']; nested exception is
javax.naming.NameNotFoundException: [LDAP: error code 32 - 0000208D: NameErr: DSID-03100238, problem 2001 (NO_OBJECT), data 0, best match of:
'ou=studentBase,dc=example,dc=com']; remaining name cn=container,cn=schema,cn=configuration,dc=example,dc=com
Le problème est que je ne peux pas changer la base pour rechercher autre chose que la base que je mets dans le fichier de configuration XML. J'ai aussi essayé SearchControls
et j'ai eu le même problème. Comment puis-je effectuer une recherche sur une base différente? J'ai écrit l'ensemble de l'application et ne peux pas tourner autour de ce problème.