无法登录我的grails应用程序

时间:2015-04-25 10:28:40

标签: security authentication grails

我有一个grails应用程序,其中我正在为一个管理员和另一个普通用户创建bootstrap.groovy文件。 我正在使用spring security插件来保证安全。

我的问题是我可以从bootstrap.groovy bt中创建的用户登录,而我从我的应用程序创建一个新用户时我无法从该用户登录。

我收到以下错误消息:

DEBUG dao.DaoAuthenticationProvider  - Authentication failed: password does not match stored value

这是我的域名编码密码功能

def beforeInsert() {

        super.beforeInsert()
        encodePassword()
    }

    def beforeUpdate() {
        if (isDirty('password')) {
            encodePassword()
        }
    }
protected void encodePassword() {
    password = springSecurityService.encodePassword(password)
}

这是我的用户插入代码值来自我的登录表单

User user = User.findByEmail(email) ?: new User(firstName: fname, lastName: lname, email: email,
                password: password, enabled: true, accountLocked: false, accountExpired: false).save()

这是我的bootstrap.groovy inIt函数

User user = User.findByEmail('systemuser@gmail.com') ?: new User(firstName: 'System', lastName: 'User', email: 'systemuser@gmail.com',
                password: 'user', enabled: true, accountLocked: false, accountExpired: false).save()

我正在使用此密码算法进行编码

grails.plugin.springsecurity.password.algorithm='bcrypt'

0 个答案:

没有答案