五分钟带你玩转SpringSecurity(二)SpringSecurity和shiro孰强孰弱,带你从根上了解

简介: Spring Security 是基于 Spring 的身份认证(Authentication)和用户授权(Authorization)框架,提供了一套 Web 应用安全性的完整解决方案。其中核心技术使用了 Servlet 过滤器、IOC 和 AOP 等。


Spring Security简介

1. Spring Security 是基于 Spring  的身份认证(Authentication)和用户授权(Authorization)框架,提供了一套 Web  应用安全性的完整解决方案。其中核心技术使用了 Servlet 过滤器、IOC 和 AOP 等。

2. 什么是身份认证

身份认证指的是用户去访问系统资源时,系统要求验证用户的身份信息,用户身份合法才访问对应资源。常见的身份认证一般要求用户提供用户名和密码。系统通过校验用户名和密码来完成认证过程。

3. 什么是用户授权

 当身份认证通过后,去访问系统的资源,系统会判断用户是否拥有访问该资源的权限,只允许访问有权限的系统资源,没有权限的资源将无法访问,这个过程叫用户授权。比如   会员管理模块有增删改查功能,有的用户只能进行查询,而有的用户可以进行修改、删除。一般来说,系统会为不同的用户分配不同的角色,而每个角色则对应一系列的权限

说白了:认证就是判断账号密码是否正确(可能还有锁定等状态)

             授权就是登陆人有没有权限访问某个接口

Shiro 简介

1. Shiro 是 Apache 下的项目,相对简单、轻巧,更容易上手使用。

2. Shiro 权限功能基本都能满足,单点登录都可以实现。且不用与任何的框架或者容器绑定, 可以独立运行

Shiro 与 Spring Security 对比

1. Spring Security 相对 Shiro 上手更复杂;

2. Spring Security 功能比 Shiro 更加丰富些;

3. Spring Security 是 Spring 家族的产品,与 Spring 无缝对接, 社区资源相对比 Shiro 更加丰富;

4. Spring Security 对 Oauth2 也有支持, Shiro 则需要自己手动实现。而且 Spring Security 的权限细粒度更高。

如何选择

1.如果项目体系不是很庞大,没有用到 Spring,那就不要考虑使用 Spring Security ,Shiro 足够满足, 建议使用。

2. 如果项目使用 Spring 作为基础,配合 Spring Security 做权限更加方便,而 Shiro 需要和 Spring 进行整合开


相关文章
|
6月前
|
XML 安全 前端开发
SpringSecurity系列(四) Spring Security 实现权限树形菜单
SpringSecurity系列(四) Spring Security 实现权限树形菜单
|
6月前
|
安全 Java 数据库
【SpringSecurity】Spring Security 和Shiro对比
【SpringSecurity】Spring Security 和Shiro对比
663 0
|
12天前
|
安全 Java 应用服务中间件
认识SpringSecurity
认识SpringSecurity
10 0
认识SpringSecurity
|
1月前
|
JSON 安全 Java
SpringSecurity专题
SpringSecurity专题
|
4月前
|
安全 Java 应用服务中间件
SpringSecurity3 --- 认识SpringSecurity
SpringSecurity是一个强大的安全框架,提供认证和授权功能。它支持多种认证机制,如表单、OAuth2.0、SAML2.0、CAS、RememberMe、JAAS、OpenID和X509等。。。
|
6月前
【SpringSecurity 】SpringSecurity 自定义登录页面
【SpringSecurity 】SpringSecurity 自定义登录页面
105 0
|
安全 前端开发 Java
SpringSecurity的使用
SpringSecurity的使用
93 1
SpringSecurity的使用
SpringSecurity框架
SpringSecurity框架
36 0
|
安全 前端开发 Java
SpringSecurity
SpringSecurity
153 0