【发布时间】:2016-04-26 16:15:35
【问题描述】:
我的项目中有一个特殊要求,即针对 Active Directory 的身份验证应使用特殊(“代理”)用户完成。也就是说,首先我们必须使用这个特殊用户登录到 AD,然后我们应该“查询”AD 关于“真实”用户(尝试登录我的应用程序的用户)的凭据是否正确,使用“代理”用户会话。
有没有办法使用弹簧安全性来做到这一点? ...现在我正在使用org.springframework.security.ldap.authentication.ad.ActiveDirectoryLdapAuthenticationProvider。
这些是我当前的依赖项:
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-ldap</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
这是通过spring的身份验证部分的配置:
<beans:bean id="ldapAuthProvider" class="org.springframework.security.ldap.authentication.ad.ActiveDirectoryLdapAuthenticationProvider">
<beans:constructor-arg>
<beans:value>${security.ad.domain}</beans:value>
</beans:constructor-arg>
<beans:constructor-arg>
<beans:value>${security.ad.url}</beans:value>
</beans:constructor-arg>
</beans:bean>
<authentication-manager>
<authentication-provider ref="ldapAuthProvider" />
</authentication-manager>
感谢您的帮助!!
【问题讨论】:
标签: java spring spring-security-ldap