使用 Acegi 保护 Java 应用程序,第 2 部分: 使用 LDAP 目录服务器
2010-03-18 00:00:00 来源:WEB开发网LdapAuthenticationProvider 构造函数的第一个参数是 authenticator,该参数通过检查用户的用户名和密码对 LDAP 目录的用户进行身份验证。完成身份验证后,第二个参数 populator 将从 LDAP 目录中检索有关该用户的访问权限(或业务角色)信息。
以下小节将向您展示如何配置验证器和填充器 bean。
配置验证器
authenticator bean 将检查具有给定用户名和密码的用户是否存在于 LDAP 目录中。Acegi 提供了名为 org.acegisecurity.providers.ldap.authenticator.BindAuthenticator 的验证器类,它将执行验证用户名和密码所需的功能。
配置 authenticator bean,如清单 5 所示:
清单 5. 配置验证器 bean
<bean id="authenticator"
class="org.acegisecurity.providers.ldap.authenticator.BindAuthenticator">
<constructor-arg><ref local="initialDirContextFactory"/></constructor-arg>
<property name="userDnPatterns">
<list>
<value>uid={0},ou=employees,ou=partners</value>
<value>uid={0},ou=customers,ou=partners</value>
<value>uid={0},ou=suppliers,ou=partners</value>
</list>
</property>
<property name="userSearch"><ref local="userSearch"/></property>
</bean>
在清单 5 中,BindAuthenticator 构造函数具有一个参数,使用 <constructor-arg> 标记的形式。清单 5 中参数的名称为 initialDirContextFactory。该参数实际上是另一个 bean,稍后您将学习如何配置该 bean。
更多精彩
赞助商链接