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

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 常見問題 快問快答之shiro框架面試題

快問快答之shiro框架面試題

更新時間:2023-02-07 15:32:45 來源:動力節點 瀏覽1048次

1.Apache Shiro的三大核心組件:

  • Subject:當前用戶的操作(所有的Subject實例都被綁定到一個SecurityManager上)
  • SecurityManager:用于管理所有的Subject(Shiro架構的心臟,用來協調內部各安全組件,管理內部組件實例,并通過它來提供安全管理的各種服務)
  • Realms:用于進行權限信息的驗證(本質上是一個特定的DAO,必須指定至少一個Realm用來進行身份驗證和授權 )

Authentication和Authorization:

在Shiro的用戶權限認證過程中其通過兩個方法來實現:

  • Authentication:是驗證用戶身份的過程
  • Authorization:是授權訪問控制,用于對用戶進行的操作進行認證授權,證明該用戶是否允許進行當前操作,如訪問某個鏈接,某個資源文件等。

其他組件:

除了上述幾個組件外:Shiro還有幾個組件:

  • SessionManager:Shiro為任何應用提供了一個會話編程范式。
  • CacheManager:對Shiro的其他組件提供緩存支持。

2.Shiro的優點:

  1. 簡單你的身份認證,支持多種數據源
  2. 非常簡單的加密API
  3. 對角色的簡單的授權,支持細粒度的授權(方法級)
  4. 支持一級緩存,以提升應用程序的性能
  5. 內置的基于POJO企業會話管理,適用于Web以及非Web的環境
  6. 不跟任何的框架或者容器捆綁,可以獨立運行

3.比較Spring Security和Apache Shiro:

  • 相比Spring Security,Shiro在保持強大功能的同時,使用簡單性和靈活性
  • Spring Security:即便是一個一個簡單的請求,最少得經過它的8個Filter
  • Spring Security必須在Spring的環境下使用
  • 初學Spring Security,曲線還是較大,需要深入學習其源碼呵呵框架,配置起來也較費力

4.Shiro如何自實現認證:

Shiro的認證過程由Realm執行,SecurityManager會調用Realm包下的getAuthenticationInfo(AuthenticationToken token)方法。

實際開發中,通常提供org.apache.shiro.realm.AuthenticatingRealm 的實現類,并在該實現類中提供doGetAuthenticationInfo(AuthenticationToken token)方法的具體實現。

5.Shiro如何實現自實現授權:

實際開發中,通常提供org.apache.shiro.realm.AuthenticatingRealm 的實現類,并提供doGetAuthorizationInfo(PrincipalCollection principals)方法的具體實現。

配置ShiroConfig

創建一個方法并給注解@Bean將其交給Spring進行管理,返回類型為ShiroFilterFactoryBean類型 參數為SecurityManager securityManager

在方法中new ShiroFilterFactoryBean(),運用setSecurityManager()把securityManager傳進去進行設置

運用setLoginUrl讓用戶在訪問某個接口需要登錄時跳轉頁面,運用setUnauthorizedUrl讓用戶登錄后沒有權限時跳轉頁面

new LinkedHashMap<>();把相關路徑所需的權限進行設置,之后把其交給setFilterChainDefinitionMap()中。

創建一個方法并給注解@Bean將其交給Spring進行管理,返回類型為SecurityManager類型的securityManager()方法,new DefaultWebSecurityManager();

因其securityManager可以管理各種組件,所以可以綁定各種自定義的組件,設置綁定realm推薦放到最后,不然某些情況下不生效。

6.Shiro有哪些組件:

Authentication:身份認證/登錄,驗證用戶是不是擁有相應的身份。

Authorization:授權,即權限驗證,驗證某個已認證的用戶是否擁有某個權限

Session Manager:會話管理,即用戶登錄后就是一次會話,在沒有退出之前,它的所有信息都在會話中;會話可以是普通JavaSE環境的,也可以是如Web環境的;

Crypotgraphy:加密,保護數據的安全行,如密碼加密存儲到數據庫,而不是明文存儲;

Web Support:Web支持,可以非常容易的集成到Web環境。

Remember me:記住我,這是一個非常常見的功能,即一次登錄后,下次再來的話不用登錄了。

以上就是“快問快答之shiro框架面試題”,你能回答上來嗎?如果想要了解更多的Java面試題相關內容,可以關注動力節點Java官網。

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 九色亚洲 | 日韩欧美成人免费中文字幕 | 色黄啪啪网18以下勿进动画 | 亚洲第一色网 | 成人无遮挡毛片免费看 | 伊人激情在线 | 日韩在线一区二区 | 国产无遮挡裸体免费视频在线观看 | 91在线精品亚洲一区二区 | 国产女人的一级毛片视频 | 久久99精品久久久久久园产越南 | 一级一级毛片免费播放 | 久久久久无码国产精品一区 | 亚洲国产91| 很黄很色又爽很黄很色又爽 | 久久久久免费视频 | 国产精品欧美日韩一区二区 | 欧美在线免费播放 | 99视频有精品视频免费观看 | 精品视频在线v | 欧美三级黄视频 | 色偷偷综合网 | 日韩理论片 | 三级全黄的全黄三级三级播放 | 在线免费观看黄色大片 | 男女免费爽爽爽在线视频 | 日本欧美小视频 | 日日干夜夜操s8 | 国产色综合久久无码有码 | 翁熄性放纵苏玥完整小说 | 日本黄色影院在线观看 | 欧美人与物videos另类3d | 中文字幕精品亚洲无线码二区 | 久久精品国产欧美日韩亚洲 | 波多野氏免费一区 | 成人看片黄a在线观看 | 国产丝袜第一页 | 99视频免费在线观看 | 欧美性受xxxx视频 | 欧美片在线 | 国产在线高清视频 |