一、composer安装
composer require pragmarx/google2fa-laravel
二、在Laravel中安装
- Laravel 5.5以上
无需操作 - Laravel5.4及以下
添加 Service Provider 和 Facade alias 于app/config/app.php
(Laravel 4.x) 或者config/app.php
(Laravel 5.x):
PragmaRX\Google2FALaravel\ServiceProvider::class,
'Google2FA' => PragmaRX\Google2FALaravel\Facade::class,
三、生成配置文件
在终端执行:
php artisan vendor:publish --provider="PragmaRX\Google2FALaravel\ServiceProvider"
文件生成位置:config/google2fa.php
四、使用
- 使用Facade
use Google2FA;
return Google2FA::generateSecretKey();
- 使用依赖注入
$google2fa = app('pragmarx.google2fa');
return $google2fa->generateSecretKey();
- 函数
$google2fa = app('pragmarx.google2fa');
//生成密匙,$length:密匙长度
$google2fa->generateSecretKey($length);
//密匙验证,$google2fa_secret:数据库保存的密匙;$secret:用户输入的验证码
$google2fa->verifyKey($google2fa_secret, $secret);
//二维码链接,$company:公司名,$email:邮箱,$secretKey:密匙
$google2fa->getQRCodeUrl($company, $email, $secretKey);
五、中间件
- 在Kernel.php文件中添加一行:
protected $routeMiddleware = [
...
'2fa' => \PragmaRX\Google2FALaravel\Middleware::class,
];
- 在路由中使用
Route::get('/admin', function () {
return view('admin.index');
})->middleware(['auth', '2fa']);