[英]Use username as email, Spring Security UI plugin
我将Spring Security插件与Spring Security UI插件结合使用。
它们都像超级按钮一样工作,但是我的问题是我不希望用户拥有用户名,而是他/她应使用电子邮件作为用户名。
所以在注册阶段,我尝试从注册页面中删除用户名并进行设置
newUser.username = params.email
这样,插件仍然可以访问变量用户名,但这给了我验证错误,而我却想不出解决方法。
有任何想法吗? 有人做过类似的事情吗?
您可以修改Spring Security使用的默认用户字段
在您的Config.groovy中添加以下内容
grails.plugins.springsecurity.userLookup.usernamePropertyName ='XXX'
其中XXX是要使用的用户实体的字段
您可以在此处检查配置属性
我最近通过将视图和控制器从Spring Security插件复制到我的grails-app并更新了视图以将emailAddress显示为反对用户名来完成此操作。 我还用User域类中的emailAddress替换了username属性。 确保按照以下方式更新约束:
static constraints = {
emailAddress email: true, blank: false, unique: true
password blank: false, password: true
}
dimcookies的建议是正确的,并且适用于旧版本的Grails,新的语法配置(至少适用于Grails 2.3.1)是:
grails.plugin.springsecurity.userLookup.usernamePropertyName = 'emailAddress'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.