214. Spring Security:概述

Posted SpringBoot

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了214. Spring Security:概述相关的知识,希望对你有一定的参考价值。

视频&交流平台

SpringBoot视频:http://t.cn/R3QepWG

Spring Cloud视频:http://t.cn/R3QeRZc

SpringBoot Shiro视频:http://t.cn/R3QDMbh

SpringBoot交流平台:http://t.cn/R3QDhU0

SpringData和JPA视频:http://t.cn/R1pSojf

SpringSecurity5.0视频http://t.cn/EwlLjHh

 

前言

       在之前介绍过了Shiro之后,有好多粉丝问SpringSecurity在Spring Boot中怎么集成。这个系列我们就和大家分享下有关这方面的知识。

 

本节大纲

一、什么是SpringSecurity?

二、常用安全框架

 

一、什么是Spring Security?

SpringSecurity是基于Spring AOP和Servlet过滤器的安全框架。它提供全面的安全性解决方案,同时在Web 请求级方法调用级处理身份确认和授权。在 Spring Framework 基础上,Spring Security 充分利用了依赖注入(DI,Dependency Injection)和面向切面编程(AOP)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。它是一个轻量级的安全框架,它确保基于Spring的应用程序提供身份验证和授权支持。它与Spring MVC有很好地集成,并配备了流行的安全算法实现捆绑在一起。安全主要包括两个操作“认证”与“验证”(有时候也会叫做权限控制)。“认证”是为用户建立一个其声明的角色的过程,这个角色可以一个用户、一个设备或者一个系统。“验证”指的是一个用户在你的应用中能够执行某个操作。在到达授权判断之前,角色已经在身份认证过程中建立了。

       我们简单来理解一下上面这段话:

第一:什么是Spring Security ?

Spring Security是一个安全框架。

第二:Spring Security核心功能?

(1)认证(你是谁,用户/设备/系统)

(2)验证(你能干什么,也叫权限控制/授权,允许执行的操作)

(3)攻击防护(防止伪造身份)

第三:Spring Security原理技术

Filter、Servlet、Spring DI、SpringAOP

 

二、常用安全框架

       目前常用的安全框架主要是Spring Security和Apache Shiro,它们的区别是什么呢?

2.1 相同点

(1)认证功能

(2)授权功能

(3)加密功能

(4)会话功能

(5)缓存支持

(6)remeberMe功能

……

2.2 不同点(Spring Security PK Apache Shiro

优点:

(1)Spring Security基于Spring开发,项目中如果使用Spring作为基础,配合Spring Security做权限更加方便。而Shiro需要和Spring进行整合。

(2)Spring Security功能比Shiro更加丰富,例如安全防护方面。

(3)Spring Security社区资源相对比Shiro更加丰富。

(4)如果使用的是Spring Boot,Spring Cloud的话,三者可以无缝集成。

缺点:

(1)Shiro的配置和使用比较简单,Spring Security上手复杂些。

(2)Shiro依赖性低,不需要任何框架和容器,可以独立运行,而Spring Security依赖Spring容器。

       企业里选择哪个安全框架,是因人而异,因团队而异,擅长哪个选择哪个,大部分的业务场景,两个框架都是可以满足需求的。

       本节就到这里,下节我们通过编码对于Spring Security有一个基本的认识。


SpringBoot2+SpringSecurity5视频

相关技术版本如下:

(1)JDK版本:1.8

(2)Spring Boot 2.0.6

(3)Spring Security 5.0.9

(4)Spring Data JPA 2.0.11.RELEASE

(5)hibernate5.2.17.Final

(6)mysqlDriver 5.1.47

(7)MySQL 8.0.12


已更新视频列表:


1.    
概述
2.    初体验
3.    基于内存的认证信息
4.    基于内存的角色授权
5.    基于内存数据库的身份认证和角色授权
6.    基于MySQL数据库的身份认证和角色授权
7.    自定义登录页面和构建主页
8.    登出和403处理
8.    登出和403处理
9.    动态加载角色
10.   原理1
11.   自定义Filter

连载中...

Spring Boot+Spring Security:基于URL动态权限配置



à悟空学院:http://t.cn/Rg3fKJD

学院中有Spring Boot相关的课程!点击「阅读原文」进行查看!

SpringSecurity从11月4号到双十一都有优惠活动!

以上是关于214. Spring Security:概述的主要内容,如果未能解决你的问题,请参考以下文章

Spring Security 权限管理

Spring Security 权限管理

spring security 使用自定义的AuthenticationFilter,提示Invalid remember-me cookie,自动登录失败的解决方法

爆破专栏丨Spring Security系列教程之实现CAS单点登录上篇-概述

Spring Security源码:登录认证源码流程

Spring Security源码:登录认证源码流程