Laravel5.2对接Google Authenticator实现二步认证

本文介绍了如何在Laravel5.2项目中集成Google Authenticator进行二步验证,包括安装PHPGangsta/GoogleAuthenticator库,修改登录流程,避免在handleUserWasAuthenticated方法中立即保存登录状态,而是让用户完成二步验证后再保存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

日常瞎逼逼(可以直接跳过看正文)

宝宝发现我网站的更新频率太低了, 想写点东西又不知从何写起. 可能一部分原因是前阵子做的东西是公司的, 没办法开源, 还有一个原因是最近在做的是私有的项目, 不方便开源. 当然, 还有更重要的原因是...肚里没货. [笑哭]

最近宝宝在学Laravel, 刚开始学, 以下内容如果有不正确之处, 欢迎斧正.

既然是做私有项目了, 而且这个项目是web的, 通过浏览器访问. 用的是Laravel, 它有一套自带的认证机制(5.2以上), 但是我觉得密码不安全, 虽然我已经用了20位的随机生成的密码了, 认证机制里又没有提供二步认证, 所以就有了这篇文章.

正文

二步认证现在也是用得比较多了, 有的是用短信, 有的是用app生成一个6位数的随机码, 然后在登录的时候要输入, 比如将军令之类的.

当然了, 使用短信也可以, 但是考虑到我的是私有项目, 所以要控制成本- -(主要是穷). 然后就选择了Google Authenticator

原理: 谷歌验证 (Google Authenticator) 的实现原理是什么?

直接用的是 PHPGangsta/GoogleAuthenticator

安装PHPGangsta/GoogleAuthenticator

修改laravel目录下的composer.json

在require里加入PHPGangstaAuthenticator, 就像这样

"require": {
    "php": ">=5.5.9",
    "laravel/framework": "5.2.*",
    "phpgangsta/googleauthenticator": "dev-master"
},

然后

[root@superxc laravel]# composer install
[root@superxc laravel]# composer update

如果安装的过程中提示内存不足, 就像这样(我的服务器因为内存小, 所以出现了这个问题)

The following exception is caused by a lack of memory or swap, or not having swap configured

就需要手动挂载一个swap分区.

dd if=/dev/zero of=/var/swap.1 bs=1M count=1024 //生成一个大文件

mkswap /var/swap.1 //格式化成swap格式

swapon /var/swap.1 //挂载

free //查看swap是否正确挂载

swapoff -a //反挂载所有交换分区

使用PHPGangsta/GoogleAuthenticator

先use \PHPGangsta_GoogleAuthenticator;

然后就可以用了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值