(新)Spring Security快速入门

一、简介

Spring Security 中文文档

Spring Security是一个Java框架,用于保护应用程序的安全性。它提供了一套全面的安全解决方案,包括身份验证、授权、防止攻击等功能。Spring Security基于过滤器链的概念,可以轻松地集成到任何基于Spring的应用程序中。它支持多种身份验证选项和授权策略,开发人员可以根据需要选择适合的方式。此外,Spring Security还提供了一些附加功能,如集成第三方身份验证提供商和单点登录,以及会话管理和密码编码等。总之,Spring Security是一个强大且易于使用的框架,可以帮助开发人员提高应用程序的安全性和可靠性。

一般Web应用的需要进行认证授权

认证:验证当前访问系统的是不是本系统的用户,并且要确认具体是哪个用户

授权:经过认证后判断当前用户是否有权限进行某个操作

而认证和授权也是Spring Security作为安全框架的核心功能

二、快速入门

你可以通过添加 spring-boot-starter-security 来为你的Spring Boot项目添加Spring Security。

2.1添加依赖

复制代码
<!--security依赖项目(重点)-->
 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-security</artifactId>
 </dependency>  

2.2创建Controller

复制代码
@RestController
@RequestMapping("/hello")
public class HelloController {
    @GetMapping
    public String hello(){
        return "hello";
    }
}

2.3启动工程

你可以在 localhost:8080/ 访问该应用程序,这将使浏览器重定向到默认的登录页面。你可以提供 user 的默认用户名和随机生成的密码,随机生成的密码会在项目启动后在控制台中打印出来,如下所示:

默认登录页面如下:(Spring Security默认提供的),此时访问的是hello接口,会跳转到登录页面

输入默认账号: user 密码在控制台打印了,输入账号密码后如下:

如果要注销,你可以访问 localhost:8080/logout,然后确认你想注销。(默认提供)

相关推荐
sunny_2 分钟前
面试踩大坑!同一段 Node.js 代码,CJS 和 ESM 的执行顺序居然是反的?!99% 的人都答错了
前端·面试·node.js
拉不动的猪15 分钟前
移动端调试工具VConsole初始化时的加载阻塞问题
前端·javascript·微信小程序
NE_STOP33 分钟前
MyBatis-配置文件解读及MyBatis为何不用编写Mapper接口的实现类
java
ayqy贾杰2 小时前
Agent First Engineering
前端·vue.js·面试
IT_陈寒2 小时前
SpringBoot实战:5个让你的API性能翻倍的隐藏技巧
前端·人工智能·后端
iceiceiceice3 小时前
iOS PDF阅读器段评实现:如何从 PDFSelection 精准还原一个自然段
前端·人工智能·ios
大金乄3 小时前
封装一个vue2的elementUI 表格组件(包含表格编辑以及多级表头)
前端·javascript
葡萄城技术团队4 小时前
【性能优化篇】面对万行数据也不卡顿?揭秘协同服务器的“片段机制 (Fragments)”
前端
程序员阿峰4 小时前
2026前端必备:TensorFlow.js,浏览器里的AI引擎,不写Python也能玩转智能
前端
Jans4 小时前
Shipfe — Rust 写的前端静态部署工具:一条命令上线 + 零停机 + 可回滚 + 自动清理
前端