黑马ssm整合案例异常记录之Bad credentials、access is denied异常

黑马ssm整合案例异常记录之Bad credentials、access is denied异常

在做黑马程序员ssm整合案例的用户登录功能时,代码完成后,点击登录,还是提示登陆失败,控制台查看日志发现Bad credentials、access is denied异常,网上很多帖子没说到点子上,记录一下我的改正过程:  
结论:密码加密方式不匹配所导致的  
解释:在他所给的案例中,在测试登录功能时,用户名和密码是通过明文存入数据库,而用户登录时输入密码采用的加密方式是class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"
此时就会出现加密方式不匹配的情况,导致密码验证不通过,出现Bad credentials异常,在注释掉配置加密方式的代码后,成功登录!  
解决办法:在目前没有实现密码以加密形式存入数据库的功能下,先注释掉加密方式配置,以保证登录功能正常执行,在实现密码以加密形式存入数据库的功能后,再添加加密方式配置,从而使登录用户密码的加密方式与数据库存储的加密方式保持一致  
拓展:对于"{noop}"+password中{noop}表示的是加密方式,如:{MD5}88e2d8cd1e92fd5544c8621508cd706b代表使用的是MD5加密方式;{bcrypt}$2a 10 10 10eZeGvVV2ZXr/vgiVFzqzS.JLV878ApBgRT9maPK1Wrg0ovsf4YuI6代表使用的是bcrypt加密方式。spring security官方推荐使用更加安全的bcrypt加密方式。
noop即NoOpPasswordEncoder就是没有编码的编码器
NoOpPasswordEncoder的encode方法就只是简单地把字符序列转成字符串,也就是说,你输入的密码”123456”存储在数据库里仍然是”123456”
  在这里插入图片描述参考:https://www.cnblogs.com/majianming/p/7923604.html
参考:https://blog.csdn.net/alinyua/article/details/80219500

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值