2012-09-06 93 views
2

我可以通過Spring Security項目對LDAP進行身份驗證並將身份驗證用戶設置爲針對數據庫?如何在Spring Security中執行LDAP身份驗證和數據庫授權

謝謝!

+0

歡迎來到Stack Overflow!我們鼓勵你[研究你的問題](http://stackoverflow.com/questions/how-to-ask)。如果你已經[嘗試了某些東西](http://whathaveyoutried.com/),請將其添加到問題中 - 如果沒有,請先研究並嘗試您的問題,然後再回來。 – 2012-10-01 10:11:47

回答

0

是的,您需要一個LdapBindAuthenticator和一個基於DAO的AuthoritiesPopulator

1

我已經實現了這一解決方案,回答上述卡梅斯:

<authentication-manager > 
    <authentication-provider ref="ldapAuthProvider" />    
</authentication-manager> 


<beans:bean id="contextSource" 
    class="org.springframework.security.ldap.DefaultSpringSecurityContextSource">   
<beans:constructor-arg value="ldap://IP:port/...."/> 

</beans:bean> 

<beans:bean id="ldapAuthProvider" 
    class="org.springframework.security.ldap.authentication.LdapAuthenticationProvider"> 
    <beans:constructor-arg> 
    <beans:bean class="org.springframework.security.ldap.authentication.BindAuthenticator"> 
    <beans:constructor-arg ref="contextSource"/> 
    <beans:property name="userSearch" ref="ldapUserSearch" /> 
    </beans:bean> 
    </beans:constructor-arg> 
    <beans:constructor-arg> 
    <beans:bean 
    class="prpa.athos.security.listener.MyLDAPAuthorities"> 
    </beans:bean> 
    </beans:constructor-arg> 
    </beans:bean> 
    <beans:bean id="authenticationSuccessListener" 
    class="prpa.athos.security.listener.AuthenticationSuccessListener"> 
    </beans:bean>   
    <beans:bean id="ldapUserSearch" 
    class="org.springframework.security.ldap.search.FilterBasedLdapUserSearch"> 
    <beans:constructor-arg index="0" value=""/> 
    <beans:constructor-arg index="1" value="(uid={0})"/> 
    <beans:constructor-arg index="2" ref="contextSource" /> 
    </beans:bean> 

在課程MyLDAPAuthorities我實現了CLASSE LdapAuthoritiesPopulator在獲得當局形成數據庫。

相關問題