权限模型变更指南
适用场景
- 新增一种 IAM 资源类型
- 为资源类型设计或调整操作列表
- 修改 IAM RBAC 配置、实例选择器或回调数据
- 补权限迁移、初始化脚本或线上变更流程
- 排查资源类型接入不完整的问题
不适用场景
- 只是调用现有权限校验接口
- 只是处理用户授权、加成员、移成员
- 只是修改 Auth 模块普通业务逻辑
- 只是做 OAuth2 或登录认证
快速指导
- 这个 skill 关注的是“权限模型本身如何变更”,不是“现有权限怎么调用”。
- 一次变更通常至少覆盖四层:资源定义、操作定义、数据初始化、校验验证。
- 先按问题类型进入对应参考文档:
- 资源类型与操作设计:
reference/1-resource-action-design.md - IAM 配置、迁移与初始化:
reference/2-iam-config-migration.md - 回调、验证与常见坑:
reference/3-callback-validation.md
- 资源类型与操作设计:
create一类动作往往是权限模型里最容易配错的特殊项,要先确认关联资源是否还是父级资源。- 任何模型变更都要同步考虑国际化、初始化脚本、历史数据兼容和线上落地方式。
- 如果你改的是 Auth 模块内部 RBAC 服务实现,而不是资源模型本身,切到
auth-module-architecture。
高信号规则
- 权限模型变更本质上是契约变更,不只是加几个枚举或 JSON
- 资源类型、操作列表、实例选择器、回调链路必须一起看
- 线上接入时要优先考虑初始化与兼容,而不是只让本地跑通
- API 方式和脚本方式都要明确边界,避免重复写入或状态不一致
关键陷阱
- 只加资源枚举,不补 IAM 配置和初始化链路
create、list、manage等动作的关联资源设计错误- 只改配置,不做国际化、回调和验证
- 把权限模型问题误判成普通 Auth 业务问题
延伸阅读
- 资源类型与操作设计:
reference/1-resource-action-design.md - IAM 配置、迁移与初始化:
reference/2-iam-config-migration.md - 回调、验证与常见坑:
reference/3-callback-validation.md - 如果你在改 Auth 内部实现:再看
auth-module-architecture