lipetuga / laravel-u2f
laravel 7 的 U2F 支持
1.8.5
2020-11-03 10:49 UTC
Requires
- php: >=7.2
- illuminate/auth: ^8.0
- illuminate/config: ^8.0
- illuminate/container: ^8.0
- illuminate/contracts: ^8.0
- illuminate/database: ^8.0
- illuminate/events: ^8.0
- illuminate/http: ^8.0
- illuminate/routing: ^8.0
- illuminate/session: ^8.0
- illuminate/translation: ^8.0
- illuminate/view: ^8.0
- yubico/u2flib-server: 1.0.1
README
此 PSR4 包提供在 Laravel 6 框架中集成 U2F 协议。
需求
- 顶级域名
- HTTPS
- PHP >= 7.2(如果您想使用此包与 PHP 5 一起使用,则需要使用版本 v1.1.0)
安装
通过 Composer
$ composer require lahaxearnaud/laravel-u2f
Laravel 5.5+ 使用包自动发现,因此不需要您手动添加 ServiceProvider。
配置
$ php artisan vendor:publish --provider="Lipetuga\U2f\U2fServiceProvider" --tag=u2f-config
资产
$ php artisan vendor:publish --provider="Lipetuga\U2f\U2fServiceProvider" --tag=u2f-components
视图
$ php artisan vendor:publish --provider="Lipetuga\U2f\U2fServiceProvider" --tag=u2f-views
注意,默认视图使用 Laravel 的默认 Bootstrap 4。如果您不使用它,您必须更新视图。
迁移
$ php artisan vendor:publish --provider="Lipetuga\U2f\U2fServiceProvider" --tag=u2f-migrations
$ php artisan migrate
中间件
在 app/Http/Kernel.php 文件中
protected $routeMiddleware = [ 'auth' => \App\Http\Middleware\Authenticate::class, // ... 'u2f' => \Lipetuga\U2f\Http\Middleware\U2f::class, ];
用法
有一个 示例项目 可用于帮助您进行配置/使用。
中间件
在 route.php 文件中,在您的路由或分组中添加 u2f 中间件
Route::get('admin/profile', ['middleware' => ['auth', 'u2f'], function () { // }]);
在控制器中
/** * Create a new controller instance. * * @return void */ public function __construct() { $this->middleware(['auth', 'u2f']); }
配置
事件
-
名称:
u2f.authentication负载:
[ 'u2fKey' => $key, 'user' => Auth::user() ]描述: 用户使用有效的 U2F 密钥进行身份验证
-
名称:
u2f.register负载
[ 'u2fKey' => $key, 'user' => Auth::user() ]描述: 用户注册新的 U2F 密钥
变更日志
请参阅 CHANGELOG 了解最近更改的信息。
安全
如果您发现任何安全相关的问题,请通过电子邮件 lahaxe[dot]arnaud[at]gmail[dot]com 联系我们,而不是使用问题跟踪器。
致谢
- Arnaud LAHAXE
- Mike Robinson
- Chakphanu Komasathit
- Anne Jan Brouwer
- Alexis Saettler
- Thomas Lété
- Luca Bognolo
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。
编码之后
在花费数小时编码之后,还有什么比在露台上享用一杯美酒更好的放松方式呢?cocktail