当前位置: 首页 > news >正文

怎样做网站导航栏媒体宣传推广方案

怎样做网站导航栏,媒体宣传推广方案,合肥房产网安居客,0453牡丹江信息网前言:本系列博客基于Spring Boot 2.6.x依赖的Spring Security5.6.x版本 Spring Security中文文档:https://springdoc.cn/spring-security/index.html 一、什么是Spring Security Spring Security是一个安全控制相关的java框架,它提供了一套全…

前言:本系列博客基于Spring Boot 2.6.x依赖的Spring Security5.6.x版本

Spring Security中文文档:https://springdoc.cn/spring-security/index.html

一、什么是Spring Security

Spring Security是一个安全控制相关的java框架,它提供了一套全面的安全解决方案,包括身份验证、授权、防止攻击等功能。支持点击劫持,CSRF,XSS,MITM(中间人)等常见攻击手段的保护,并提供密码编码,LDAP认证,Session管理,Remember Me认证,JWT,OAuth 2.0等功能特性。Spring Security基于过滤器链的概念,可以轻松地集成到任何基于Spring的应用程序中。

二、Spring Security架构

在Spring Web应用中,基本上只有一个DispatcherServelt,主要用于请求分发,缺乏安全相关的支持和合适的扩展机制。而过滤器(Filter)是运行在Servlet之前的,一个Servlet运行前可能会经过多个Filter。所以在请求到达Servlet之前,先通过Filter进行安全验证就是一个非常合理的实现方式,而Spring Security的功能就是基于Filter来实现的。下图是Spring Security官方提供的架构图。
在这里插入图片描述
从架构图中可以看出,Spring Security功能实现主要由FilterChain、DelegatingFilterProxy、FilterChainProxy、SecurityFilterChain、Security Filter等组件组成。

1、FilterChain

FilterChain是过滤器链,客户端向应用程序发送一个请求时,容器会创建一个由Filter和Servlet组成的过滤器链FilterChain。
通过使用FilterChain,我们可以以插拔的方式添加或移除特定功能的Filter,而无需改动现有的代码,非常方便。

2、DelegatingFilterProxy

Spring Web包中提供了一个名为DelegatingFilterProxy的Filter实现。它的功能是在Servlet容器和Spring容器之间建立桥梁。
Servlet容器不知道Spring定义的Bean,而Spring Security的大部分组件及其依赖都是注册到Spring容器中的Bean。所以DelegatingFilterProxy的主要工作就是从WebApplicationContext获取指定名称的Filter Bean,然后将工作委托这个Bean的doFilter方法
通过这种方式,DelegatingFilterProxy实现了将Servlet容器中的Filter请求委托给Spring容器中的具体Filter Bean处理,从而实现了Servlet容器和Spring容器之间的无缝连接。

3、FilterChainProxy

FilterChainProxy是Spring Security提供的一个特殊的Filter。它的主要作用就是主要作用就是查找匹配当前http请求规则的SecurityFilterChain,然后将工作委派给SecurityFilterChain的所有Filter执行。它是在WebSecurityConfiguration里配置的

4、SecurityFilterChain

一个过滤器链,由一系列Security Filter以及匹配规则组成。当一个http请求符合该SecurityFilterChain的匹配规则,FilterChainProxy就会调用这个SecurityFilterChain里的所有Filter。有多个SecurityFilterChain时,FilterChainProxy只会使用第一个匹配成功的SecurityFilterChain。下图为一个SecurityFilterChain的组成。
在这里插入图片描述
SecurityContextPersistenceFilter:当请求需要认证的资源时,该Filter就是过滤器链的第一个过滤器,用来处理Spring Security的上下文信息,也就是SecurityContext,保证不同请求,但是sessionId相同,也就是同一用户的不同请求,拿到的上下文是相同的,也就是通过SecurityContextHolder.getContext()拿到的信息是同一个。

UsernamePasswordAuthenticationFilter:表单认证Filter,即表单方式登录,校验用户名密码处理。Spring Security默认提供的认证方式之一。
BasicAuthenticationFilter:Basic认证Filter,弹窗输入用户名密码,校验处理,Spring Security默认提供的认证方式之一。

ExceptionTranslationFilter:处理认证及授权过程中抛出的异常,然后返回给客户端。只处理AccessDeniedException和AuthenticationException这两种异常。不是这两种异常,ExceptionTranslationFilter不工作。

FilterSecurityInterceptor:SecurityFilterChain过滤器链的最后一个Filter,用来鉴权,判断用户是否有当前请求资源的权限,来决定是否放行请求。

5、Security Filter

Security Filter就是Spring Security实现具体功能的一些Filter,如CsrfFilter,UsernamePasswordAuthenticationFilter、AuthenticationFilter,AuthorizationFilter等Spring Security默认的Filter。
这些Filter可以用于许多不同的目的,如 认证、授权、漏洞保护 等等。filter 是按照特定的顺序执行的,以保证它们在正确的时间被调用。我们也可以自定义Filter加入的Spring Security执行过程中。可以在应用启动时,使用INFO级别的日志,在控制台查看Security Filter的列表。

http://www.yayakq.cn/news/359850/

相关文章:

  • 深圳 建设工程招标有限公司网站电商小程序开发需要多少钱
  • 直播网站开发要多久.net网站方案
  • 乐清市做淘宝网站公司郑州网络推广平台有哪些
  • 网络营销网站的建设与策划营销培训课程有哪些
  • 工业设计创意网站上海自己注册公司流程及费用
  • 徐州市铜山新区建设局网站丽水市建设局网站电工证
  • 北京塞车网站建设网站流量少的原因
  • 天津新亚太工程建设监理有限公司网站网站权重怎么提升
  • 网站建设迁移方案信管女生做网站开发
  • 邹城住房城乡建设部网站18款app软件免费下载百度
  • 怎么做网站外推数据库电影网站源码
  • 滨州网站建设九鲁怎么免费搭建属于自己的网站
  • 广州专业网站设计昆明做网站建设技巧公司
  • 外贸免费建设网站制作做推广的免费的济宁网站有哪些
  • 安装不上wordpress宜春网站推广优化
  • 手机怎么做3d短视频网站深圳龙华住房和建设局网站
  • 网站中心微信小程序在哪里查找
  • 免费设计图网站wordpress语言
  • 关键词做网站名字wordpress首页分辨率
  • 成都中小企业网站建设公司互联网怎么学
  • 朋友说是做彩票网站运营维护怎么设置网站字体
  • 新乡个人网站建设小学生班级优化大师
  • 网站怎么做双语种网站 换图片
  • 宜兴网站制作网站链接数怎么做
  • wordpress站外链接网站开发个人简历
  • 网站分析流程软文街官网
  • 游戏网站怎么做推广网站建设什么意思
  • 学做ps的软件的网站有哪些国外网站怎么推广
  • 哪些网站使用vue做的创新的企业网站制作
  • 无锡建设机械网站网站建设交流群