多门店数据隔离必须覆盖读取、修改、导出和统计。门店编号应来自经过授权的服务端上下文,不能仅信任页面选择器或请求参数。
先列出跨门店业务
确认平台人员、区域负责人和店员分别能访问哪些范围。总部调拨、跨店会员和联合结算需要独立规则,不宜用一个无限制管理员角色替代全部协作。用权限矩阵记录资源、操作与范围。
对每类接口施加范围约束
列表查询与详情读取都要核验门店范围,更新和删除也使用相同约束。对批量操作逐项核对归属,不能只检查第一条记录。创建资源时从当前授权范围确定归属,防止用户任意提交门店编号。
同步约束缓存与文件
缓存键、导出任务和文件访问也应包含相应范围。统计汇总不能泄露其他门店的明细,后台异步任务要保存发起者及授权上下文。日志记录操作范围,帮助排查跨门店问题。
用门店之间的交叉测试验收
准备两个门店和不同权限账号,尝试互换资源编号、导出链接及批量参数。核对被拒绝的操作没有造成数据变化。总部角色也应只获得已明确允许的能力,而不是默认绕过所有业务限制。
