返回博客

2026年10月28日

账号与权限:多角色怎么分工

系统里有哪些角色、各自能做什么、如何为团队成员分配权限。

团队协作时,不是所有人都需要看到所有东西。这篇文档说明角色划分与权限分配。

现有角色

超级管理员。 系统的最高权限。能管理所有用户、所有节点、所有配置。通常只有一到两个人持有。

管理员。 能管理节点、订单、商品、内容、用户。不能修改系统级配置(如数据库连接、邮件服务),也不能授予或移除管理员角色。

普通用户。 只能看到自己名下的节点与订单。这是给终端客户的角色。

分销商。 在普通用户基础上,额外拥有分销中心——管理子站点、查看佣金、发起提现、查看名下客户。

权限的边界

权限控制分三层:

页面级。 没有对应角色就进不去那个页面,导航里也不显示入口。

接口级。 即使知道接口地址,没有权限也会返回 403。前端隐藏只是体验,真正的拦截在后端。

数据级。 普通用户请求节点列表,只会拿到自己的节点。请求别人的节点详情会返回"无权访问"。

三层都在做同一件事,看起来冗余,但缺任何一层都有洞。

为团队成员分配权限

进入「用户管理」,找到目标账号,在角色列调整。

重要限制:管理员不能授予或移除管理员/超级管理员角色。这个限制是为了防止越权——否则一个管理员可以把任何人(包括自己)提成超级管理员。

需要提权到管理员时,必须用超级管理员账号操作。

角色变更何时生效

角色变更立即生效,不需要对方重新登录。

原因在于每次请求都会重新查库确认角色。代价是每个请求多一次查询,收益是权限收紧能立刻落地——这在安全上是值得的。

停用账号

在「用户管理」里可以把账号设为停用。

停用后:

  • 该账号的现有登录态立即失效(下一次请求返回 401)。
  • 不能登录。
  • 名下节点仍在采集,但账号无法查看。

停用不是删除。数据保留,随时可以恢复。

删除账号

删除是不可逆的。删除前需要先把名下的节点转移或删除——有节点归属的账号无法直接删除。

如果只是想让人不能登录,用停用,不要删除。

审计日志

所有管理操作都会记录在「审计日志」里,包含:

  • 操作人
  • 操作时间
  • 操作类型(创建/修改/删除)
  • 目标资源
  • 请求来源 IP

日志不能修改或删除。出问题时它是唯一的追溯依据。

一个实践建议

按最小权限原则分配:

  • 只做运维的同事,给管理员但明确告知不要碰计费相关。
  • 只做客服的同事,其实只需要普通用户权限 + 一个只读的节点视图(如果需要)。
  • 财务相关的操作(退款、调整余额)建议只保留给一到两个人。

权限给出去容易,收回来难——因为收回时对方已经习惯了。

—— Pi Admin X 团队