扫码阅读
手机扫码阅读

【SpringSecurity系列(二)】Spring Security入门

10 2024-11-06

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:【SpringSecurity系列(二)】Spring Security入门
文章来源:
江南一点雨
扫码关注公众号

《深入浅出Spring Security》书籍发布

《深入浅出Spring Security》已由清华大学出版社出版。作者通过一系列的视频和文章介绍了Spring Security的基础知识,包括如何在项目中引入和配置,以及如何自定义登录表单等。

Spring Security 初体验

文中指出,在Spring Boot项目中引入spring-boot-starter-security依赖即可启用Spring Security。系统将提供一个默认用户以及一个UUID格式的密码,并自动生成默认的登录页面和接口。作者还提供了创建和配置项目的步骤,以及如何使用默认的登录凭据访问受保护的接口。

用户配置

文中讨论了默认密码的问题——每次项目重启都会变化,这可能会带来不便。为了解决这一问题,作者介绍了两种非主流的用户名密码配置方案:通过配置文件(application.properties)和配置类。

2.1 配置文件

可以在application.properties中设置默认的用户名和密码,覆盖默认配置。示例中展示了如何配置用户名和密码,并解释了这些配置是如何被注入并影响密码是否自动生成的。

2.2 配置类

配置类可以指定PasswordEncoder,负责密码加密。文中解释了密码加密的必要性,介绍了密码加密方案,以及Spring Security中推荐的BCryptPasswordEncoder。

2.2.1 为什么要加密

作者提到了密码明文存储的安全风险,并引用了CSDN在2011年的用户数据泄露事件,强调了加密的重要性。

2.2.2 加密方案

介绍了散列函数的使用及其重要性,并讨论了盐值在提高密码安全性中的作用,以及在Spring Security中默认的加密方式。

2.2.3 PasswordEncoder

PasswordEncoder接口的实现类BCryptPasswordEncoder和它的方法被介绍,以及如何在配置中使用它。

2.2.4 配置

作者提供了示例代码来说明如何在配置文件中设置PasswordEncoder,并如何配置内存中的用户。

3.自定义表单登录页

作者表达了对默认登录表单的不满,并提供了自定义登录页面的方法。介绍了服务端和前端的配置步骤,并提供了相关代码以及如何将其集成到Spring Boot项目中。

4.小节

文章作为一个入门介绍,概述了表单配置的基础并预告了更深入的内容将在后续文章中提供。作者还提供了加入技术交流群的信息,以便读者能进一步学习和交流。

想要了解更多内容?

查看原文:【SpringSecurity系列(二)】Spring Security入门
文章来源:
江南一点雨
扫码关注公众号