boxed-code/laravel-challenge

为Laravel应用提供多方法双因素认证。

2.0 2021-02-19 19:27 UTC

This package is auto-updated.

Last update: 2024-09-21 00:40:59 UTC


README

Tests Latest Stable Version License

Auth Flow

版本兼容性

您需要PHP >= 7.4和Laravel 6.x, 7.x或8.x。

入门

一个演示项目可在laravel-challenge-demo找到,查看这个提交了解如何简单实现。

安装

composer require boxed-code/laravel-challenge,然后使用./artisan migrate运行数据库迁移

实现

修改您的User模型类以实现\BoxedCode\Laravel\Auth\Challenge\Contracts\Challengeable接口,并可选地使用BoxedCode\Laravel\Auth\Challenge\Challengeable特质,或者自行实现合约中定义的方法。

接下来,您必须将中间件\BoxedCode\Laravel\Auth\Challenge\Http\Middleware\RequireAuthentication添加到您想要保护的路由中,或者简单地将其添加到全局堆栈中

进一步步骤

https:///tfa/email/enrol登录并注册到默认的'email'认证方法,然后注销并重新登录,通过电子邮件进行2FA挑战。

待文档化

  • 概述
  • 配置选项(challengeable.php)
  • 认证方法
    • 启用默认方法
      • 电子邮件
      • Twilio短信
      • Twilio语音(进行中)
      • Google身份验证器[OTP]
      • 密码(进行中)
    • 基于自定义通知的认证方法
    • 自定义认证方法
  • 挑战
    • 令牌生成器
    • 有效期与定期重新认证
    • 自定义仓储
  • 不同目的和生命周期的认证
  • 皮肤/主题视图
  • 事件

许可协议

MIT