SuperAPI AI 工具集

authentication-authorization

安全与审计

查看项目

更新于 10-15 21:09

技能介绍

用途:为 Splits Network 实现认证与授权,提供基于角色的访问控制(RBAC)实践指导,适用于实现受保护 API 端点、带角色过滤的仓储方法、受保护前端页面、权限检查与授权问题排查。

主要能力:

  1. Clerk 集成:使用 Clerk 完成认证。
  2. V2 访问上下文:通过 resolveAccessContext 解析内部用户 ID、Clerk 用户 ID、主角色、组织成员关系、是否公司用户、是否招聘者及可访问公司 ID,用于数据级授权。
  3. 仓储层角色过滤:在查询中按角色过滤,平台管理员看全部,公司用户看所属组织数据,招聘者看被分配数据,普通用户看最少或无数据。
  4. API 网关 RBAC:用 requireRoles 中间件做路由级授权,先查成员关系,再按需调用外部服务判断招聘者或候选人身份。
  5. 前端受保护路由:用 Clerk 中间件与页面内 auth 检查保护 Next.js 页面,未登录跳转登录页。
  6. 基于角色的 UI:从 API 获取角色,按角色显示或隐藏操作按钮。
  7. 用户标识规范:前端只发送 Authorization: Bearer <token>,网关从已验证 JWT 提取 clerkUserId 并转发 x-clerk-user-id 给后端服务。

角色层级:platform_admin > company_admin > hiring_manager > recruiter > candidate > user。

限制与注意:UI 不作为安全边界,权限必须在后端强制执行;后端服务不应重复网关的授权检查;不要在前端自行设置用户 ID 请求头。资料未提供安装命令、收费与价格信息。