开场:角色设计太晚,会让客户不敢推广
很多 SaaS MVP 只有一个角色:管理员。
早期测试时没问题,因为只有创始人、客户负责人和一两个种子用户在用。等客户想把工具推给更多同事时,问题出现了:
- 普通成员能看到敏感数据。
- 新人可以改全局配置。
- 离职员工账号没有清理。
- 财务信息和业务操作混在一起。
- 客户负责人不敢邀请更多人。
角色设计不是大企业功能,而是 SaaS 能否在客户内部扩散的基础。
先从真实协作场景出发
不要一开始设计十几个抽象角色。先问客户团队里有哪些人会参与。
例如一个客服质检 SaaS:
| 角色 | 真实任务 |
|---|---|
| 主管 | 配置质检规则、看团队报告 |
| 组长 | 查看本组会话、分配改进任务 |
| 一线成员 | 查看自己的反馈 |
| 管理层 | 看汇总指标 |
| IT 或系统管理员 | 管理账号和集成 |
角色来自工作,而不是来自你脑子里的权限矩阵。
最小角色通常只需要三到四类
早期可以从四类开始。
| 角色 | 能做什么 | 不能做什么 |
|---|---|---|
| Owner | 管理账单、删除空间、转移所有权 | 不应多人随意拥有 |
| Admin | 管理成员、配置工作流、查看核心数据 | 不一定能处理账单 |
| Member | 完成日常业务操作 | 不能改全局设置 |
| Viewer | 只读查看报告或进度 | 不能编辑和导出敏感数据 |
这套角色足够支撑多数早期 B2B 场景。
把高风险动作单独列出来
不要只按页面控制权限。要列出高风险动作。
- 邀请和移除成员。
- 修改计费套餐。
- 删除数据。
- 导出数据。
- 修改集成密钥。
- 更改审批规则。
- 查看敏感字段。
- 转移组织所有权。
这些动作应该比普通页面访问更严格。
权限矩阵要能给客户看
如果客户问“普通员工能不能看所有数据”,你不能只说“可以配置”。
准备一张简单矩阵。
| 能力 | Owner | Admin | Member | Viewer |
|---|---|---|---|---|
| 邀请成员 | 是 | 是 | 否 | 否 |
| 修改规则 | 是 | 是 | 否 | 否 |
| 处理任务 | 是 | 是 | 是 | 否 |
| 查看汇总报表 | 是 | 是 | 可选 | 是 |
| 导出数据 | 是 | 可选 | 否 | 否 |
| 管理账单 | 是 | 否 | 否 | 否 |
这张表能降低采购和安全评估的沟通成本。
默认权限要保守
早期为了减少客服问题,很多产品默认给新用户很高权限。这会带来长期风险。
更好的默认规则:
- 新邀请用户默认是 Member。
- 只有 Owner 可以转移所有权。
- 导出、删除、账单默认只给 Owner。
- 管理员数量显示在设置页。
- 高风险动作需要二次确认。
权限设计宁可多一步授权,也不要让客户出一次事故。
团队和角色不要混在一起
角色回答“能做什么”,团队回答“能看哪些范围”。
例如:
- 张三是 Member。
- 张三属于华南客服组。
- 张三只能看华南客服组的数据。
如果把团队和角色混在一起,你会得到“华南管理员”“华北只读”“上海运营主管”等越来越多特殊角色。
早期可以先不做复杂组织架构,但概念上要分开。
审计日志从第一版就留基础字段
权限系统没有日志,很难排查问题。
至少记录:
- 谁操作。
- 什么时间。
- 做了什么动作。
- 影响哪个对象。
- 操作前后关键值。
- 来源 IP 或设备信息。
不一定马上做漂亮页面,但数据要留。客户内部推广时,审计能力会显著提升信任。
常见错误
| 错误 | 后果 |
|---|---|
| 所有人都是管理员 | 客户不敢扩散使用 |
| 角色过多 | 销售和客服解释不清 |
| 只控制菜单 | 接口和导出仍有风险 |
| 不区分角色和数据范围 | 后期组织权限很难补 |
| 没有审计日志 | 出问题无法追责 |
角色设计不是为了显得专业,而是为了让客户愿意把更多人带进来。
落地建议
把当前产品所有高风险动作列出来,先设计 Owner、Admin、Member、Viewer 四类角色,并写出一张客户可读的权限矩阵。
SaaS 从 0 开始,不要等第一个大客户要求权限时才补。角色边界越早清楚,客户内部推广越顺。
继续阅读
探索更多技术文章
浏览归档,发现更多关于系统设计、工具链和工程实践的内容。