Spring Security概述快速入门

前言

在深入了解Spring Security的相关功能之后,一直陷入了深深的纠结之中:是一片长文搞定,还是再搞个专栏。
终于,用上了AI后,不再纠结怎么排版内容了。自此,我也明白了,饭要一口一口吃。

Spring Security概述

官方概述

Spring Security是一款提供认证、授权、以及针对常见(网络)攻击的防御的框架。它为保护命令式和反应式应用程序提供了一流的支持,是保护基于Spring的应用程序的事实标准。

  • 从官方的介绍,我们可以看到他就是为基于Spring的应用量身定制的。这也是为什么我们如果使用Spring MVC/Spring Boot继承Spring Security如此丝滑的原因。
  • 三个关键词:认证授权、以及针对常见(网络)攻击的防御

记住着三个关键词,因为他直接代表着Spring Security提供的三大核心功能/特性。

Why Spring Security

Spring Security的特性

Spring Security的三个关键词就是他的特性。

  1. Authentication-认证:Spring Security提供通用的登录认证功能,同时支持Servlet应用,也能支持WebFlux这种响应式应用。
  2. Authorization-授权:Spring Security为授权提供了全面的支持。同时支持基于Request的授权和基于方法的授权。
  3. Protection Against Exploits-防范漏洞:结合常见的防范手段,提供支持:
    • Cross Site Request Forgery:跨域请求伪造
    • Response Header:提供通用的响应头设置,为功能性、常见的网络安全响应头提供支持,同时设置默认的请求头。
    • Request Header: 通过请求头可将http请求强制使用https.

要回答这个问题,就不得不对比一下另一款流行的安全框架:Shiro

框架的使用层面

Spring Security Shiro
集成难易度 与Spring框架无缝集成,可以很方便地与其他Spring组件一起使用 需要与Spring进行整合开发,但配置和使用都比较简单
活跃度和资源 庞大的社区资源和文档支持,有大量使用案例和文档可供参考 活跃的社区,为开发者提供交流和帮助平台
依赖性 依赖于Spring容器 不依赖于任何框架或容器,可以独立运行
使用复杂度 功能丰富,使用起来可能稍微复杂一些 API设计简洁,易于理解和使用
定制性 支持自定义安全注解和编程式访问控制,可根据项目需求进行定制化开发 提供简洁的API和高度灵活性,可根据项目需求进行定制化开发
性能 性能表现良好,具体性能因使用场景而异 在缓存等方面可能具有更好的性能表现

功能对比层面

功能 Spring Security Shiro
身份认证 支持多种身份认证机制,包括基于表单、HTTP Basic和HTTP Digest等 提供多种身份认证机制,包括基于表单、HTTP Basic和HTTP Digest等
授权 支持注解和配置文件定义访问控制策略,支持基于表达式的访问控制 提供丰富的授权功能,可以使用注解或配置文件定义访问控制策略
会话管理 支持会话管理功能,包括跨站点请求伪造(CSRF)保护和会话失效时间设置等 提供会话管理功能,但需要开发者自行实现跨站点请求伪造(CSRF)保护等安全特性
异常处理 提供内置的异常处理机制。提供跳转到登录前的请求,也可配置跳转到指定页面 提供内置的异常处理机制。定制登录成功后的跳转请求提供一定的支持,但需要自行实现完整功能
RememberMe功能<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值