VPS主机与服务器★ 4.7 推荐评级

WordPress怎么禁用找回密码功能

博主头像站长评测
发布于 2019/11/19原创独立站体系

如果你WordPress搭建的网站开放了注册,又不想用户通过找回密码功能来找回密码,那么可以使用下面的代码禁用密码重置功能。

把以下代码添加到主题的函数文件里面,不会添加的话参见:安全添加代码到functions.php文件的方法:Code Snippets

function disable_password_reset() { return false; } add_filter ( ‘allow_password_reset’, ‘disable_password_reset’ );

禁止后,用户点击忘记密码就会提示无法设置密码了。

为什么要禁用找回密码功能?

对于纯内部团队使用、个人独立博客或多用户受控站点,WordPress 登录界面的“找回密码”(Lost your password?)链接常常成为黑客发起恶意撞库攻击与用户名枚举扫描的突破口。彻底关闭该功能能够有效收紧系统安全入口边界。

两种实用安全加固方案

方案一:在 functions.php 中阻断找回密码请求

在当前主题的 functions.php 文件中追加以下过滤代码:

// 禁用 WordPress 原生找回密码处理
function disable_lost_password() {
    if ( isset( $_GET['action'] ) && in_array( $_GET['action'], array( 'lostpassword', 'retrievepassword' ) ) ) {
        wp_redirect( wp_login_url() );
        exit;
    }
}
add_action( 'login_init', 'disable_lost_password' );

方案二:CSS 隐藏登录页面重置链接

在登录页面样式中注入 #nav { display: none; },直接隐藏登录框下方的找回密码文字入口。