dede管理员表结构如何修改?

99ANYc3cd6
预计阅读时长 14 分钟
位置: 首页 DEDE建站 正文

admin 表是 DedeCMS 的核心数据表之一,它存储了系统中所有管理员账户的信息,理解这个表的结构和字段对于管理后台、排查问题、进行二次开发都非常重要。

dede 管理员 表
(图片来源网络,侵删)

表结构

admin 表的结构通常如下所示(不同版本的 DedeCMS 可能略有差异,但核心字段基本一致):

字段名 数据类型 说明 示例值
uid mediumint(8) unsigned 管理员ID,主键,自增。 1, 2, 3
usertype char(20) 管理员类型,如 superadmin (超级管理员), admin (普通管理员)。 superadmin
userid char(30) 管理员登录用户名,唯一。 admin
pwd char(50) 管理员登录密码,经过 MD5 加密。 21232f297a57a5a743894a0e4a801fc3 (这是 admin 的MD5值)
uname varchar(50) 管理员的真实姓名或昵称。 站长
tname varchar(50) 管理员在后台显示的名称。 超级管理员
email varchar(50) 管理员的电子邮箱。 admin@example.com
typeid smallint(5) unsigned 管理权限组ID,关联 arctype 表或专门的权限表,用于控制管理员的栏目管理权限。 0 (表示所有栏目) 或 1, 2, 3...
logintime int(10) unsigned 最近登录时间,Unix 时间戳格式。 1678886400
loginip char(15) 最近登录IP地址 168.1.100
check smallint(5) unsigned 管理员状态,如 1 (正常), 0 (禁用)。 1
dede_addonarticle varchar(20) (旧版本特有)与附加表相关的权限设置,新版本已不常用。 -
spaceid smallint(5) unsigned 空间ID,用于多站点或会员空间管理。 0
money decimal(10,2) 会员余额,如果管理员同时是会员,此字段有效。 00
rank smallint(5) unsigned 会员等级,如果管理员同时是会员,此字段有效。 0
sex tinyint(1) 性别,0 (保密), 1 (男), 2 (女)。 0
card varchar(20) 身份证号。 -
mtype char(10) 会员类型。 -
scores int(10) unsigned 会员积分。 0
moneyrank smallint(5) unsigned 资金等级。 0
experience int(10) unsigned 会员经验值。 0
uprank int(10) unsigned 提升等级所需经验值。 0
logincount int(10) unsigned 登录次数 25
safequestion smallint(5) unsigned 密码安全问题ID。 0
safeanswer char(30) 密码安全问题答案。 -
jointime int(10) unsigned 注册时间,Unix 时间戳格式。 1609459200
joinip char(15) 注册时的IP地址。 0.0.1

核心字段详解

  1. uid

    • 作用:每个管理员账户的唯一标识符,是主键。
    • 用途:在其他表中(如操作日志表 dede_adminlog)通过 uid 来关联是哪个管理员执行的操作。
  2. useridpwd

    • 作用:登录系统的凭证。
    • userid:登录用户名,是唯一的,你不能创建两个同名用户。
    • pwd:登录密码。重要:这个字段存储的是密码的 MD5 哈希值,而不是明文,这是为了安全,如果你忘记密码,不能直接在这个表中修改 pwd 为明文,需要通过 DedeCMS 后台的“修改密码”功能来重置,它会自动为你生成新的 MD5 值。
  3. usertype

    dede 管理员 表
    (图片来源网络,侵删)
    • 作用:定义管理员的级别。
    • superadmin:超级管理员,拥有网站的最高权限,可以管理所有内容、所有模块、所有其他管理员。
    • admin:普通管理员,其权限由超级管理员在后台“系统” -> “账号管理” -> “管理权限组”中分配,可以只管理特定的栏目或内容模型。
  4. typeid

    • 作用权限控制的核心字段
    • :它存储的是栏目(频道)的ID。
    • 逻辑
      • typeid0,表示该管理员拥有所有栏目的管理权限。
      • typeid 为一个或多个栏目ID(如 1,3,5),则表示该管理员能管理这些ID对应的栏目及其子栏目,这是 DedeCMS 实现多管理员分栏管理的关键。
  5. logintimeloginip

    • 作用:用于记录和管理员的活动情况,方便追踪和审计。
    • logintime:记录管理员最后一次成功登录的时间(Unix时间戳),你可以在后台查看。
    • loginip:记录管理员最后一次成功登录的IP地址,这有助于发现异常登录,比如管理员在A地登录,但日志显示在B地有登录记录,可能存在安全风险。
  6. check

    • 作用:控制管理员账户的启用和禁用。
    • 1:账户正常,可以登录。
    • 0:账户被禁用,无法登录,当你暂时不想让某个管理员登录后台时,可以将其状态设为 0

