简介

SpringSecurity 是 Spring 家族中的一员。基于 Spring 的提供声明式的安全访问控制解决方案的安全框架。

为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。

其他常用的安全框架还有 Apache 下的 Shiro。

SpringSecurity 的重要核心功能:

  • 认证:系统认为用户是否能登录。
  • 授权:系统判断用户是否有权限去做某些事情。

快速入门

新建 SpringBoot 项目,pom.xcml 中导入 SpringSecurity 依赖。

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

启动项目,浏览器访问http://localhost:8080/login,就可以访问到登录页面。这是 SpringSecurity 默认提供的一个登录页面,如果项目中导入了 SpringSecurity,那么它会默认拦截所有的请求,要求用户必须登录之后才能继续请求。

image-20211219104707537

默认用户名为:user

自动生成的密码可以在控制台看到:Using generated security password: 5f45c613-002d-4a3b-a689-15e685c1d7a4

image-20211219163107087

输入账号密码,就可以登录进去了。

image-20211219165211557