当前位置: 首页 > web >正文

动手试一试 Spring Security入门

1.创建Spring Boot项目

引入Web和Thymeleaf的依赖启动器

2.引入页面Html资源文件

在项目的resources下templates目录中,引入案例所需的资源文件(下载地址),项目结构如下

3.创建控制器

@Controller
public class FilmController {//  影片详情页@GetMapping("/detail/{type}/{path}")public String toDetail(@PathVariable("type")String type, @PathVariable("path")String path) {return "detail/"+type+"/"+path;}}

至此,使用Spring Boot整合Spring MVC框架实现了一个传统且简单的Web项目,

目前项目没有引入任何的安全管理依赖,也没有进行任何安全配置,

项目启动成功后,通过http://localhost:8080访问首页,单击影片进入详情详情页。

4.开启安全管理

添加spring-boot-starter-security启动器

一旦项目引入spring-boot-starter-security启动器,MVC Security和WebFlux Security负责的安全功能都会立即生效

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

5.项目启动测试

项目启动时会在控制台Console中自动生成一个安全密码

如果是热部署重启项目,可能不会有安全密码,那就关闭项目,再启动

浏览器访问http://localhost:8080/查看项目首页,会跳转到一个默认登录页面。

因为添加了Security依赖后,会进行spring security的自动化配置,需要先登录,才能访问首页,Spring Security会自带一个默认的登录页面。

随意输入一个错误的用户名和密码,会出现错误提示

Security会默认提供一个可登录的用户信息,其中用户名为user,密码随机生成,

这个密码会随着项目的每次启动随机生成并打印在控制台上,在登录页面输入用户名和密码。

这种默认安全管理方式存在诸多问题,例如:

只有唯一的默认登录用户user、密码随机生成且过于暴露、登录页面及错误提示页面不是我们想要的等。

http://www.xdnf.cn/news/1645.html

相关文章:

  • 加深对vector理解OJ题
  • WASM与Kotlin反编译难度对比分析
  • 【Yolo精读+实践+魔改系列】Yolov1论文超详细精讲(翻译+笔记)
  • 架构-软件工程
  • linux:启动后,ubuntu屏幕变成红色了
  • 第14章 授权:保护应用程序
  • 视觉多模态大模型(VLLM)详解与应用:从原理到医疗实践 [特殊字符][特殊字符]️[特殊字符]️
  • 【优秀三方库研读】【C++基础知识】odygrd/quill -- 折叠表达式
  • 初识Redis · 主从复制(上)
  • Spark-Streaming核心编程
  • 全局变量Msg.sender
  • PC接入deepseek
  • Anything V4/V5 模型汇总
  • PostgreSQL性能优化实用技巧‌
  • C语言教程(十六): C 语言字符串详解
  • TCP基础题:音乐播放列表管理系统
  • React-组件和props
  • 2025五一杯数学建模竞赛思路助攻预定
  • 光影编程师:Threejs Shader 基础全攻略
  • 跟着deepseek学golang--认识golang
  • 《CBOW 词向量转化实战:让自然语言处理 “读懂” 文字背后的含义》
  • 常见的 Spring Boot 注解汇总
  • LVDS系列9:Xilinx 7系可编程输入延迟(二)
  • 32单片机——外部中断
  • 阿里云99机器总是宕机,实测还是磁盘性能差
  • 儿童语义认知功能磁共振成像研究的元分析
  • 迅为RK3568开发板内核模块实现-编写 Makefile
  • MongoDB Compass可视化工具
  • [MERN 项目实战] MERN Multi-Vendor 电商平台开发笔记(v2.0 从 bug 到结构优化的工程记录)
  • 仓库体系结构风格-笔记