当前位置:首页 > 编程笔记 > 正文
已解决

SpringSecurity全家桶 (二) ——实现原理

来自网友在路上 168868提问 提问时间:2023-11-04 23:06:07阅读次数: 68

最佳答案 问答题库688位专家为你答疑解惑

1. SpringSecurity的强大之处

当我们并未设置登录页面时,我们只需要导入SpringSecurity的依赖就可以令我们的界面进入保护状态,由下面例子可以凸显出:

随便写个接口

    @RequestMapping("/hello")public String hello(){return "Hello,SpringSecurity";}

这是这时的页面返回的数据

在这里插入图片描述

导入依赖

        <!--SpringSecurity--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</artifactId></dependency>

再运行
访问页面时,就会出现SpringSecurity自带的登录保护页面
在这里插入图片描述

密码会在控制台出现:

在这里插入图片描述
此时,登录之后就可以访问到我们的页面

2. 实现原理

在Spring Security中,认证、授权等功能都是基于过滤器实现的

如下图:在这里插入图片描述

简述上方图片中信息:
需要注意的是,默认过滤器并不是直接放在 Web 项目的原生过滤器链中,而是通过一个
FilterChainProxy 来统一管理。 Spring Security 中的过滤器链通过 FilterChainProxy 嵌入到 Web 项目的原生过滤器链中。 FilterChainProxy 作为一个顶层的管理者,将统一管理 Security FilterFilterChainProxy 本身是通过 Spring 框架提供的DelegatingFilterProxy 整合到原生的过滤器链中

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"SpringSecurity全家桶 (二) ——实现原理":http://eshow365.cn/6-32218-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!