首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Laravel中实现phpass

在Laravel中实现phpass
EN

Stack Overflow用户
提问于 2013-04-25 07:57:28
回答 1查看 547关注 0票数 1

我正在使用Laravel 3.2创建一个新网站。我的站点将链接到现有的用户数据库,这意味着来自另一个站点的用户将能够使用相同的帐户登录到此站点。

现有的站点使用phpass,所以我想,我需要在Laravel站点中使用phpass来使身份验证正常工作。我下载了Laravel的phpass包,我已经实现了它,只是为了散列密码和检查密码。有没有办法将它实现到Laravel身份验证类中,这样使用普通的Laravel身份验证方法就会使用phpass?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-04-25 12:37:05

您需要实现自己的自定义身份验证驱动程序。这是一个相对无痛的过程,需要一些自定义代码才能工作,但值得庆幸的是,L3很容易扩展。

本质上,您可以扩展一个现有的驱动程序(Eloquent或Fluent),并简单地重载attempt方法。看一下Eloquent驱动程序。Hash::check()方法位于第53行。因此,基本上,在libraries中为您的驱动程序创建一个新文件,可能名为phpass.php,并扩展和调整驱动程序。

然后使用Auth::extend()方法注册您的驱动程序。

代码语言:javascript
复制
Auth::extend('phpass', function()
{
    return new Phpass;
}

然后在application/config/auth.php中设置驱动程序。

代码语言:javascript
复制
'driver' => 'phpass'

祝你好运。

参考文献

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

https://stackoverflow.com/questions/16204206

复制
相关文章

相似问题

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