可见范围设置
按品牌 / 区域 / 门店 / 仓库 / 商品层级配置“可见范围”与“可操作范围”,并明确数据权限与功能权限的分离边界:可见不等于可改,可改必先可见。
已配置范围的角色
6/ 9
3 个自定义角色待配置
覆盖门店
83/ 85
宁波 2 家门店暂无归属负责人
可见/可操作矛盾配置
0处
保存时强制校验
近 30 天越权拦截
47次
功能 16 / 数据 31
限时授权生效中
2个
最长 7 天,到期自动回收
待审批范围变更
3项
次日 00:00 生效
组织树 · 可见与可操作范围(以“周区域 · 区域经理”为例)
绿色=可见、蓝色=可操作、橙色=仅可见、灰色=无权限品牌:女装 全部可见
直营事业部 可见可操作 10 家门店 / 8 个区域
华东大区 可见可操作
浙江区域 可见可操作 SH001 SH003 SH004 SH007 SH010
浙江杭州武林银泰店 本店可操作
浙江杭州西湖银泰店 本店可操作
浙江杭州奥莱店 仅可见(奥莱渠道单独管控)
江苏区域 可见可操作 SH005 SH009
宁波区域 无权限
华中大区 无权限 SH006 武汉武商摩尔店
奥莱事业部 仅可见(不可操作) SH008
加盟事业部 无权限 本期未接入
仓库:总部仓库、直营仓(原过季仓) 可见可操作
仓库:华南区域仓 无权限
可见范围 vs 可操作范围
两张权限必须同时通过| 动作 | 要求 | 跨范围时 |
|---|---|---|
| 查看 / 查询列表 | 数据权限命中 | 未命中:列表不返回该行,且不提示“有多少行被隐藏”(防推断) |
| 导出 Excel | 功能权限“导出” + 数据权限命中 | 未命中:导出范围自动裁剪为该用户可见集合,并在文件内注明裁剪范围 |
| 改量 / 改配置 | 功能权限“编辑” + 数据权限命中 | 未命中:按钮置灰并提示“无操作权限(可见范围外)” |
| 审批单据 | 功能权限“审批” + 数据权限命中 | 未命中:单据不可见,审批链接失效并记录一次越权尝试 |
| 生成 / 下发单据 | 编辑权限 + 调出方与调入方双向命中 | 单向命中:整单拒绝,不允许只对一侧生效 |
| 越权申请 | 角色允许越权申请 | 生成限时授权(≤ 7 天),到期自动回收 |
数据权限与功能权限分离(设计说明)
为什么必须分离
功能权限回答“这个人在业务上该不该做这件事”,数据权限回答“这件事能作用在哪些组织范围”。如果混在一起,就会出现两种典型事故:① 给区域经理开了“审批”功能权限,他却能审批全国单据;② 给某角色开了全国数据范围,结果他能编辑别人的区域。
- 功能权限载体
- 角色(auth-role 矩阵)
- 数据权限载体
- 角色 + 组织维度(本页)
- 判定顺序
- 先校验功能权限(403 功能无权限)→ 再校验数据权限(403 数据越权)→ 再校验业务规则
- 失败返回
- 统一返回 403 并写审计;不区分“无权限”与“不存在”,避免通过响应差异探测数据
- 超级管理员
- 仅系统管理员具备全范围,且其业务操作全部强制留痕 + 双人复核
越权拦截示例(真实拦截日志)
16 次功能越权 + 31 次数据越权(近 30 天)| 时间 | 账号 / 角色 | 请求动作 | 目标数据范围 | 拦截原因 | 结果 |
|---|---|---|---|---|---|
| 10-21 09:12 | 周区域 · 区域经理 | 导出决策(华中区域) | 华中大区 · 武汉武商摩尔店 | 数据权限未命中(华中不在浙江+江苏范围内) | 已拦截 |
| 10-21 09:40 | 吴店长 · 门店店长 | 编辑补货单(兄弟门店) | 杭州西湖银泰店 | 功能权限未命中(店长无跨店编辑)+ 数据越权 | 已拦截 |
| 10-20 22:19 | 赵审计 · 审计员(只读) | 访问管理后台(用户管理) | — | 功能权限未命中(审计员不参与系统管理) | 已拦截 |
| 10-20 18:41 | 刘运营 · 零售运营 | 审批调拨单(超阈值改量) | 华东大区 | 功能权限通过,但阈值 > 20% 需区域经理审批(角色层级不足) | 转交审批 |
| 10-20 15:02 | 陈计划 · 物流计划 | 导出候选池(14,968 行) | 全区域 | 功能权限通过,但行列数超 2 万触发大文件审批 | 转异步+留痕 |
| 10-20 11:33 | 郑店长 · 门店店长 | 确认收货(本店在途) | 杭州奥莱店 | 数据权限命中,但账号“待激活”状态不允许写操作 | 已拦截 |
范围配置 · 按角色下发
个人覆盖优先于角色配置配置生效规则
- 优先级
- 个人覆盖 > 角色 > 默认(无权限)
- 组织继承
- 上级组织授权自动向下继承,下级可单独收紧但不可放宽
- 生效方式
- 保存后进入待审批,审批通过后次日 00:00 生效(避免作业中途权限突变)
- 紧急变更
- 可勾选“立即生效”,需系统管理员 + 安全负责人双签,并写入审计高亮
- 缓存
- 权限判定结果缓存 5 分钟;权限变更后主动失效缓存(防止变更后仍可访问)
- 留痕
- 每次配置变更记录:谁、何时、改了什么、旧值与新值、审批链
门店层级可见性自检
每次保存范围配置后自动执行| 校验项 | 结果 | 说明 |
|---|---|---|
| 是否存在“可编辑但不可见”的矛盾配置 | 无 | 可操作范围必须是可见范围的子集,保存时强制校验 |
| 是否存在孤岛数据(无人可见) | 2 家 | 宁波 2 家门店暂无区域经理覆盖,已通知零售运营部认领 |
| 是否存在越级可见(跳过上级) | 1 处 | 奥莱店对区域经理可见但未在区域内,属渠道特批,已标注 |
| 门店店长是否越范围 | 无 | 178 名店长全部限定本门店 |
| 管理员业务操作是否留痕 | 全部留痕 | 近 30 天 12 次管理员业务操作,均为查看,无写操作 |
范围与角色的组合示例
| 配置对象 | 可见范围 | 可操作范围 | 实际效果 |
|---|---|---|---|
| 周区域 · 区域经理 | 浙江 + 江苏(7 家店)+ 华东仓 | 同可见范围,可编辑 + 可审批 | 审批本区单据;导出自动裁剪到 7 家店 |
| 吴店长 · 门店店长 | 本门店 + 本店所属仓(只读) | 本门店收货 / 发货 | 看得到仓但不改仓;看不到兄弟门店 |
| 刘运营 · 零售运营 | 华东大区(全部门店) | 华东大区可编辑 | 单据可编辑,但改量 > 20% 仍需区域经理审批 |
| 赵审计 · 审计员(只读) | 全品牌全区域 | 无(仅查看 + 导出留痕) | 可查全部数据与日志,但任何写操作均被拒绝并留痕 |
| 黄新增 · 商品运营 | 暂无(待配置) | 暂无 | 登录后被引导到权限申请页 |
i设计说明(S1):数据权限与功能权限分离是国内企业系统里最常见的返工点。本页用“树 + 范围配置 + 越权拦截日志”三件套把边界说清楚:业务能看懂配了什么,安全能看懂拦了什么。