【发布时间】:2015-01-28 20:24:52
【问题描述】:
我正在使用 Spring Security 和 Spring LDAP 开发一个应用程序。 这是我的 spring-security.xml 的一部分:
<authentication-manager alias="authenticationManager">
<ldap-authentication-provider
user-search-filter="sAMAccountName={0}"
user-search-base="OU=UK,OU=Domain Objects,dc=test,dc=test1"
group-search-filter="member={0}"
group-search-base="OU=_Groups,OU=UK,OU=Domain Objects,dc=test,dc=test1"
group-role-attribute="cn"
role-prefix="ROLE_">
</ldap-authentication-provider>
</authentication-manager>
<ldap-server url="ldap://host:389/"
manager-dn="managerUser"
manager-password="ManagerPassword" />
现在我需要对用户属性做一些逻辑。我想知道是否有办法在登录阶段获取该属性,或者每次需要该属性时都需要在 LDAP 上进行搜索。
现在上网看有点迷茫,因为我在网上找到了很多获取自定义属性的方法:扩展DAO中的ContextMapper或者AbstractContextMapper或者扩展LdapUserDetailsMapper。
您能帮我找到正确的解决方案吗?我认为最好的方法是有一个对象,我可以在登录阶段放置我需要的属性,而不是每次需要该属性时都查询 LDAP。 谢谢
【问题讨论】:
标签: java spring spring-security spring-ldap