java项目Shiro、SpringSecurity、Sa-Token如何选择? - 知乎 (zhihu.com)
Shiro、SpringSecurity、Sa-Token都是Java常用的安全框架
1)Spring Security是基于Spring的身份认证(Authentication)和用户授权(Authorization)
框架,提供了一套Web应用安全性的完整解决方案。其中核心技术使用了Servlet过滤器、IOC
和AOP等。2)Sa-Token是一个轻量级Java权限认证框架,出现较晚(好像是2020年),主要解决:登录认证、权限认证、Session会话、单点登录、OAuth2.0、微服务网关鉴权等一系列权限相关问题。
3)Shiro是一个强大而灵活的开源安全框架,能够非常清晰的处理认证、授权、管理会话以及密码加密。如下是它所具有的特点:
- 易于理解的Java Security APl;
- 简单的身份认证(登录),支持多种数据源(LDAP,JDBC,Kerberos,ActiveDirectory等);
- 对角色的简单的签权(访问控制),支持细粒度的签权;
- 支持一级缓存,以提升应用程序的性能;
- 内置的基于POJO企业会话管理,适用于Web以及非Web的环境;
- 异构客户端会话访问;
- 非常简单的加密AP;
- 不跟任何的框架或者容器捆绑,可以独立运行。