Grails 3/4/5 Spring Security 插件通过电子邮件登录

问题描述 投票:0回答:1

我们将 Grails 应用程序从版本 3 升级到版本 4。具有所有依赖项,包括 4.0.4 上的 Spring Security。此前,用户使用用户名和密码登录。我们现在想将其更改为电子邮件/密码组合。

我在application.groovy中设置了值:

grails.plugin.springsecurity.userLookup.usernamePropertyName = 'email'
。然后我在 application.yml 中尝试了这一点。但是,我无法使用电子邮件登录。它仍然适用于用户名。我现在使用 Grails 5 和 Spring 5。应用程序运行没有错误,但登录不起作用。有人有建议吗?谢谢你。

在另一个调试会话之后:问题似乎是在 UserDetailService 中调用了两次 loadUserByUsername() 方法。第一次它找到具有电子邮件的用户,但第二次它使用用户名运行查询,因此什么也没找到。有谁知道为什么会这样?

grails spring-security
1个回答
0
投票

对于我们来说,我们刚刚向用户名字段添加了电子邮件验证,并添加了另一个字符串类型的名称字段作为用户的显示名称。

© www.soinside.com 2019 - 2024. All rights reserved.