国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Shiro和Spring Security安全框架對比

這篇具有很好參考價值的文章主要介紹了Shiro和Spring Security安全框架對比。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一、前言

Apache Shiro是Java的一個安全框架。目前,使用Apache Shiro的人越來越多,因為它相當簡單。與Spring Security對比,Shiro可能沒有Spring Security做的功能強大,但是在實際工作時可能并不需要那么復雜的東西,所以使用小而簡單的Shiro就足夠了。下面對這兩個安全框架進行了對比,可以根據(jù)你的項目需要選出適合的安全框架。
Shiro和Spring Security安全框架對比

二、Shiro架構與功能介紹

1.認證與授權相關概念

安全實體:系統(tǒng)需要保護的具體對象數(shù)據(jù)
權限:系統(tǒng)相關的功能操作,例如基本的CRUD
Authentication:身份認證/登錄,驗證用戶是不是擁有相應的身份;
Authorization:授權,即權限驗證,驗證某個已認證的用戶是否擁有某個權限;即判斷用戶是否能做事情,常見的如:驗證某個用戶是否擁有某個角色。或者細粒度的驗證某個用戶對某個資源是否具有某個權限;
Session Manager:會話管理,即用戶登錄后就是一次會話,在沒有退出之前,它的所有信息都在會話中;會話可以是普通JavaSE環(huán)境的,也可以是如Web環(huán)境的;
Cryptography:加密,保護數(shù)據(jù)的安全性,如密碼加密存儲到數(shù)據(jù)庫,而不是明文存儲;
Web Support:Web支持,可以非常容易的集成到Web環(huán)境;
Caching:緩存,比如用戶登錄后,其用戶信息、擁有的角色/權限不必每次去查,這樣可以提高效率;
Concurrency:shiro支持多線程應用的并發(fā)驗證,即如在一個線程中開啟另一個線程,能把權限自動傳播過去;
Testing:提供測試支持;
Run As:允許一個用戶假裝為另一個用戶(如果他們允許)的身份進行訪問;
Remember Me:記住我,這個是非常常見的功能,即一次登錄后,下次再來的話不用登錄了。

2.Shiro四大核心功能

Authentication,Authorization,Cryptography,Session Management
Shiro和Spring Security安全框架對比

3.Shiro三個核心組件

Subject, SecurityManager 和 Realms.

Subject:主體,代表了當前“用戶”,這個用戶不一定是一個具體的人,與當前應用交互的任何東西都是Subject,如網(wǎng)絡爬蟲,機器人等;即一個抽象概念;所有Subject都綁定到SecurityManager,與Subject的所有交互都會委托給SecurityManager;可以把Subject認為是一個門面;SecurityManager才是實際的執(zhí)行者;
SecurityManager:安全管理器;即所有與安全有關的操作都會與SecurityManager交互;且它管理著所有Subject;可以看出它是Shiro的核心,它負責與后邊介紹的其他組件進行交互,如果學習過SpringMVC,你可以把它看成DispatcherServlet前端控制器;
Realm:域,Shiro從從Realm獲取安全數(shù)據(jù)(如用戶、角色、權限),就是說SecurityManager要驗證用戶身份,那么它需要從Realm獲取相應的用戶進行比較以確定用戶身份是否合法;也需要從Realm得到用戶相應的角色/權限進行驗證用戶是否能進行操作;可以把Realm看成DataSource,即安全數(shù)據(jù)源。

三、Spring Security簡介

Spring Security是一個能夠為基于Spring的企業(yè)應用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。它提供了一組可以在Spring應用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反轉(zhuǎn)Inversion of Control ,DI:Dependency Injection 依賴注入)和AOP(面向切面編程)功能,為應用系統(tǒng)提供聲明式的安全訪問控制功能,減少了為企業(yè)系統(tǒng)安全控制編寫大量重復代碼的工作。

