내 응용 프로그램 인증에 OpenDS를 사용하고 있습니다. 사용자를 성공적으로 인증 할 수는 있지만 사용자의 역할을 얻을 수는 없습니다. 다음은스프링 보안 - 사용자 역할 가져 오기
<bean id="secondLdapProvider" class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider">
<constructor-arg>
<bean class="org.springframework.security.ldap.authentication.BindAuthenticator">
<constructor-arg ref="contextSource" />
<property name="userSearch">
<bean id="userSearch" class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch">
<constructor-arg index="0" value="ou=people"/>
<constructor-arg index="1" value="(uid={0})"/>
<constructor-arg index="2" ref="contextSource" />
</bean>
</property>
</bean>
</constructor-arg>
<constructor-arg>
<bean class="org.springframework.security.ldap.userdetails.DefaultLdapAuthoritiesPopulator">
<constructor-arg ref="contextSource" />
<constructor-arg value="ou=groups" />
<property name="groupSearchFilter" value="(member={0})"/>
<property name="rolePrefix" value="ROLE_"/>
<property name="searchSubtree" value="true"/>
<property name="convertToUpperCase" value="true"/>
</bean>
</constructor-arg>
</bean>
는 역할을 얻기 위해 제발 도와주세요 ..... XML 파일의 구성입니다.
예,하지만 목록의 길이를 확인할 때 어떤 역할도하지 않습니다. 다음은 OpenDS의 LDIF이며 사용자가 가진 역할입니다. DN : CN = role1, OU = 그룹, DC = 아닐, DC = COM CN이 : 최고 방법 objectClass : objectclass와 role1 groupOfUniqueNames가 의 uniqueMember : UID = user.2, OU = 사람들, DC = 아닐, DC = COM uniqueMember : user1, ou = 사용자, dc = anil, dc = com 여기서 user1에 대한 role1이 제공됩니다. 그러나 user1에 대한 역할을 얻으려고 할 때 어떤 역할도 반환하지 않습니다. XML에서 일부 구성 매개 변수가 누락되었다고 느낍니다. –
위의 업데이트를 참조하십시오. – pap