使用Spring Security进行AD用户验证
<s:ldap-server id="ldapServer" url="ldap://168.11.6.16:389/dc=moa,dc=com" manager-dn="moa\test8" manager-password="123456" />
<s:ldap-user-service user-search-base="ou=cibuser" user-search-filter="(sAMAccountName={0})" server-ref="ldapServer"/>
<bean id="ldapAuthProvider"
autowire="default">
<s:custom-authentication-provider/>
<constructor-arg>
<bean value="ou=user"/>
<constructor-arg index="1" value="(sAMAccountName={0})"/>
<constructor-arg index="2" ref="ldapServer" />
</bean>
</property>
</bean>
</constructor-arg>
<constructor-arg>
<bean value="cn"/>
<property name="groupSearchFilter" value="(member={0})"/>
<property name="searchSubtree" value="true"/>
</bean>
</constructor-arg>
</bean>
说明:
sAMAccountName是Active Directory中用户登录名的属性名称。
注意http标签里auto-config的配置,当为true里需要userdetailsservice(remeber-me用的),否则会报No UserDetailsService registered错
member={0},是由于GROUP下记录某用户属于某组是用这个格式
ou=user,替换成可以进行验证的组织单元