4
我是Spring Security的新手,我試圖實現自定義UserDetailsService
進行身份驗證。令我困擾的是,這個接口只包含一個方法loadUserByUsername(String username)
,它只接受用戶名作爲參數並返回UserDetails
。Spring Security和UserDetailsService
我想知道爲什麼這個方法沒有把任何密碼作爲參數。
Spring如何設法僅基於用戶名對用戶進行身份驗證?
我是Spring的新手,並且歡迎任何有關Api和Spring Security身份驗證過程的說明。
如果我將用戶存儲在數據庫中,是否必須提供AuthenticationProvider? – Dimitri 2014-10-10 10:57:52
是的,如果你想使用自定義的UserDetailsService。查看這個答案,瞭解如何使用您的自定義UserDetailsService設置身份驗證管理器的詳細信息:http://stackoverflow.com/questions/26285609/implement-custom-spring-security-authentication-method/26286180#26286180 – 2014-10-10 11:01:59
UserDetailsSercvice是用於授權用戶並根據需要從Ldap/DB加載用戶信息。 如果你想驗證用戶對數據庫,那麼你可以編寫自己的自定義'AuthenticationProvider'並重寫'authenticate()'方法 – Neeraj 2014-10-10 11:22:57