一、Shiro整體概述
1.簡介
Apache Shiro是Java的一個(gè)安全框架,功能強(qiáng)大,使用簡單,Shiro為開發(fā)人員提供了一個(gè)直觀而全面的認(rèn)證(登錄),授權(quán)(判斷是否含有權(quán)限),加密(密碼加密)及會(huì)話管理(Shiro內(nèi)置Session)的解決方案.
2.Shiro組件
3.Shiro架構(gòu)
3.1 外部架構(gòu)(以應(yīng)用程序角度)
3.2 內(nèi)部架構(gòu)
4. Shiro的過濾器
過濾器簡稱 | 對(duì)應(yīng)的java類 |
anon | org.apache.shiro.web.filter.authc.AnonymousFilter |
authc | org.apache.shiro.web.filter.authc.FormAuthenticationFilter |
authcBasic | org.apache.shiro.web.filter.authc.BasicHttpAuthenticationFilter |
perms | org.apache.shiro.web.filter.authz.PermissionsAuthorizationFilter |
port | org.apache.shiro.web.filter.authz.PortFilter |
rest | org.apache.shiro.web.filter.authz.HttpMethodPermissionFilter |
roles | org.apache.shiro.web.filter.authz.RolesAuthorizationFilter |
ssl | org.apache.shiro.web.filter.authz.SslFilter |
user | org.apache.shiro.web.filter.authc.UserFilter |
logout | org.apache.shiro.web.filter.authc.LogoutFilter |
挑幾個(gè)重要的說明一下:
anon:匿名過濾器,不登錄也可以訪問的資源使用,比如首頁,一些靜態(tài)資源等
authc:認(rèn)證過濾器,登錄成功后才能訪問的資源使用
perms:授權(quán)過濾器,必須具備某種權(quán)限才能訪問
roles:角色過濾器,必須具備某種角色才能訪問
注意:這么多過濾器,使用起來肯定不方便,Shiro框架也考慮到了這一點(diǎn),所以有一個(gè)過濾器,一個(gè)頂十個(gè),即DelegatingFilterProxy.
5. Shiro與Spring整合
5.1 pom.xml
org.apache.shiro shiro-spring 1.3.2
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。