它是一個輕量級的安全框架,它確?;赟pring的應用程序提供身份驗證和授權支持。它與Spring MVC有很好地集成,并配備了流行的安全算法實現(xiàn)捆綁在一起。安全主要包括兩個操作“認證”與“驗證”(有時候也會叫做權限控制)?!罢J證”是為用戶建立一個其聲明的角色的過程,這個角色可以一個用戶、一個設備或者一個系統(tǒng)?!膀炞C”指的是一個用戶在你的應用中能夠執(zhí)行某個操作。在到達授權判斷之前,角色已經(jīng)在身份認證過程中建立了。

它的設計是基于框架內(nèi)大范圍的依賴的,可以被劃分為以下幾塊。

Web/Http 安全:這是最復雜的部分。通過建立 filter 和相關的 service bean 來實現(xiàn)框架的認證機制。當訪問受保護的 URL 時會將用戶引入登錄界面或者是錯誤提示界面。
業(yè)務對象或者方法的安全:控制方法訪問權限的。
AuthenticationManager:處理來自于框架其他部分的認證請求。
AccessDecisionManager:為 Web 或方法的安全提供訪問決策。會注冊一個默認的,但是我們也可以通過普通 bean 注冊的方式使用自定義的 AccessDecisionManager。
AuthenticationProvider:AuthenticationManager 是通過它來認證用戶的。
UserDetailsService:跟 AuthenticationProvider 關系密切,用來獲取用戶信息的。
Shiro和Spring Security安全框架對比文章來源地址http://www.zghlxwxcb.cn/news/detail-499332.html

四、Shiro和Spring Security比較

  • Shiro比Spring更容易使用、實現(xiàn)和理解。
  • Spring Security更加知名的唯一原因是因為品牌名稱“Spring”以簡單而聞名,但諷刺的是很多人發(fā)現(xiàn)使用Spring Security很困難。但是,Spring Security卻有更好的社區(qū)支持。
  • Apache Shiro與Spring Security處理密碼學方面相比有一個額外的模塊。
  • Spring Security 與Spring 結(jié)合地較好,如果項目用的springmvc ,使用起來很方便。但是如果項目中沒有用到spring框架,那就不要考慮它了。
  • Shiro 功能強大、且簡單、靈活。是Apache基金會下的項目,比較可靠,且不跟任何框架或者容器綁定,可以獨立運行。

