Shiro是一個(gè)權(quán)限控制框架,雖然簡(jiǎn)單,但是非常強(qiáng)大,使用了和比較簡(jiǎn)潔易懂的認(rèn)證和授權(quán)方式,Apache Shiro提供了認(rèn)證,授權(quán),加密,和會(huì)話管理功能。
Apache Shiro 的三大核心組件
1、Subject :當(dāng)前用戶的操作
2、SecurityManager:用于管理所有的Subject
3、Realms:用于進(jìn)行權(quán)限信息的驗(yàn)證
ubject:即當(dāng)前用戶,在權(quán)限管理的應(yīng)用程序里往往需要知道誰(shuí)能夠操作什么,誰(shuí)擁有操作該程序的權(quán)利,shiro中則需要通過(guò)Subject來(lái)提供基礎(chǔ)的當(dāng)前用戶信息,Subject 不僅僅代表某個(gè)用戶,也可以是第三方進(jìn)程、后臺(tái)帳戶(Daemon Account)或其他類似事物。
SecurityManager:即所有Subject的管理者,這是Shiro框架的核心組件,可以把他看做是一個(gè)Shiro框架的全局管理組件,用于調(diào)度各種Shiro框架的服務(wù)。
Realms:Realms則是用戶的信息認(rèn)證器和用戶的權(quán)限人證器,我們需要自己來(lái)實(shí)現(xiàn)Realms來(lái)自定義的管理我們自己系統(tǒng)內(nèi)部的權(quán)限規(guī)則。
Apache Shiro說(shuō)明
安全是企業(yè)應(yīng)用中不可缺少的功能,在眾多權(quán)限框架中,Shiro(其前身是JSecurity)因其簡(jiǎn)單而又不失強(qiáng)大的特點(diǎn)引起了不少開發(fā)者的注意。隨著Grails的關(guān)注度越來(lái)越高,在Grails社區(qū)也出現(xiàn)了Shiro的插件。
Shiro最早的名字是JSecurity,后來(lái)更名為Shiro并成為Apache的孵化項(xiàng)目。這次改名也同樣影響了Grails Shiro Plugin。它最早在Shiro還未改名之前就已經(jīng)存在了,后來(lái)因?yàn)镾hiro的名字變更,也就一道跟著“改名換姓”。由于Grails Shiro Plugin中已經(jīng)包含了Shiro相關(guān)的Jar,因此對(duì)于插件的使用者而言,不必專門下載Shiro。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版