跳至主要內容

修改默认用户

Leospringsecurityspringsecurity约 1510 字大约 5 分钟

SpringSecurity6 | 修改默认用户

学习参考 :

image-20231030235443828
image-20231030235443828

1.前言

大家好,我是Leo哥🫣🫣🫣,接到上一节open in new window,我们学习了SpringSecurity默认登录用户是如何来的,也通过源码的方式去走了下整个流程。虽然通过SpringSecurity自带的用户和密码密码可以让我们进行登录并访问到我们的接口,但是你每次项目重启,系统所生成的UUID都不一样,这样会不会太麻烦了。能不能通过手动配置的方式来进行配置自定义用户的密码呢。当然可以,下面Leo哥带你通过配置文件来对他进行自定义配置。好了,话不多说让我们开始吧😎😎😎。

2.自定义配置

我们可以在 application.properties 中配置默认的用户名密码。

怎么配置呢?大家还记得上一小节我们说的 SecurityProperties,默认的用户就定义在它里边,是一个静态内部类,我们如果要定义自己的用户名密码,必然是要去覆盖默认配置,我们先来看下 SecurityProperties 的定义:

那么SecurityProperties 是怎么来的呢,当我们项目启动的时候,SpringBoot就会通过自动配置进行加载SpringSecurity所需要的一些bean。

image-20231207195201598
image-20231207195201598

我们可以在文件中找到关于SpringSecurity相关的自动配置类:SecurityAutoConfiguration

然后我们可以点过去看看他的具体实现。

image-20231207195305951
image-20231207195305951

可以看到在这个自动配置类上有一个我们熟悉的注解:@EnableConfigurationProperties,他会去加载SecurityProperties.class。

image-20231207195454972
image-20231207195454972
image-20231207195519488
image-20231207195519488

这一下不就串上了嘛,上节课我们学习了关于SecurityProperties,当我们并没有指定用户的时候,他就会使用默认配置,默认用户名为user,密码为随机生成的UUID。

那么我们现在就可以通过spring.security配置文件进行自定义我们的用户名和密码。

image-20231207195644467
image-20231207195644467

这就是我们新定义的用户名密码。

在 properties 中定义的用户名密码最终是通过set 方法注入到属性中去的,这里我们顺便来看下 SecurityProperties.User#setPassword 方法:

public void setPassword(String password) {
	if (!StringUtils.hasLength(password)) {
		return;
	}
	this.passwordGenerated = false;
	this.password = password;
}

从这里我们可以看到,application.yml 中定义的密码在注入进来之后,还顺便设置了 passwordGenerated 属性为 false,这个属性设置为 false 之后,控制台就不会打印默认的密码了。

最后,我们重新启动项目,注意这次看控制台就没有原来生成的UUID生成的密码了,因为我们没有使用默认配置。

image-20231207195833998
image-20231207195833998

然后通过自定义的用户名和密码进行登录。

image-20231207195926697
image-20231207195926697

发现也是可以正常进行登录的。

3.总结

以上便是本文的全部内容,本人才疏学浅,文章有什么错误的地方,欢迎大佬们批评指正!我是Leo,一个在互联网行业的小白,立志成为更好的自己。

如果你想了解更多关于Leo,可以关注公众号-程序员Leo,后面文章会首先同步至公众号。

公众号封面
公众号封面

🥇4.文末推荐福利

🥇4.1 介绍

image-20231207204821836
image-20231207204821836

看清AI写作逻辑,讲透AI写作之道;掌握写作黑科技,用AI引爆你的创作天赋;从0到1,教你巧用AI学会写作;突破写作困境,完成从写作小白到写作大神的蜕变。

🥇4.2 特色

覆盖常用写作场景:写小说、写故事、写文案、写策划、写新媒体文章、写广告卖点……

提高写作效率:输入有效提问关键词,一键生成所需内容,稍加修改便成一篇完整文章,将写作效率成百倍提升。

扩大素材积累:作为天生的超大型素材库,只有你想不到的素材,没有AI无法提供的素材,极大充实素材库,让写作不再无内容可写。

快速进行文本精修:文稿写完只完成了第一步,修改校对仍是重中之重。AI自带语句精修功能,可对文稿的内容、结构、标点符号等进行全方位的修订,让稿件修改更轻松、更精细。

🥇4.3 内容简介

本书从写作与ChatGPT的基础知识讲起,结合创作者的实际写作经历与写作教学经历,重点介了用ChatGPT写作的基础技巧、进阶写作的方法、不同文体的写作方法、写作变现的秘诀,让读者系统地理解写作技巧与变现思路。本书包括如下内容:用ChatGPT重建写作思维、快速摘定选题、快速写出标题、高效收集索材、生成文章结构、写出优质文章、进行日常写作训练,以及用ChatGPT提升写作变现能力。本书适合零基础想学习写作、想利用ChatGPT提高写作能力的读者阅读。

🥇4.4 购买链接

当当链接:http://product.dangdang.com/29626355.htmlopen in new window

京东链接:https://item.jd.com/13856373.htmlopen in new window

🥇4.5 参与方式

🌟关注我的博客:关注我的博客,所有新鲜的博客文章和活动信息都不会错过。
📲添加博主wx:添加Leocisyam,如果添加不了,请私信博主。
💬参与方式:关注公众号程序员Leo或者文末扫码关注,回复抽奖,即可参与抽奖,记住要加Leo哥微信哈,方便通知。
🎁公布结果:2023年12月12日晚,我会亲自抽取2名幸运读者,并在微信私信通知,请大家注意查收哈。