sotechnology / nova-google2fa
carloscgo/nova-google2fa 的分支,以便与 PHP 7.4 兼容
2.0.6
2021-06-03 16:25 UTC
Requires
- php: >=7.1.0
- bacon/bacon-qr-code: ^2.0
- pragmarx/google2fa-laravel: 1.*
- pragmarx/recovery: ^0.1.0
README
此包强制 Laravel Nova 使用双因素认证。
由于没有其他可用的包与 PHP 7.4 兼容,不得不进行分支操作
主要问题是
pragmarx/google2fa-laravel: ^0.2.0
这需要更新
以下为原始文档
从 0.0.7 升级到 1.0.0
升级指南可在 此处 查找。
流程
激活
- 用户获得恢复码。
- 用户在其设备上激活双因素认证。
验证
- 用户使用双因素认证验证登录。
恢复
- 如果用户输入无效码,将显示恢复按钮。
- 用户输入恢复码。
- 用户将被重定向到激活过程。
安装
通过 composer 安装
$ composer require carloscgo/nova-google2fa
发布配置和迁移文件
$ php artisan vendor:publish --provider="CarlosCGO\Google2fa\ToolServiceProvider"
运行迁移
$ php artisan migrate
将关系添加到用户模型
use CarlosCGO\Google2fa\Models\User2fa; ... /** * @return HasOne */ public function user2fa(): HasOne { return $this->hasOne(User2fa::class); }
将中间件添加到 nova.config
。
[ ... 'middleware' => [ ... \CarlosCGO\Google2fa\Http\Middleware\Google2fa::class, ... ], ]
配置
return [ /** * Disable or enable middleware. */ 'enabled' => env('GOOGLE_2FA_ENABLED', true), 'models' => [ /** * Change this variable to path to user model. */ 'user' => 'App\User', ], 'tables' => [ /** * Table in which users are stored. */ 'user' => 'users', ], 'recovery_codes' => [ /** * Number of recovery codes that will be generated. */ 'count' => 8, /** * Number of blocks in each recovery code. */ 'blocks' => 3, /** * Number of characters in each block in recovery code. */ 'chars_in_block' => 16, /** * The following algorithms are currently supported: * - PASSWORD_DEFAULT * - PASSWORD_BCRYPT * - PASSWORD_ARGON2I // available from php 7.2 */ 'hashing_algorithm' => PASSWORD_BCRYPT, ], ];
安全性
如果您发现任何安全相关的问题,请通过电子邮件联系作者,而不是使用问题跟踪器。
致谢
许可证
MIT 许可证。有关更多信息,请参阅 许可证文件。