0

Я пытаюсь использовать ActiveDirectory для проверки подлинности JasperServer, что до сих пор не работает по какой-то причине:JasperServer Аутентификация 6,3 с Active Directory не работает

вот моя конфигурация:

1. ШАГ 1: Титулы доступа к AD сервера:

<bean id="ldapContextSource" class="com.jaspersoft.jasperserver.api.security.externalAuth.ldap.JSLdapContextSource"> 
     <constructor-arg value="ldap://192.10.0.190:389/dc=sifast,dc=infra"/> 
     <!-- manager user name and password (may not be needed) --> 
     <property name="userDn" value="CN=recherche,CN=Users,DC=sifast,DC=infra"/> 
     <property name="password" value="*******"/> 
     <property name="referral"> 
      <value>follow</value> 
     </property> 
    </bean> 

2.STEP 2: конфигурация доступа в "userDnPatterns": здесь я хочу доступа с логином уже введенную

<bean id="ldapAuthenticationProvider" class="com.jaspersoft.jasperserver.api.security.externalAuth.wrappers.spring.ldap.JSLdapAuthenticationProvider"> 
     <constructor-arg> 
      <bean class="com.jaspersoft.jasperserver.api.security.externalAuth.wrappers.spring.ldap.JSBindAuthenticator"> 
       <constructor-arg><ref local="ldapContextSource"/></constructor-arg> 
       <property name="userDnPatterns"> 
        <list> 
         <value>CN={0},CN=Users,DC=sifast,DC=infra</value> 
        </list> 
       </property> 
      </bean> 
     </constructor-arg> 
     <constructor-arg> 
      <bean class="com.jaspersoft.jasperserver.api.security.externalAuth.wrappers.spring.ldap.JSDefaultLdapAuthoritiesPopulator"> 
       <constructor-arg index="0"><ref local="ldapContextSource"/></constructor-arg> 
    </bean> 

так вот я хочу установить его в том, что: CN = {0}, CN = Users, DC = sifast, DC = инфра

3. ШАГ 3: настройка метода userSearch:

<bean id="userSearch" 
      class="com.jaspersoft.jasperserver.api.security.externalAuth.wrappers.spring.ldap.JSFilterBasedLdapUserSearch"> 
     <constructor-arg index="0"> 
      <value></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> 

здесь я использую логин "({0})" вошел искать аналогичный SamAccountName трет он прав пользователя.

это еще не работает.

мой AD Схема выглядит следующим образом: так я хочу позволить простым пользователям внутри CN = ПОЛЬЗОВАТЕЛЕЙ получить доступ enter image description here

На самом деле моя аутентификация по-прежнему не удается. Есть идеи?

ответ

0

В вашем шаге 2 конфигурации пружины файл JSBindAuthenticator отсутствующего следующую ссылку свойства:

<property name="userSearch" ref="userSearch"/>