diechittigs / contao-tfa-bundle
为 Contao 4 后端用户添加基于 TOTP 的双因素认证
Requires
- php: ^5.6|^7.0
- contao/core-bundle: ^4.4
- robthree/twofactorauth: ^1.6
This package is auto-updated.
Last update: 2024-09-08 16:44:51 UTC
README
由于已经原生支持 contao 4.13,因此此包将不再进一步开发。
Contao 双因素认证
此包通过 TOTP(基于时间的单次密码算法)为 Contao 后端用户启用双因素认证(TFA/2FA)。启用 2FA 的用户在登录后必须输入正确的访问代码才能访问任何后端页面。
该包与 Contao 4.4 或更高版本兼容。
安装
无论您使用哪种方法安装包,请确保之后运行安装工具,以便创建额外的数据库列。
Composer
使用 Composer,在 Contao 安装根目录中简单输入 composer require dieschittigs/contao-tfa-bundle
。
Contao 管理器(Contao 4.5+)
选择 包 > 安装包,然后搜索 contao-tfa-bundle
。然后,点击 检查 & 安装 按钮即可为您安装。
使用方法
要为您的账户启用双因素认证,请访问您的后端个人资料并打开 "双因素认证" 部分。使用兼容的应用程序(我们推荐 Google Authenticator,适用于 iOS 和 Android)扫描显示的 QR 码,并在点击 "保存" 之前输入由应用程序生成的代码。
由于生成的代码是基于时间的,因此会定期更改,因此确保您的服务器时间设置正确非常重要。默认情况下,用于代码验证的库能够纠正最多 30 秒的延迟。您可以在应用程序设置的安全部分中更改此设置。
您还可以通过在应用程序的安全设置中切换 "强制双因素认证" 复选框来强制所有用户设置双因素认证。这将使所有用户(包括您作为管理员)在访问任何其他页面之前重定向到一个 2FA 设置页面。
如果用户无法访问其代码,任何管理员都可以在用户设置中根据每个用户重置双因素认证。在那里,管理员还可以强制用户在下次登录时设置双因素认证,类似于 "密码更改要求" 设置。
注意事项
此包拦截所有后端请求,将尚未进行身份验证的用户重定向到 2FA 认证页面。因此,用户仍然可以登录,但不能访问任何后端页面。
如果您计划代表用户执行代码,请确保考虑双因素状态。虽然用户无法访问任何页面,但他们仍然通过 Symfony 安全层完全认证,因此您必须添加额外的检查以确保双因素认证已完成。
路线图
尽管我们尚未决定任何其他功能,但以下功能可能可行
- 额外的 2FA 方法(例如邮件)
- 备份代码