
SpringSecurity
文章平均质量分 89
springsecurity 权限认证
波波烤鸭
10余年架构和线上讲师工作经验。精通Java,微服务和云原生相关,致力于Java技术的免费分享。
展开
-
【第十一篇】SpringSecurity基于JWT实现Token的处理
SpringSecurity基于JWT实现Token的处理 前面介绍了手写单点登录和JWT的应用,本文结合SpringSecurity来介绍下在SpringBoot项目中基于SpringSecurity作为认证授权框架的情况下如何整合JWT来实现Token的处理。一、认证思路分析 SpringSecurity主要是通过过滤器来实现功能的!我们要找到SpringSecurity实现认证和校验身份的过滤器!1.回顾集中式认证流程用户认证: 使用 UsernamePasswordAuthent原创 2022-05-26 21:28:42 · 3457 阅读 · 2 评论 -
【第十篇】单点登录原理和JWT实现
单点登录原理及JWT实现波波烤鸭一、单点登录效果 首先我们看通过一个具体的案例来加深对单点登录的理解。案例地址:https://gitee.com/xuxueli0323/xxl-sso?_from=gitee_search 把案例代码直接导入到IDEA中 然后分别修改下server和samples中的配置信息在host文件中配置127.0.0.1 sso.server.com127.0.0.1 client1.com127.0.0.1 client2.com然后分别启动.原创 2022-05-21 15:40:05 · 3138 阅读 · 0 评论 -
【第九篇】SpringSecurity核心过滤器-SecurityContextPersistenceFilter
SpringSecurity核心过滤器-SecurityContextPersistenceFilter一、SpringSecurity中的核心组件 在SpringSecurity中的jar分为4个,作用分别为jar作用spring-security-coreSpringSecurity的核心jar包,认证和授权的核心代码都在这里面spring-security-config如果使用Spring Security XML名称空间进行配置或Spring Security原创 2022-05-17 21:59:25 · 2423 阅读 · 0 评论 -
【第八篇】SpringSecurity核心过滤器-CsrfFilter
SpringSecurity核心过滤器-CsrfFilter Spring Security除了认证授权外功能外,还提供了安全防护功能。本文我们来介绍下SpringSecurity中是如何阻止CSRF攻击的。一、什么是CSRF攻击 跨站请求伪造(英语:Cross-site request forgery),也被称为 one-click attack 或者 session riding,通常缩写为 CSRF 或者 XSRF, 是一种挟制用户在当前已登录的 Web 应用程序上执行非本意的操作的攻击方原创 2022-05-12 21:43:20 · 3365 阅读 · 0 评论 -
【第七篇】SpringSecurity中的权限管理
SpringSecurity中的权限管理 SpringSecurity是一个权限管理框架,核心是认证和授权,前面已经系统的给大家介绍过了认证的实现和源码分析,本文重点来介绍下权限管理这块的原理。一、权限管理的实现 服务端的各种资源要被SpringSecurity的权限管理控制我们可以通过注解和标签两种方式来处理。放开了相关的注解后我们在Controller中就可以使用相关的注解来控制了/** * JSR250 */@Controller@RequestMapping("/user".原创 2022-05-07 10:42:02 · 2116 阅读 · 0 评论 -
【第六篇】深入理解SecurityConfigurer源码
深入理解SecurityConfigurer一、SecurityConfigurer SecurityConfigurer 在 Spring Security 中是一个非常重要的角色。在前面的内容中曾经多次提到过,Spring Security 过滤器链中的每一个过滤器,都是通过 xxxConfigurer 来进行配置的,而这些xxxConfigurer 实际上都是 SecurityConfigurer 的实现。所以我们也需要对 SecurityConfigurer 理解清楚.// O(De.原创 2022-04-29 14:36:35 · 1938 阅读 · 2 评论 -
【第五篇】深入理解HttpSecurity的设计
深入理解HttpSecurity的设计一、HttpSecurity的应用 在前章节的介绍中我们讲解了基于配置文件的使用方式,也就是如下的使用。 也就是在配置文件中通过 security:http 等标签来定义了认证需要的相关信息,但是在SpringBoot项目中,我们慢慢脱离了xml配置文件的方式,在SpringSecurity中提供了HttpSecurity等工具类,这里HttpSecurity就等同于我们在配置文件中定义的http标签。要使用的话方式如下。 通过代码结果来看和配置文件.原创 2022-04-28 23:07:32 · 4094 阅读 · 0 评论 -
【第四篇】热恋中的SpringSecurity-初始化的本质
SpringSecurity初始化的本质一、对SpringSecurity初始化的几个疑问 通过前面第一次请求访问的分析我们明白了一个请求就来后的具体处理流程 对于一个请求到来后会通过FilterChainProxy来匹配一个对应的过滤器链来处理该请求。那么这里我们就有几个疑惑。FilterChainProxy什么时候创建的?过滤器链和对应的过滤器什么时候创建的?怎么把自定义的过滤器添加到过滤器链中?请求和过滤器的匹配规则是什么?二、解析配置文件的过程1.解析前的处理 接下.原创 2022-04-23 12:22:18 · 2103 阅读 · 0 评论 -
【第三篇】开始和SpringSecurity的简单交往-处理请求的本质
SpringSecurity处理请求的本质是过滤器,SpringSecurity中是通过哪些过滤器来处理的呢?本文详细讲解原创 2022-04-20 10:53:22 · 1650 阅读 · 0 评论 -
【第二篇】SpringSecurity的第一次美好约会
SpringSecurity的核心源码分析和认证流程的解析原创 2022-04-19 10:15:56 · 1651 阅读 · 0 评论 -
【第一篇】SpringSecurity的初次邂逅
SpringSecurity系列文章,从基础的应用到源码的分析全程高能,原创 2022-04-18 11:27:29 · 2647 阅读 · 0 评论 -
SpringSecurity认证专题之【AuthenticationManager】
哈喽,大家好,最近有段时间没有写博客了,今天开始我会陆续给大家整理出SpringSecurity原理源码相关的文件,本篇文章主要是给大家介绍下认证体系中最基础的AuthenticationManager的内容,让你对它从整体上面有一个认知。AuthenticationManager 首先我们来看下AuthenticationManager这个接口的定义。public interface AuthenticationManager { /** * 定义的一个认证的方法 **/ Authen原创 2020-10-13 22:42:03 · 5711 阅读 · 2 评论 -
详细介绍OAuth2.0及实现和SpringSecurity的整合应用
一、OAuth2.0介绍GitHub地址案例代码地址1.概念说明 先说OAuth,OAuth是Open Authorization的简写。 OAuth协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAuth的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAuth是安全...原创 2019-12-12 23:20:30 · 15247 阅读 · 7 评论 -
单点登录SSO解决方案之SpringSecurity+JWT实现
通过前面几天文章我们详细的介绍了SpringSecurity的使用,本文我们来看下,结合JWT来实现单点登录操作。一、什么是单点登陆 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统二、简单的运行机制 单点登录的机制其实是比较简单的,用一个现实中的...原创 2019-12-05 18:20:57 · 26979 阅读 · 35 评论 -
详细介绍SpringBoot整合SpringSecurity
本文我们来详细给小伙伴们介绍下SpringBoot整合SpringSecurity的过程,用到的技术为:SpringBoot2.2.1+SpringSecurity+SpringDataJPA+jsp来整合。一、环境准备1.创建SpringBoot项目 创建一个SpringBoot项目2.导入基础依赖 导入基础的依赖<parent> <groupId&...原创 2019-12-05 17:25:51 · 5797 阅读 · 0 评论 -
SpringSecurity授权管理介绍
权限管理的两大核心是:认证和授权,前面我们已经介绍完了认证的内容,本文就给大家来介绍下SpringSecurity的授权管理一、注解操作 我们在控制器或者service中实现授权操作比较理想的方式就是通过相应的注解来实现。SpringSecurity可以通过注解的方式来控制类或者方法的访问权限。注解需要对应的注解支持,若注解放在controller类中,对应注解支持应该放在mvc配置文件...原创 2019-12-05 17:07:11 · 4763 阅读 · 0 评论 -
SpringSecurity详细介绍RememberMe功能
本文我们来实现下SpringSecurity的RememberMe功能一、rememberMe功能实现接下来我们看看具体怎么实现rememberMe功能1.表单记住我选项<%-- Created by IntelliJ IDEA. User: dengp Date: 2019/12/1 Time: 20:40 To change this template u...原创 2019-12-05 16:53:46 · 5449 阅读 · 0 评论 -
SpringSecurity详细介绍RememberMe源码流程
本文我们来详细看看rememberMe的源码流程rememberMe源码分析 首先我们要搞清楚rememberMe功能应该是在认证成功后才能具有的,所以我们应该从UsernamepasswordAuthenticationFilter中去分析找到对应的doFilter方法认证成功后开始rememberMe的处理进入AbstractRememberMeServices中查看...原创 2019-12-05 16:41:45 · 4104 阅读 · 0 评论 -
SpringSecurity实现数据库认证
上篇文章我们介绍了SpringSecurity系统认证的流程,我们发现系统认证其实是通过一个UserDetailService的实现类来实现的,所以我们就可以使用相同的方式将认证的业务改成和数据库的对比。此案例持久层我们通过Mybatis来实现一、mybatis准备1.导入相关依赖<dependency> <groupId>org.mybatis</gr...原创 2019-12-05 16:27:22 · 4004 阅读 · 0 评论 -
SpringSecurity认证流程分析
我们前面实现了使用自定义认证界面的功能,但是后台认证校验还是使用的’/login’来处理的,对比的账号密码还是我们写在内存的数据,那我们如果想要实现和数据库中的数据比较,那么我们就必须要实现自定义认证逻辑的实现,本文我们就先来分析下系统自带的认证是怎么走的。一、UsernamePasswordAuthenticationFilter 系统认证是通过UsernamePasswordAuth...原创 2019-12-05 12:14:17 · 3051 阅读 · 1 评论 -
SpringSecurity实现自定义登录界面
前面通过入门案例介绍,我们发现在SpringSecurity中如果我们没有使用自定义的登录界面,那么SpringSecurity会给我们提供一个系统登录界面。但真实项目中我们一般都会使用自定义的登录界面,本文我们就来介绍下如何实现该操作。注意:本文是在入门案例代码的基础上演示的!一、页面准备我们准备如下相关的jsp页面1.login.jsp页面<%-- Created by...原创 2019-12-05 11:58:59 · 7138 阅读 · 0 评论 -
SpringSecurity常用过滤器介绍
本文我们来介绍下SpringSecurity中常用的过滤器及其加载的过程。一、常用的过滤器 常用的过滤器有15个,分别如下:1.org.springframework.security.web.context.SecurityContextPersistenceFilter 首当其冲的一个过滤器,非常重要主要是使用SecurityContextRepository在session...原创 2019-12-05 11:47:21 · 4802 阅读 · 0 评论 -
SpringSecurity超详细入门介绍
权限管理是我们项目中必不可少的一环,实际项目中我们可以自己设计权限管理模块,也可以使用市面上成熟的权限管理框架,比如 shiro或者 SpringSecurity等,前面已经详细的介绍过了 shiro 的使用,本文开始就给大家详细的来介绍下SpringSecurity的使用。内容包括spring+springmvc基于配置的方式详细介绍SpringSecurityspringboot整...原创 2019-12-02 12:06:54 · 27614 阅读 · 3 评论