如何在Spring安全性中进行LDAP身份验证和数据库授权?

时间:2009-05-28 09:30:41

标签: java security spring

我是Spring的新手,所以这个问题可能看起来很明显。

我正在尝试实现Spring安全性,我的要求是针对LDAP服务器验证用户名/密码,一旦用户通过身份验证,我需要从关系数据库中检索用户角色。

是否可以在Spring安全性中执行此操作?

1 个答案:

答案 0 :(得分:4)

内置ldap身份验证管理器将用户的身份验证和授权分为两部分 您可以配置基于LDAP的身份验证管理器,如下所示。

<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager">
    <property name="providers">
        <list>
            <ref local="ldapAuthenticationProvider"/>
        </list>
    </property> 
</bean>

身份验证提供程序配置如下。

<bean id="ldapAuthenticationProvider" class="org.acegisecurity.providers.ldap.LdapAuthenticationProvider">
    <constructor-arg><ref local="authenticator"/></constructor-arg>
    <constructor-arg><ref local="populator"/></constructor-arg>
    <property name="userCache"><ref local="userCache"/></property>
</bean>

我不知道是否有内置的populator可以做你想要的,但你可以根据需要开发自己的。