主流的權限框架 :Apache Shiro、spring Security
什么是 spring Security:官網基礎介紹
官網:https://spring.io/projects/spring-security
Spring Security是一個能夠為基於Spring的企業應用系統提供聲明式的安全訪問控制解決方案的安全框架。
它提供了一組可以在Spring應用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反轉Inversion of Control ,DI:Dependency Injection 依賴注入)和AOP(面向切面編程)功能,為應用系統提供聲明式的安全訪問控制功能,減少了為企業系統安全控制編寫大量重復代碼的工作。
一句話:Spring Security 的前身是 Acegi Security ,是 Spring 項目組中用來提供安全認證服務的框架
什么是 Apache Shiro:官網基礎介紹
官網:https://github.com/apache/shiro
Apache Shiro是一個強大且易用的Java安全框架,執行身份驗證、授權、密碼和會話管理。
使用Shiro的易於理解的API,您可以快速、輕松地獲得任何應用程序,從最小的移動應用程序到最大的網絡和企業應用程序。
一句話:Shiro是一個強大易用的Java安全框架,提供了認證、授權、加密和會話管理等功能
兩個優缺點,應該怎么選擇
Apache Shiro比Spring Security , 前者使用更簡單
Shiro 功能強大、 簡單、靈活, 不跟任何的框架或者容器綁定,可以獨立運行
Spring Security 對Spring 體系支持比較好,脫離Spring體系則很難開發
SpringSecutiry 支持Oauth鑒權 https://spring.io/projects/spring-security-oauth,Shiro需要自己實現
總結:兩個框架沒有誰超過誰,大體功能一致,新手一般先推薦Shiro,學習會容易點