SuperAPI AI 工具集

permission-boundary-test

测试与质量

查看项目

更新于 10-15 22:19

技能介绍

用途:该技能用于编写权限边界测试,验证已认证用户无法访问他人资源,覆盖 IDOR、角色越权与所有权校验。

主要能力:先梳理资源清单、访问模式(含 /share、/export 等非 REST 动作)、角色模型、ID 类型与间接访问路径;采用“双用户模式”,用 Bob 的令牌访问 Alice 的资源,而非匿名请求。测试覆盖所有 HTTP 方法(GET/PUT/PATCH/DELETE 及动作端点)、403 与 404 策略一致性、通过关联资源的间接 IDOR、请求体与嵌套 ID 的所有权校验、批量赋值提权、多租户隔离、所有权转移后的失效访问、分页与聚合端点的跨用户泄露,并校验响应体不泄露数据。

使用方式:为每种资源建一个测试文件,按 HTTP 方法组织 describe,用例命名如“[用户] cannot [动作] [资源] belonging to [他人]”;共享 createUserWithToken() 工厂,各文件自行播种资源。可用 Express 的 app._router.stack 提取含动态段的路由,为每条生成跨用户测试对。

限制:不测试未认证访问(属认证测试);必须使用两个不同用户;不能只测 GET;不能忽略请求体 ID;状态码策略需统一,混用会泄露资源存在性。