一、简介
Spring Security 是 Spring 家族中的一个安全管理框架。相比与另外一个安全框架Shiro,它提供了更
丰富的功能,社区资源也比Shiro丰富。
一般来说中大型的项目都是使用SpringSecurity 来做安全框架。小项目有Shiro的比较多,因为相比与
SpringSecurity,Shiro的上手更加的简单。
一般Web应用的需要进行认证和授权。
认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户
授权:经过认证后判断当前用户是否有权限进行某个操作
而认证和授权也是SpringSecurity作为安全框架的核心功能。
二、神速入门
首先创建一个SpringBoot工程
2、
3、
4、
5、完成之后是这个样子的
6、导入依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.15</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
7、创建一个启动类
8、创建controller
9、启动测试一下
当我们引入springsecurity依赖的时候,就可以实现入门案例
引入依赖后我们在尝试去访问之前的接口就会自动跳转到一个SpringSecurity的默认登陆页面,默认用
户名是user,密码会输出在控制台。
然后,我们访问一下我们写的controller接口
不管你输入多少次,输入什么,只要你没登录都会跳到登录页面
但是有一个问题,样式没有了,因为被拦截掉了,这个不用管,姑且就这样吧
必须登陆之后才能对接口进行访问。登录了之后再访问,就没有问题啦。
我们可以再退出试一下,/logout接口,同样的效果,必须要登录才可以访问hello接口
三、插播一下
如果我们在创建的时候,选择了父工程,那么这就是一个多模块的,聚合型的项目
下一步,完成之后目录是这样的,他是在JWT父项目里面的
并不是跟我们的security_one一样,我们的security_one跟jwt是同级的。
然后,看一下,他的pom文件,是指向父项目的