Spring Security
0 简介
Spring Security是Spring家族中的一个安全管理框架。相比与另外一个安全框架shiro,它提供了更丰富的功能,社区资源也比Shiro丰富。
一般来说中大型的项目都是使用Spring Security来做安全框架。小项目有Shiro的比较多,因为相比与Spring Security,Shiro的上手更加的简单。
一般Web应用的需要进行认证和授权。
认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户
授权:经过认证后判断当前用户是否有权限进行某个操作
而认证和授权也是Spring Security作为安全框架的核心功能。
1 入门
1.1准备工作
首先搭建一个简单的spring boot工程,用于测试项目能否正常使用。
①设置父工程,添加依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.0</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>
</dependencies>
②创建启动类
@SpringBootApplication
public class SecurityApplication{
public static void main(String[] args){
SpringApplication.run(SecurityApplication.class,args);
}
}
③创建controller
package controller;
import...
@RestController
public class HelloController() {
@RequestMapping("/hello")
public String hello() {
return "hello";
}
}
1.2引入Spring Security
一般来说在spring boot项目要使用security只需要引用对应的依赖即可实现一个简单的入门案例。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactIdspring-boot-starter-security</artifactId>
</dependency>
引入依赖后我们在尝试去访问之前的 [/hello] 接口就会自动跳转到一个Spring Security的默认登陆页面,默认用户名是user,密码会输出在控制台。
我们必须在登陆之后才能对接口进行访问。
评论