【WordPress】WordPress 修改管理员用户名名称

Posted by 西维蜀黍 on 2018-02-24, Last Modified on 2021-09-21

1. 需求

在 WordPress 的管理后台中,对管理员的用户名是无法直接修改的。

为了增强安全性,我需要将管理员的用户名修改成随机字符串。

2. 解决方案

2.1 猜测

猜测 WordPress 用户登录验证的逻辑时,应该也会按照常规思路。即:

  • 将用户名名称和(对原始密码经 MD5 或对应哈希算法加密后的)密码字符串存储在数据库中
  • 进行用户登录验证时,将当前用户输入的账号密码与数据库中存储对账号密码做匹配,如成功,则赋予账户密码正确且登录成功的状态

这意味着,很可能用户名直接就存储在 WordPress 的数据库中。

2.2 验证

探索一波发现,WordPress 所有用户的信息都存储在 wp-users 表中。

因此,我们可以直接用(如 MySql 库,执行 mysql -u <UserName> -p <Password>)或借助 phpMyAdmin 等基于 UI 界面的交互管理方式以修改 wp-users 表。

2.3 方案

选择一种你喜欢的 SQL 执行方法,一条 UPDATE 即可搞定:

UPDATE wp_users SET user_login = '新用户名' WHERE user_login = '老用户名';

如将用户名 admin 修改为 KP78fiIbb422

UPDATE wp_users SET user_login = 'KP78fiIbb422' WHERE user_login = 'admin';