springsecurity 是spring提供的关于登录授权的框架,他提供了controller层的服务,只需要我们自己实现service层和dao层,以及一些相关的配置

错误结果以及调试信息

笔者初次使用springsecurity,登录一直显示错误,郁闷的一批,代码debug调试结构
在这里插入图片描述
调试结果显示service层返回controller层的结果里面 全部正确,最后一个List 参数也符合权限配置在这里插入图片描述
结果仍旧返回失败,经过两个小时的各种跪求,找到了原因。

解决方案

原来,springsecurity 安全认证的方式是,将前端用户输入的密码经行加密,加密方法在如下配置
在这里插入图片描述
前端 加密过后的密码会和数据库密码进行对比,由于数据库是我手动插入的没有进行加密,所以导致,框架密码验证不一样,导致登录失败;
修改。将密码加密后插入数据库。
或者,把配置中加密方式注释掉,service层 user 的第二个密码参数这样设置
在这里插入图片描述
这里的user 继承了userdetails 是springsecurity里的类。

Logo

Authing 是一款以开发者为中心的全场景身份云产品,集成了所有主流身份认证协议,为企业和开发者提供完善安全的用户认证和访问管理服务

更多推荐