黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

第一部分 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中控制,在程序級別來控制,個性化編程。

全部教程
主站蜘蛛池模板: 欧美综合精品 | 一级毛片一级毛片一级毛片aa | 97精品国产自在现线免费观看 | 日韩在线视频一区二区三区 | 特黄一级 | 美国伊人网| avtt亚洲一区中文字幕 | 中文三 级 黄 色 片 | 免费特黄 | 天天毛片 | 天天插天天插 | 午夜激情影院 | 精品xxxxxbbbb欧美中文 | 国产伦精品一区三区视频 | 久久精品国产波多野结衣 | 看黄视频网站 | 中文亚洲日韩欧美 | v天堂在线| 91精品欧美综合在线观看 | 国产成人久久精品激情91 | 韩国一级做a爰片性色毛片 韩国一级黄色大片 | 男女羞羞的视频网站在线观看 | 国亚洲欧美日韩精品 | 国产一区二区三区亚洲欧美 | 中文字幕一区二区三区永久 | 韩日色 | 日韩国产欧美成人一区二区影院 | 全黄一级裸片视频在线观看 | 亚洲国产日产韩国欧美综合 | 欧美乱大交xxxx | 免费啪视频 | 在线看欧美日韩中文字幕 | 欧美在线播放成人免费 | 成人一区二区免费中文字幕 | 国内精自品线一区91 | 射黑丝袜 | 国产精品一区二区免费 | 成年人在线播放 | 日韩视频精品在线 | 国产丝袜美女 | 欧美乱理伦另类视频 |