bug日志-天坑,Spring Security的登陆报错:An internal error occurred while trying to authenticate the user.

在学习Spring Security的时候,我的编辑器给我报错:An internal error occurred while trying to authenticate the user.

明明我是按照教程一步一步的操作的。

我发现当我不使用自定义的登陆页面时,它是正常的。

所以我猜测问题是出现在我的自定义登录页面上。

为此,我特意检查了一下登录页面的from表单,发现里面的用户名的name属性的值是“id”的,并不是通常的“username”值。

我立即修改成:username,重启,刷新,登陆。一气呵成。

我为什么要写成id?因为我这个登陆可以使用邮箱或者身份证号为条件,所以我的数据库内的字段名为id和email,这才会用id作为name。

这个bug耗费我几个小时的时间,可以说是相当的不值的,完全没有什么技术提升。纯粹就是Security设计人员硬编码导致的。

后续有时间,我会去看一下源代码,究竟为什么一定要强制用“username”为name。

特此写这篇bug日记,希望能帮到后面的你。

posted @ 2019-04-15 01:10  山岚  阅读(4950)  评论(0编辑  收藏  举报