Shiro之UsernamePasswordTokenRememberMeAuthenticationTokenAuthenticationToken
繼承關(guān)系
先看一下三者的繼承關(guān)系,會(huì)有一個(gè)比較清楚的認(rèn)識(shí)
AuthenticationToken
AuthenticationToken 用于收集用戶提交的身份(如用戶名)及憑據(jù)(如密碼)。Shiro會(huì)調(diào)用CredentialsMatcher對(duì)象的doCredentialsMatch方法對(duì)AuthenticationInfo對(duì)象和AuthenticationToken進(jìn)行匹配。匹配成功則表示主體(Subject)認(rèn)證成功,否則表示認(rèn)證失敗。
RememberMeAuthenticationToken
它繼承自AuthenticationToken,可用在跨會(huì)話記住用戶身份。注意,當(dāng)為相應(yīng)的用戶創(chuàng)建新會(huì)話時(shí),該用戶的身份將被記住,但不會(huì)被視為已通過(guò)身份驗(yàn)證
UsernamePasswordToken
用于實(shí)現(xiàn)基于用戶名/密碼主體(Subject)身份認(rèn)證。UsernamePasswordToken實(shí)現(xiàn)了 RememberMeAuthenticationToken 和 HostAuthenticationToken,可以實(shí)現(xiàn)“記住我”及“主機(jī)驗(yàn)證”的支持。
總結(jié)
一般情況下UsernamePasswordToken已經(jīng)可以滿足我們的大多數(shù)需求。當(dāng)我們遇到需要聲明自己的Token類時(shí),可以根據(jù)需求來(lái)實(shí)現(xiàn)AuthenticationToken,HostAuthenticationToken或RememberMeAuthenticationToken。
如果不需要“記住我”,也不需要“主機(jī)驗(yàn)證”,則可以實(shí)現(xiàn)AuthenticationToken;
總結(jié)
以上是生活随笔為你收集整理的Shiro之UsernamePasswordTokenRememberMeAuthenticationTokenAuthenticationToken的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: rust(64)-指针类型(1)
- 下一篇: rust(65)-rust常用指针