大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

第一部分 Java基礎
第二部分 Java進階

Java shiro面試題

1、簡單介紹一下Shiro框架?

Apache Shiro是Java的一個安全框架。使用Shiro可以非常容易的開發出足夠好的應用。其不僅可以用在JavaSE環境,也可以用在JavaEE環境。Shiro可以幫助我們完成功能:認證、授權、加密、會話管理、與Web集成、緩存等。

三個核心組件:Subject,SecurityManager和Realms。

● Subject:即“當前操作用戶”。但是在Shiro中Subject這一概念并不僅僅指人,也可以是第三方進程、后臺帳戶(Daemon Account)或其他類似事物。它僅僅意味著“當前跟軟件交互的東西”。但考慮到大多數目的和用途,你可以把它認為是Shiro的“用戶”概念。Subject代表了當前用戶的安全操作。

● SecurityManager:它是管理所有用戶的安全操作,是Shiro框架的核心,典型的Facade模式。Shiro通過SecurityManager來管理內部組件實例,并通過它來提供安全管理的各種服務。

● Realm:Realm充當了Shiro與應用安全數據間的“橋梁”或者“連接器”。也就是說,當對用戶執行認證(登錄)和授權(訪問控制)驗證時,Shiro會從應用配置的Realm中查找用戶及其權限信息。

2、Shiro主要的四個組件?

● SecurityManager

典型的Facade,Shiro通過它對外提供安全管理的各種服務。

● Authenticator

對“Who are you?”進行核實。通常涉及用戶名和密碼。這個組件負責收集principals 和credentials,并將它們提交給應用系統。如果提交的credentials跟應用系統中提供的 credentials吻合,就能夠繼續訪問,否則需要重新提交principals和credentials,或者直 接終止訪問。

● Authorizer

身份份驗證通過后,由這個組件對登錄人員進行訪問控制的篩查,比如“who can do what”,或者“who can do which actions”。Shiro采用“基于Realm”的方法,即用戶 (又稱Subject)、用戶組、角色和permission的聚合體。

● Session Manager

這個組件保證了異構客戶端的訪問,配置簡單。它是基于POJO/J2SE的,不跟任何的 客戶端或者協議綁定。

3、Shiro運行原理?

● Application Code:應用程序代碼,就是我們自己的編碼,如果在程序中需要進行權限控制,需要調用Subject的API。

●Subject:主體代表了當前用戶。所有的Subject都綁定到SecurityManager,與Subject的所有交互都會委托給SecurityManager,可以將Subject當成一個門面,而真正執行者是SecurityManager。

● SecurityManage:安全管理器,所有與安全有關的操作都會與SecurityManager交互,并且它管理所有的Subject。

● Realm:域shiro是從Realm來獲取安全數據(用戶,角色,權限)。就是說SecurityManager

要驗證用戶身份,那么它需要從Realm獲取相應的用戶進行比較以確定用戶身份是否 合法;也需要從Realm得到用戶相應的角色/權限進行驗證用戶是否能進行操作;可以 把Realm看成DataSource,即安全數據源。

4、Shiro的四種權限控制方式?

● url級別權限控制

● 方法注解權限控制

● 代碼級別權限控制

5、什么是粗顆粒和細顆粒權限?

對資源類型的管理稱為粗顆粒度權限控制,即只控制到菜單、按鈕、方法。粗粒度的例子比如:用戶具有用戶管理的權限,具有導出訂單明細的權限。

對資源實例的控制稱為細顆粒度權限管理,即控制到數據級別的權限,比如:用戶只允許修改本部門的員工信息,用戶只允許導出自己創建的訂單明細。

● 總結:

粗顆粒權限:針對url鏈接的控制。

細顆粒權限:針對數據級別的控制。

比如:衛生局可以查詢所有用戶,衛生室只可以查詢本單位的用戶。

6、粗顆粒和細顆粒如何授權?

對于粗顆粒度的授權可以很容易做系統架構級別的功能,即系統功能操作使用統一的粗顆粒度的權限管理。對于細顆粒度的授權不建議做成系統架構級別的功能,因為對數據級別的控制是系統的業務需求,隨著業務需求的變更業務功能變化的可能性很大,建議對數據級別的權限控制在業務層個性化開發,比如:用戶只允許修改自己創建的商品信息可以在service接口添加校驗實現,service接口需要傳入當前操作人的標識,與商品信息創建人標識對比,不一致則不允許修改商品信息。

粗顆粒權限:可以使用過慮器統一攔截url。

細顆粒權限:在service中控制,在程序級別來控制,個性化編程。

全部教程
主站蜘蛛池模板: 九九久久亚洲综合久久久 | 天天综合亚洲国产色 | 日本欧美强乱视频在线 | 国产亚洲视频在线 | 国产欧美在线不卡 | 色综合久久加勒比高清88 | 一级毛片在线免费观看 | 久久亚洲国产伦理 | 老子影院午夜伦手机不卡无 | 婷婷四房色播 | 伊人五月在线 | 伊人资源 | 97视频久久 | 99re热线精品视频 | 日本亚洲一区二区三区 | 四虎永久在线精品国产馆v视影院 | 高清在线精品一区二区 | 国产精品久久久影院 | 一区二区三区在线免费 | 免费高清在线影片一区 | 草草伊人 | 91亚洲国产成人久久精品网址 | 男人草女人视频 | 特黄特黄一级高清免费大片 | 一级a做爰片欧欧美毛片4 | 国产在线播放成人免费 | 4虎影院在线观看 | a在线观看免费视频 | 久久久亚洲伊人色综合网站 | 精品哟啊呦v视频在线观看 精品哟哟国产在线观看 | 九九re6精品视频在线观看 | 亚洲国产精品久久久久久网站 | 97影院理论片| 欧美大尺度 边吃奶边做 | 夜夜爽网站 | 久久www免费人成精品香蕉 | 国产老年人性视频 | 亚洲va在线va天堂成人 | 日韩在线视频免费播放 | 22222se男人的天堂 | 色汉综合|