kind-work / two-fa
Statamic 3 2FA 插件
Requires
- bacon/bacon-qr-code: ^2.0
- pragmarx/google2fa-qrcode: ^3.0
- spatie/url: ^1.3 || ^2.0
This package is auto-updated.
Last update: 2023-09-20 12:08:25 UTC
README
此插件不再受支持。要查看受支持的插件,请参阅:https://statamic.com/addons/mity-digital/two-factor
Statamic 3 双因素登录
Statamic 2FA 是一个用于 Statamic 3 的中间件插件,通过基于时间的代码为 Statamic 3 控制面板添加双因素(2FA)认证。
价格
Statamic 2FA 是商业软件。您不需要开发许可证,但在准备将网站部署到生产环境时,请在 Statamic Marketplace 上为每个网站购买一个许可证。
安装
使用 composer 安装插件
您可以通过以下命令或从 Statamic 控制面板安装此插件。
composer require kind-work/two-fa
使用方法
将 two_fa
字段添加到您的用户蓝图。在控制面板(CP)中编辑您的用户配置文件以设置账户的双因素保护。
title: User sections: main: display: Main fields: - handle: name field: type: text display: Name - handle: email field: type: text input: email display: 'Email Address' - handle: roles field: type: user_roles width: 50 - handle: groups field: type: user_groups width: 50 - handle: avatar field: type: assets max_files: 1 - handle: two_fa field: type: two_fa localizable: false display: 'Two FA'
强制 2FA 登录
要强制所有用户使用 2FA,请将环境变量 FORCE_2FA
设置为 true
。
要强制特定角色的 2FA,请发布配置文件并相应地进行编辑。
php artisan vendor:publish --tag="two-fa-config"
QRCode 渲染
默认情况下,QR 码以内联 PNG 文件的形式渲染。这需要 Imagick PHP 扩展。如果您不希望安装或无法安装 Imagick,则可以将 QR 码作为 SVG 渲染。您可以在配置文件中自定义此设置,或通过设置环境变量 QR_CODE_TYPE
为 SVG
来实现。
最大尝试次数
默认情况下,在输入 2FA 代码失败 5 次后,账户将被锁定。您可以在配置中更改此设置,或通过设置环境变量 2FA_MAX_ATTEMPTS
来实现。
记住时间
用户可以选择在输入 2FA 代码时记住浏览器,这样他们就不必在每次登录时重新输入 2FA 代码。默认情况下,记住代码的时间为 30 天。您可以通过在配置中设置浏览器应记住的分钟数或通过设置环境变量 2FA_REMEMBER_TIME
来更改此默认设置。
数据库
如果您在数据库中存储用户,请运行以下命令以生成数据库迁移。
php artisan vendor:publish --tag="twofa-migrations"
从V1迁移到V2
基于文件的用户(默认)
如果您将用户存储在文件中,您可以运行以下迁移来将记住令牌和启用2FA的视觉指示字段移动到新名称。
php please 2fa:migrate:fields
数据库用户
要将您的MySQL数据库迁移到新列名,运行以下命令以复制并运行迁移。
php artisan vendor:publish --tag="twofa-migrations" php artisan migrate
变更日志
有关最近更改的更多信息,请参阅发布说明。
安全
如果您发现任何与安全相关的问题,请发送电子邮件至security@kind.work,而不是使用问题跟踪器。
许可
这是一款商业软件。您可以为您的网站使用该软件包。每个网站都需要自己的许可。您可以从Statamic Marketplace购买许可证。