第01讲:为什么使用Security

本文介绍了SpringSecurity的概念及其在用户认证和授权方面的作用,并对比了它与Shiro的不同之处。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、什么是SpringSecurity?

        SpringSecurity是Spring家族的成员之一,SpringSecurity基于Spring框架,提供了一整套Web应用安全性的解决方案。

        一般情况来说,Web应用的安全性包括两部分,分别是:用户认证(Authentication)和用户授权(Authorization),这两点也是SpringSecurity的重要核心功能。

  • 用户认证(Authentication):通俗的讲,就是验证用户是否可以成功登陆系统。
  • 用户授权(Authorization):通俗的讲,就是验证用户是否具有访问某些资源的权限。

 二、SpringSecurity的一些基本概念

2.1、用户认证(Authentication)

--什么是认证?
        进入移动互联网时代,大家每天都在刷手机,常用的软件有微信、支付宝等,下边拿微信来举例子说明认证相关的基本概念,在初次使用微信前需要注册成为微信用户,然后输入账号和密码即可登录微信,输入账号和密码登录微信的过程就是认证。

--为什么需要认证
        认证的作用是为了保护系统的隐私数据与资源的安全性,用户的身份合法才可访问该系统的资源,比如您现在购买完商品付钱的时候,“钱”属于自己隐私就需要认证。

2.2.什么是授权(Authorization)

        就拿支付宝来举例子,支付宝登陆成功后用户就可以使用转账、发红包、花呗、添加好友等功能,没有绑定银行卡是不可以转账的,花呗属于支付宝的资源,你需要向支付宝申请此功能才能去使用,当你申请成功才能拥有花呗功能,这个根据用户使用资源就是授权。


--为什么需要授权?
        认证是保证了用户的合法性,而授权是为了细粒度的控制用户使用的“资源”,控制不同的用户使用不同的资源。

2.3. SpringSecurity的授权模型

        授权模型RBAC(Role-Based Access Control:基于角色的访问控制),基于角色来进行访问权限控制。

三、SpringSecurity和Shiro的区别

        Spring Security 是 Spring 家族中的一个安全管理框架,实际上,在 Spring Boot 出现之 前,Spring Security 就已经发展了多年了,但是使用的并不多,安全管理这个领域,一直 是 Shiro 的天下。

        相对于 Shiro,在 SSM 中整合 Spring Security 都是比较麻烦的操作,所以,Spring Security 虽然功能比 Shiro 强大,但是使用反而没有 Shiro 多(Shiro 虽然功能没有 Spring Security 多,但是对于大部分项目而言,Shiro 也够用了)。

        自从有了 Spring Boot 之后,Spring Boot 对于 Spring Security 提供了自动化配置方 案,可以使用更少的配置来使用 Spring Security。

SpringSecurityShiro
组织Spring成员之一,可以和Spring框架无缝整合Apache旗下的权限控制框架
通用性
  • 旧版不能脱离Web环境使用。
  • 新版本对整个框架进行了分层抽取,分成了核心模块和Web模块。单独引入核心模块就可以脱离Web环境使用。
不局限于Web环境,可以脱离Web环境使用。
重量级框架轻量级框架
整合方案SpringBoot/SpringCloudSSM

Ps:关于整合方案,只是一个推荐的组合而已,如果单纯从技术上来说,无论怎么组合,都是可以运行的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值