首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >拉勒维尔8月5日:这些证书与我们的记录不符。

拉勒维尔8月5日:这些证书与我们的记录不符。
EN

Stack Overflow用户
提问于 2015-04-04 23:24:44
回答 5查看 45.8K关注 0票数 10

我刚开始在拉拉维尔5,我来自拉拉维尔4环境,所以这应该不会太难。

我听说L5附带了一个内置的认证系统,这是很好的。我已经设置了从数据库到视图的所有内容。

注册过程是正确的,然后它会自动登录我。但是,当我注销并尝试重新登录时,我会得到以下错误:

这些凭据与我们的记录不匹配。

我不知道怎么回事。我是否必须手动编写登录控制器,或者它在L5中是如何工作的?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2015-05-26 20:07:59

我也有过同样的问题。我的原因是我在我的setPasswordAttribute模型中定义了User,所以每次输入普通密码时,它都会在发送到DB之前进行散列。

代码语言:javascript
运行
复制
public function setPasswordAttribute($password)
{
    $this->attributes['password'] = \Hash::make($password);
}

在我的db:seed中,我也用Hash::make("password")创建了一个具有散列密码的用户。因此,laravel散列散列密码:)

在LaravelVersion5.*中,您不需要为Auth哈希输入密码,因为Auth自己管理它。您只需通过表单传递{{csrf_field()}}即可。

票数 27
EN

Stack Overflow用户

发布于 2016-05-14 02:08:43

除了@mervasdayi解决方案之外,在setPasswordAttribute中散列密码避免重新散列问题的一个好方法可能是:

代码语言:javascript
运行
复制
public function setPasswordAttribute($password){
    $this->attributes['password'] = Hash::needsRehash($password) ? Hash::make($password) : $password;
}
票数 7
EN

Stack Overflow用户

发布于 2017-04-03 01:03:57

还有@mervasdayi & Gerard Reches的建议。我只是想做个笔记,你需要包括

代码语言:javascript
运行
复制
use Illuminate\Support\Facades\Hash;

添加这些补丁时,在User模型的顶部。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29452497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档