SuperAPI AI 工具集

organization-management

安全与审计

查看项目

更新于 10-16 06:47

技能介绍

用途:为多租户应用自主实现并配置 Clerk 组织功能,包括基于角色的访问控制(RBAC)、组织创建与管理、成员邀请与管理、组织切换,以及按组织隔离数据。

主要能力:提供启用并配置组织的脚本(scripts/setup-organizations.sh)、配置 RBAC 与自定义角色的脚本(scripts/configure-roles.sh basic|advanced|custom)、测试租户数据隔离的脚本(scripts/test-org-isolation.sh);模板包括多租户数据库 schema 模式(templates/organization-schema.md)、角色与权限定义(templates/rbac-policies.ts)、组织切换组件(templates/organization-switcher.tsx);示例包括完整多租户应用(examples/multi-tenant-app.tsx)与组织管理后台(examples/org-admin-dashboard.tsx)。

必要用法:需先在 Clerk Dashboard 启用 Organizations 并配置默认角色与元数据;随后运行角色配置脚本生成 RBAC 策略与权限校验中间件;再复制模板实现组织切换器、组织 schema 与 RBAC 策略;最后运行隔离测试脚本验证 organization_id 数据范围、跨租户泄露防护、角色访问控制与切换正确性。RBAC 支持基础(Admin/Member)、进阶(Admin/Manager/Member/Viewer)与自定义细粒度权限(如 project:create、billing:manage、members:invite)三个层级。

适用场景:SaaS 团队应用、企业多租户平台、需要组织级数据隔离的系统。框架支持 Next.js、React、Remix、Gatsby,适配 @clerk/nextjs 5+、@clerk/clerk-react 5+。

限制:使用前必须在 Clerk Dashboard 手动启用 Organizations,仅靠脚本无法完成;需自行配置环境变量(示例中的密钥为占位符,非真实密钥);数据隔离需要数据库侧配合(如 Supabase/Postgres RLS 或 Prisma 中间件),技能本身不代管;具体费用与定价暂未提供。