哪些CMS内容管理系统支持双因子身份登录认证?

举报
鹅是程序猿 发表于 2026/04/29 15:09:35 2026/04/29
【摘要】 不管你是使用什么CMS内容管理系统,在网站上线后,都不可避免的受到各种恶意请求网站后台的网络攻击,虽然可以通过自动锁定等技术来解决这个问题,但是当攻击端更换ip,更换useragent实现随机登录后,自动锁定和自动屏蔽的效果就大打折扣。这时候,启用双因子(双因素)身份(2FA)认证就很好的解决了这个安全隐患,尤其是政务类网站,后台系统必须具备完善的双因子认证功能,否则将无法通过等保检测,主流...

不管你是使用什么CMS内容管理系统,在网站上线后,都不可避免的受到各种恶意请求网站后台的网络攻击,虽然可以通过自动锁定等技术来解决这个问题,但是当攻击端更换ip,更换useragent实现随机登录后,自动锁定和自动屏蔽的效果就大打折扣。

这时候,启用双因子(双因素)身份(2FA)认证就很好的解决了这个安全隐患,尤其是政务类网站,后台系统必须具备完善的双因子认证功能,否则将无法通过等保检测,主流的CMS建站系统都可以通过原生或插件来实现双因子认证功能,下面分别以pageadmin(国产企业级标杆)和wordpress(全球生态无敌)为代表,讲解两个CMS系统实现双因子登录认证的步骤。

一、PageAdmin CMS的配置教程

国内很多大中型政务网站和大学、教育等网站后台都是采用PageAdmin CMS的框架,下面讲解PageAdmin如何开启双因子(双因素)身份认证。

1、进入统一认证平台的管理后台>系统管理>通用设置,如下图:

开启防火墙功能后,可以看到双因子增强认证设置,支持固定口令、手机短信验证两种认证模式。

1.1:固定口令:适合普通用户的安全增强。

1.2:手机短信验证:如果需要过二级和三级等保,只能使用手机短信认证,这个是等保的合规要求。

2、配置双因子认证后,用户登后进入后台时会进行二次验证

2.1:固定口令模式二次验证界面,如下图:

2.2:短信二次验证模式的验证界面,如下图:

短信验证需要先配置短信账号,pageAdmin的双因子认证也有安全次数验证,比如连续录入多次失败后(可配置)会自动锁定账号和ip。

以上就是PageAdmin的双因子身份认证的配置教程。

二、Wordpress的配置教程

wordpress原生不支持双因子,但是可以通过安装第三方插件来实现。

首先,你需要一个插件来生成验证码,例如使用Really Simple CAPTCHA

  1. 前往“插件” > “添加新插件”。

  2. 搜索并安装Really Simple CAPTCHA

  3. 激活插件。

步骤2:创建自定义函数

在你的主题的functions.php文件中,或者一个自定义的插件中,添加以下代码:

function custom_login_form() {
    // 获取验证码图片的HTML代码
    $captcha = get_really_simple_captcha();
    ?>
    <div>
        <label for="captcha_code">验证码:</label>
        <input type="text" name="captcha_code" id="captcha_code" required="required" />
        <img src="<?php echo $captcha['img_url']; ?>" alt="captcha" />
    </div>
    <?php
}
add_action('login_form', 'custom_login_form');

步骤3:验证验证码,代码如下:

function custom_login_validate($username, $password) {
    if (isset($_POST['captcha_code'])) {
        $captcha_code = $_POST['captcha_code'];
        $captcha = get_really_simple_captcha(); // 获取当前的验证码设置
        if (!check_really_simple_captcha($captcha_code, $captcha['key'])) { // 检查验证码是否正确
            wp_die('验证码错误!'); // 如果验证码错误,阻止登录并显示错误消息。
        }
    } else {
        wp_die('请填写验证码!'); // 如果未填写验证码,阻止登录并显示错误消息。
    }
}
add_action('wp_authenticate', 'custom_login_validate', 10, 2); // 在wp_authenticate动作上添加验证函数。

通过以上方法,你可以在WordPress中实现双因子认证。

总结:

由于国内环境的特殊性,采用Google Authenticator的 TOTP一次性密码通常无法通过等保认证,而且Google在国内几乎打不开,最标准最合规的做法是使用短信验证来实现双因子认证。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。