常见操作与注意事项

如何重置管理员密码?

强烈建议使用 DedeCMS 后台功能,而不是直接操作数据库。

dede 管理员 表
(图片来源网络,侵删)
  1. 使用后台“修改密码”功能(推荐)

    • 以管理员身份登录 DedeCMS 后台。
    • 进入“系统” -> “账号管理” -> “修改我的资料”或“修改密码”。
    • 输入旧密码和新密码,提交即可,系统会自动完成 MD5 加密并更新数据库。
  2. 直接修改数据库(紧急情况,如忘记密码)

    • 如果你无法登录后台,可以直接操作数据库。
    • 使用 phpMyAdmin 等工具连接到你的数据库。
    • 找到 dede_admin 表(前缀可能是你自定义的,如 dede_)。
    • 找到 useridadmin 的那条记录。
    • pwd 字段的值修改为你想要的新密码的 MD5 值
    • 如何获取 MD5 值? 你可以使用在线 MD5 加密工具,或者在你电脑的命令行中输入 echo -n "你的新密码" | md5sum (Linux/macOS) 或 certutil -hashfile 你的密码.txt MD5 (Windows)。
    • 示例:如果你想将密码重置为 123456,你需要先计算出 123456 的 MD5 值,然后更新 pwd 字段为这个值。

如何添加一个新管理员?

  1. 使用后台“账号管理”功能(推荐)

    • 以超级管理员身份登录后台。
    • 进入“系统” -> “账号管理” -> “增加管理员”。
    • 填写用户名、密码、真实姓名等信息,并为其分配权限组,然后保存。
  2. 直接操作数据库

    • dede_admin 表中手动插入一条新记录。
    • INSERT INTO dede_admin (userid, pwd, uname, usertype, typeid, check) VALUES ('newadmin', 'MD5加密后的密码', '新管理员', 'admin', '0', '1');
    • 注意:typeid 设为 0 表示所有权限,设为具体栏目ID则限制权限。

如何限制某个管理员的权限?

  • 这个操作必须在后台完成,直接修改数据库的 typeid 字段比较麻烦且容易出错。
  • 步骤
    1. 以超级管理员身份登录后台。
    2. 进入“系统” -> “账号管理” -> “管理权限组”。
    3. 选择要修改的管理员所在的权限组,或者创建一个新的权限组。
    4. 在权限组设置中,勾选该管理员可以管理的栏目,取消勾选则表示无权管理。
    5. 保存设置,系统会自动更新该管理员对应的 typeid 字段。

admin 表是 DedeCMS 的“心脏”,它定义了谁可以访问后台以及他们拥有什么样的权力,理解其结构,特别是 useridpwdusertypetypeid 这几个核心字段,对于日常管理和系统维护至关重要,在进行任何数据库操作前,请务必备份数据库,以防意外发生。

-- 展开阅读全文 --
头像
织梦CMS分类信息如何高效搭建与管理?
« 上一篇 今天
C语言属于哪种编程语言类型?
下一篇 » 今天

相关文章

取消
微信二维码
支付宝二维码

目录[+]