到了這里,關于Shiro和Spring Security安全框架對比的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Spring Security(安全框架)

    (1)Spring Security 是一個高度自定義的 安全框架 。利用Spring IoC/DI和AOP功能,為系統(tǒng)提供了聲明式安全訪問控制功能,減少了為系統(tǒng)安全而編寫大量重復代碼的工作。 (2)認證(Authentication): 應用程序確認用戶身份的過程,常見認證:登錄。 (3)身份(principal)/主體(

    2023年04月13日
    瀏覽(19)
  • 【Spring Security】安全框架學習(八)

    3.0 權限系統(tǒng)的作用 例如一個學校圖書館的管理系統(tǒng),如果是普通學生登錄就能看到借書還書相關的功能,不可能讓他看到并且去使用添加書籍信息,刪除書籍信息等功能。但是如果是一個圖書館管理員的賬號登錄了,應該就能看到并使用添加書籍信息,刪除書籍信息等功能

    2024年02月09日
    瀏覽(21)
  • 【Spring Security】安全框架學習(十二)

    【Spring Security】安全框架學習(十二)

    6.0 其他權限校驗方法 我們前面都是使用@PreAuthorize注解,然后在在其中使用的是hasAuthority方法進行校驗。Spring Security還為我們提供了其它方法. 例如:hasAnyAuthority,hasRole,hasAnyRole,等。 這里我們先不急著去介紹這些方法,我們先去理解hasAuthority的原理,然后再去學習其他方法就

    2024年02月07日
    瀏覽(23)
  • 安全框架Spring Security是什么?如何理解Spring Security的權限管理?

    安全框架Spring Security是什么?如何理解Spring Security的權限管理?

    大家好,我是卷心菜。本篇主要講解Spring Security的基本介紹和架構分析,如果您看完文章有所收獲,可以三連支持博主哦~,嘻嘻。 ?? 作者簡介: 在校大學生一枚,Java領域新星創(chuàng)作者,Java、Python正在學習中,期待和大家一起學習一起進步~ ?? 個人主頁:我是一棵卷心菜的

    2024年02月02日
    瀏覽(24)
  • 【Spring Security】讓你的項目更加安全的框架

    【Spring Security】讓你的項目更加安全的框架

    ????歡迎來到我的CSDN主頁!???? ??我是Java方文山,一個在CSDN分享筆記的博主。???? ??推薦給大家我的專欄《Spring Security》。???? ??點擊這里,就可以查看我的主頁啦!???? Java方文山的個人主頁 ??如果感覺還不錯的話請給我點贊吧!???? ??期待你的加入,一

    2024年02月04日
    瀏覽(22)
  • spring boot中常用的安全框架 Security框架 利用Security框架實現(xiàn)用戶登錄驗證token和用戶授權(接口權限控制)

    spring boot中常用的安全框架 Security框架 利用Security框架實現(xiàn)用戶登錄驗證token和用戶授權(接口權限控制)

    spring boot中常用的安全框架 Security 和 Shiro 框架 Security 兩大核心功能 認證 和 授權 重量級 Shiro 輕量級框架 不限于web 開發(fā) 在不使用安全框架的時候 一般我們利用過濾器和 aop自己實現(xiàn) 權限驗證 用戶登錄 Security 實現(xiàn)邏輯 輸入用戶名和密碼 提交 把提交用戶名和密碼封裝對象

    2024年02月06日
    瀏覽(31)
  • Spring Security和Shiro的異同?OAuth 2是什么?

    一、Spring Security和Shiro都是Java安全框架,它們有以下異同點: 開發(fā)背景不同。Spring Security基于Spring開發(fā),Shiro獨立于Spring開發(fā)。 功能不同。Spring Security功能比Shiro更加豐富,例如安全維護方面。 社區(qū)資源不同。Spring Security社區(qū)資源相對比Shiro更加豐富。 接口和作用粒度不同。

    2024年02月07日
    瀏覽(16)
  • Spring Boot 優(yōu)雅集成 Spring Security 5.7(安全框架)與 JWT(雙令牌機制)

    Spring Boot 優(yōu)雅集成 Spring Security 5.7(安全框架)與 JWT(雙令牌機制)

    本章節(jié)將介紹 Spring Boot 集成 Spring Security 5.7(安全框架)。 ?? Spring Boot 2.x 實踐案例(代碼倉庫) Spring Security 是一個能夠為基于 Spring 的企業(yè)應用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。 它提供了一組可以在 Spring 應用上下文中配置的 Bean,充分利用了 Spring

    2024年02月12日
    瀏覽(52)
  • 框架漏洞-CVE復現(xiàn)-Apache Shiro+Apache Solr

    框架漏洞-CVE復現(xiàn)-Apache Shiro+Apache Solr

    什么是框架? ?????? 就是別人寫好包裝起來的一套工具,把你原先必須要寫的,必須要做的一些復雜的東西都寫好了放在那里,你只要調(diào)用他的方法,就可以實現(xiàn)一些本來要費好大勁的功能。 ???????? 如果網(wǎng)站的功能是采用框架開發(fā)的,那么挖掘功能的漏洞就相當于

    2024年02月16日
    瀏覽(19)
  • Shiro框架:Shiro SecurityManager安全管理器解析

    Shiro框架:Shiro SecurityManager安全管理器解析

    目錄 1.?SecurityManager介紹 1.1?Authenticator 1.2?Authorizer 1.3?SessionManager 2. DefaultWebSecurityManager解析 2.1?Destroyable 2.2?CacheManagerAware 2.3?EventBusAware 2.4?CachingSecurityManager(聚合緩存管理和事件監(jiān)聽管理功能) 2.5?RealmSecurityManager(聚合Realm管理功能) 2.6?AuthenticatingSecurityManager(聚合登

    2024年01月17日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包