初识 Joomla 4.2,多因素认证(MFA)
随着 4.2 的发布,我们现在有了认证我们网站的一种新方式。随着许多新认证方法的到来,两因素认证已经过时了,所以随之而来的是多因素认证(MFA)。
什么是多因素认证?
超过 9 年的时间里,Joomla 都有一个两因素认证解决方案。每个用户都有一个用户名和密码,对于一些网站,他们还需要使用第二个认证因素。这可能意味着将您的账户与手机上的 Google Authenticator 或 Authy 链接起来。您输入用户名和密码,然后系统会要求您输入一个显示在手机上的 6 位数字代码。这个代码每 30 秒会改变一次,如果屏幕上的数字和您在链接账户中输入的数字不匹配,登录将被拒绝。
Nicholas K. Dionysopoulos(贡献了新多因素认证功能的开发者)采用的方法是“捕获登录”方法。首先,您登录到您的用户账户。在您能够访问网站的登录区域之前,您会看到一个额外的屏幕来验证您的登录——这就是“捕获登录”发生的地方。您可以使用用户账户中设置的任何方法进行验证。然后,您将完全登录并可以像往常一样继续操作。
.实现的新功能和考虑事项
每个用户多个认证方法
用户可以有多个 MFA 方法。一个设置可以是两个 WebAuthn 密钥(主密钥和备份密钥)以及一个用于不支持 WebAuthn 插件的旧智能手机的经典的六位数代码。这使得 MFA 更易于使用,并且对意外导致人们无法访问其网站的情况具有更强的恢复能力。
默认方法。
如果您有多个认证方法,您不想停下来思考您今天将使用哪种方法进行认证,尤其是您很可能会 99% 的时间使用相同的方法。因此,您可以选择一个默认方法。您不能将紧急代码作为默认方法使用,因为紧急代码只能使用一次,以减少愚蠢错误的可能性。
分组方法以简化认证
假设您设置了三个 WebAuthn 认证器。当您登录时,您希望看到一个要求您输入 WebAuthn 登录的单页,而不是必须点击来选择您将使用哪个 WebAuthn 认证器。
WebAuthn 和 YubiKey 允许您设置多个实例,因此您无需选择想要使用的 WebAuthn 验证器或 YubiKey,只需选择方法,例如“WebAuthn”。然后您可以使用您已设置的任何验证器/密钥。Joomla 会像专业多因素认证解决方案一样处理它。常规认证码和通过电子邮件的认证码只允许单个实例,因此它们不执行方法分批。
现有的双因素认证方法将自动迁移。
为了支持每个用户多个 MFA 方法,需要对 Joomla 表进行一些结构调整。来自两个 #__users 列(otpKey 和 otep)的 MFA 数据已移动到自己的表 (#__user_tfa)。任何已设置的旧版双因素认证(TFA)方法将在首次登录时自动迁移。这意味着即使在拥有数十万用户的网站上,MFA 也能干净地迁移,而如果在更新期间进行迁移则不会是这样。这意味着在用户登录之前,您在后台的 com_users 中看不到他们的 TFA/MFA 状态或配置设置。
数据已加密
MFA 配置数据仍然使用来自网站“密钥”的密钥使用 AES-256 加密。因此,任何扩展中的简单 SQLi 漏洞都不会泄露 MFA 的机密。
可用的新认证方法
您现在可以在现有的认证码和 YubiKey 方法之上使用通过电子邮件的认证码和 WebAuth。前者将 6 位数字码发送到您的电子邮件,还可以设置为强制启用任何人(如果您的用户不太懂技术,则提供可行的备份)。后者支持 Windows Hello 和 Android。
强制 MFA 和禁止 MFA 组
您可以选择设置某些用户组必须强制启用 MFA,其他组必须强制拒绝 MFA。必须强制 MFA 的组需要设置 MFA 并使用它来继续使用网站。被禁止使用 MFA 的组永远不会被要求通过捕获登录,即使他们以前已启用,也不会在 com_users 中看到 MFA 配置部分。
入职以推动采用
如果您登录的用户尚未启用 MFA,则可以自动显示入职页面。他们可以设置 MFA、转到不同页面或永远忽略入职页面。您还可以自定义入职 URL,例如,如果您想显示自己的文章而不是显示默认的 MFA 设置页面。据 Nicholas 称,这可以将 MFA 采用率提高十倍。请注意,入职默认是禁用的。
超级用户不能编辑其他超级用户
作为超级用户,您无法更改其他超级用户的 MFA 设置。因此,如果超级用户的信息错误,您可能需要进行一些数据库编辑。
管理员只能删除其他用户的 MFA 选项。作为特权用户,您只能从其他(非超级用户)用户帐户中删除 MFA 选项,或完全禁用他们的 MFA。您不能编辑他们的 MFA 配置或注册新的 MFA 方法。
单次点击禁用
MFA 配置界面包括一个“关闭”按钮,可以完全禁用您的用户帐户的 MFA。如果您失去了所有 MFA 方法、使用了紧急代码,只是想暂时关闭 MFA 直到您解决其他问题,这很有用。
捕获页面中的模块位置定制
您可以选择在捕获 MFA 页面上显示哪些模块位置。这使您能够显示,例如,您网站的页眉和页脚,以提供更好的视觉体验。
总之,凭借新的多因素认证,Joomla 4.2 拥有一个可扩展、安全且适合未来的认证。
翻译
德语翻译: Joomla 4.2中的多因素身份验证(MFA)
在Joomla社区杂志上发表的一些文章代表作者对特定主题的个人观点或经验,可能与Joomla项目的官方立场不一致
接受后,您将访问由 https://magazine.joomla.net.cn/ 外部的第三方提供的服务
评论 1
在joomla4中是否有可能只对管理端或后端启用MFA?