Java Spring安全性、Kerberos扩展和AD

Java Spring安全性、Kerberos扩展和AD,java,active-directory,spring-security,spring-security-kerberos,Java,Active Directory,Spring Security,Spring Security Kerberos,我试图在我的项目上使用Kerberos身份验证。这是为我的公司提供的一项内部服务,我想对用户进行身份验证,并从我们的Active Directory中检索用户组。 为此,我使用了Spring安全性、Kerberos扩展和我们公司的AD 问题是:我可以使用Kerberos进行身份验证,但我们在AD上的域是“WAN.CORP.COM”。所以我让我的用户username@WAN.CORP.COM,并且在广告上没有我可以问的过滤器(userPrincipalName是这样的username@corp.c

我试图在我的项目上使用Kerberos身份验证。这是为我的公司提供的一项内部服务,我想对用户进行身份验证,并从我们的Active Directory中检索用户组。 为此,我使用了Spring安全性、Kerberos扩展和我们公司的AD

问题是:我可以使用Kerberos进行身份验证,但我们在AD上的域是“WAN.CORP.COM”。所以我让我的用户username@WAN.CORP.COM,并且在广告上没有我可以问的过滤器(userPrincipalName是这样的username@corp.com)

My security.xml包含:

<sec:ldap-user-service id="ldapUserService" server-ref="ldapCorp" user-search-filter="(userPrincipalName={0})" />
<sec:ldap-server id="ldapCorp" url="ldap://ldap.wan.corp.com:389/DC=wan,DC=corp,DC=com" manager-dn="CN=ldap read,OU=CORP,DC=wan,DC=corp,DC=com" manager-password="pass" />

但是SpringSecurity发送了一个异常,因为它无法检索user@WAN.CORP.COM...

有人能帮我吗?我想直接通过Spring Security完成,如果不行,我想我可以在DummyUserDetails服务中获取信息,对吗


非常感谢,很抱歉我的英语不好…

Spring security 3.1已经实现了LDAP/AD auth

请看这里:

您可以提供自己的UserDetails服务实现,将LDAPUserDetails服务注入其中

在loadUserByUsername方法中,您可以修改用户名,然后使用修改后的用户名调用LDAPUserDetails服务的loadUserByUsername