某一天,有人跑过来问你一句:
“为什么我点不了这个?”
你一开始还挺自信, 打开代码一看, 嗯,判断写得挺清楚。
可接着问题就来了。
- 那他算不算管理员?
- 他这个账号是测试还是正式?
- 这个功能在这个环境能不能用?
你突然发现, 你心里其实也没那么确定。
早期系统里,权限通常长这样:
if (isAdmin) {
// do something
}
简单、直接、好使。
那时候系统不多, 人也不多, 大家对“谁能干什么”心里都有数。
后来事情开始变复杂了。
系统多了, 角色多了, 人也开始流动。
权限判断开始散落在各个地方:
- 前端有一份
- 后端有一份
- 有的接口还漏了
这时候你会意识到:
权限不是“判断逻辑”, 是一种“共识”。
而共识,一定不能写在某个角落的代码里。
于是你开始听到一个词: 权限平台 / 权限中心。
一开始你可能是抗拒的。
“有必要吗? 写个判断不就完了?”
直到有一天,你发现:
- 改一次权限,要改好几个系统
- 出问题,不知道该查哪
- 想临时收权限,只能改代码
你才会开始认真想:
是不是应该有一个地方, 专门管这件事?
一个权限平台, 本质上只做一件事:
把“谁能干什么”这件事, 从代码里,挪出来。
注意,不是变复杂, 而是从“隐性”变成“显性”。
你慢慢会发现, 权限平台真正带来的,不是“高级功能”, 而是几种变化:
- 权限规则能被看见
- 决策有统一出口
- 出问题能追溯
而不是每个人凭记忆。
很多人会纠结:
“那权限要不要做得很细?”
说实话, 这不是第一步要回答的问题。
真正该先想清楚的是:
谁来决定权限, 以及,系统认不认这个决定。
只要这两点站住了, 粗一点、细一点, 都只是阶段问题。
一个好的权限平台, 往往不太“显眼”。
它不会天天被提需求, 也不会频繁改规则。
但你会发现一件事:
当它存在之后, 大家讨论权限时, 开始说的是:
“去权限平台看看。”
而不是:
“我记得代码里好像有判断。”
权限平台还有一个隐性的作用, 很多人一开始意识不到。
它会逼着你回答一些问题:
- 这个权限,为什么存在?
- 给到什么人是合理的?
- 什么时候该收回?
这些问题, 早晚都要面对。
它存在的意义是:
当系统复杂到一定程度时, 让事情还能被讲清楚。
