2010-09-22 20 views
0

Y at-il un moyen au printemps de le configurer de telle sorte qu'un powerspopulator cherchera dans plus d'un emplacement?Printemps ldap plusieurs bases de groupe dans les autoritéspopulateur

<bean id="authoritiesPopulator" class="org.springframework.security.ldap.populator.DefaultLdapAuthoritiesPopulator"> 
    <constructor-arg ref="contextSource" /> 
    <constructor-arg value="CN=Users" /> 
    <property name="groupRoleAttribute" value="CN" /> 
    <property name="searchSubtree" value="true" /> 
    <property name="rolePrefix" value="" /> 
    <property name="convertToUpperCase" value="false" /> 
</bean> 

Telle est l'idée générale, mais il y a aussi des groupes CN = OtherGroups, et maintenant ils ne sont pas chargées (évidemment). Toutefois, la définition de groupsearchbase (le second constructeur arg) sur value = "" entraîne une erreur:

Référence (s) de continuation non traitée (s); nom restant ''

Des idées?

Répondre

0

Réponse: définir la référence à suivre.

<bean id="contextSource" class="org.springframework.security.ldap.DefaultSpringSecurityContextSource"> 
    .... 
    <property name="baseEnvironmentProperties"> 
     <map> 
      <entry key="java.naming.referral" value="follow" /> 
     </map> 
    </property> 
</bean>