我从 Spring LDAP 开始,我正在阅读很多帖子并开始了解它是如何工作的。我想做的是标准登录。当登录完成后,通过他们的 LDAP (OU)/(member of) 属性在 java 代码中管理用户。也可以在实际登录时获取用户角色。我的第一个简单登录代码:<authentication-manager erase-credentials="true"> <authentication-provider ref="ldapActiveDirectoryAuthProvider"/></authentication-manager><beans:bean id="ldapActiveDirectoryAuthProvider"class="org.springframework.security.ldap.authentication.ad.ActiveDirectoryLdapAuthenticationProvider"> <beans:constructor-arg value="company.local" /> <beans:constructor-arg value="ldap://servername.company.local" /></beans:bean>我应该使用模板吗?什么 bean id 可以很好地开始完成我想做的事情?没有 LDIF?
1 回答
慕婉清6462132
TA贡献1804条经验 获得超2个赞
Spring Security 有几个示例演示如何使用 LDAP 作为后端进行身份验证。每个示例都使用嵌入式 LDAP 服务器以便于演示,但可以将配置更改为指向 AD 服务器。对于角色,请查看LdapAuthoritiesPopulator.
我不确定您所说的模板是什么意思,但您可以searchFilter像这样指定自定义:
<beans:bean id="ldapActiveDirectoryAuthProvider"
class= "org.springframework.security.ldap.authentication.ad.ActiveDirectoryLdapAuthenticationProvider">
<beans:constructor-arg value="company.local" />
<beans:constructor-arg value="ldap://servername.company.local" />
<beans:property name="searchFilter" value="customUserAttribute={0}"/>
</beans:bean>
默认为(&(objectClass=user)(userPrincipalName={0})).
LDIF 仅在您使用嵌入式服务器时对 Spring Security 很重要,这可能会在集成测试中为您发挥作用。
添加回答
举报
0/150
提交
取消