0
我正在使用Cas疊加方法。我不時遇到進入/ cas /服務/管理的問題。授權失敗/服務/管理
「 拒絕訪問 UsernameNotFoundException :: AAA 」
有時竟讓我在deployerConfigContext.xml裏我已經宣佈 「AAA」 的用戶。
<sec:user-service id="userDetailsService">
<sec:user name="aaa" password="aaa" authorities="ROLE_ADMIN" />
</sec:user-service>
什麼能導致這種不一致的行爲?從日誌中顯示出認證
摘錄去確定
2013-07-31 11:53:05,332 INFO [org.jasig.cas.authentication.AuthenticationManagerImpl] - <org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler successfully authenticated [username: aaa]>
2013-07-31 11:53:05,333 INFO [org.jasig.cas.authentication.AuthenticationManagerImpl] - <Resolved principal aaa>
2013-07-31 11:53:05,333 INFO [org.jasig.cas.authentication.AuthenticationManagerImpl] - <org.jasig.cas.authentication.[email protected]4b4bc1e authenticated aaa with credential [username: aaa].>
一個有趣的想法。然後它強制另一個問題。爲什麼身份驗證處理程序[org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler在我的情況]可用於其他受保護的頁面? –
如果我正在閱讀日誌,請右鍵https://gist.github.com/Alua-Kinzhebayeva/9f27aa1bc84126577e56,然後org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler處理認證。 –
嗯,我不明白爲什麼用戶'QQ'不會驗證'QQ'的密碼。查看SimpleTestUsernamePasswordAuthentic ationHandler,它不會進行身份驗證的唯一方式是用戶名和密碼不匹配。 '如果(StringUtils.hasText(用戶名)&& StringUtils.hasText(密碼) && username.equals(getPasswordEncoder()。編碼(密碼))){ 日誌 的.debug( 「用戶[」 +用戶名 +「 ]已成功通過身份驗證。「); 返回true; }' – wickdawg