Я работаю над интеграцией моего приложения для отчетов с LDAP, я изменил несколько bean-компонентов в applicationContext-externalAuth-LDAP.xml согласно документации
1) ldapContextSource
<bean id="ldapContextSource" class="com.jaspersoft.jasperserver.api.security.externalAuth.ldap.JSLdapContextSource">
<constructor-arg value="ldap://url.ldap.com:3268/DC=main,DC=com"/>
<!-- manager user name and password (may not be needed) -->
<property name="userDn" value="CN=Account Name,OU=Support User Account,DC=main,DC=com"/>
<property name="password" value="123xyz"/>
</bean>
2) userSearch bean
<bean id="userSearch"
class="com.jaspersoft.jasperserver.api.security.externalAuth.wrappers.spring.ldap.JSFilterBasedLdapUserSearch">
<constructor-arg index="0">
<value>(&(|(objectClass=contact)(objectClass=user))(objectCategory=person)(cn={0})(|(memberOf=CN=VPN-Access,CN=Users,DC=Main,DC=com)(memberOf=CN=All,CN=Disto,CN=Users,DC=main,DC=com)))</value>
</constructor-arg>
<constructor-arg index="1">
<value>(&(sAMAccountName={0}))</value>
</constructor-arg>
<constructor-arg index="2">
<ref local="ldapContextSource" />
</constructor-arg>
<property name="searchSubtree">
<value>true</value>
</property>
</bean>
Я протестировал вышеупомянутое соединение строки поиска, используя jexplorer, и оно успешно восстановило моих пользователей.
Ошибка, возникающая при развертывании этого приложения в моем приложении.Будем весьма благодарны за любые идеи относительно основной причины этого или решения:
org.springframework.security.authentication.InternalAuthenticationServiceException: Failed to parse DN; nested exception is org.springframework.ldap.core.TokenMgrError: Lexical error at line 1, column 1. Encountered: "(" (40), after : ""
Caused by: org.springframework.ldap.BadLdapGrammarException: Failed to parse DN; nested exception is org.springframework.ldap.core.TokenMgrError: Lexical error at line 1, column 1. Encountered: "(" (40), after : ""
Caused by: org.springframework.ldap.core.TokenMgrError: Lexical error at line 1, column 1. Encountered: "(" (40), after : ""```