springsecurity体验01

1、idea新建springboot项目,添加web和security依赖,springboot版本是2.2.5,依赖的security版本是5.2.2:

 2、添加一个测试的controller

3、不用加@EnableWebSecurity注解,直接启动项目,发现控制台打印:

 4、访问http://localhost:8080/hello,发现默认被保护,回重定向登录页面,这是springsecurity默认页面,都是 /login ,只不过一个是 get 请求(登录页面),另一个是 post 请求(登录接口),默认用户名是user,密码是控制台打印的密码。

5、我们来看下源码,看下默认的用户和密码规则,首先crtl+shift+f搜索控制台打印的那句话“Using generated security password”,进入到UserDetailsServiceAutoConfiguration

 再进入SecurityProperties,发现默认用户名和密码

 6、这个密码会随着项目的重启而发生变化,看源码发现,我们可以在properties 文件里自定义,前缀是spring.security

 7、重启项目使用自定义的用户名密码登录即可,启动项目是发现控制台不打印密码了,看下源码打印条件是user.isPasswordGenerated(),在跟下发现如果只用我们自定义密码注入时会顺便设置了 passwordGenerated 属性为 false

猜你喜欢

转载自www.cnblogs.com/tcmlflw/p/12571978.html
今日推荐