用途:用于处理 Clerk 安全敏感面,包括会话、JWT、令牌获取、组织与授权、Webhook 同步、环境隔离与生产加固,核心是先划分信任边界并设计可防重放流程。
主要能力:区分会话令牌、自定义 JWT 模板、API 密钥、OAuth 令牌与机器间令牌;用相关 Clerk auth 对象或钩子中的 getToken() 获取令牌且必须 await;自定义 JWT 模板保持最小声明并按签名/JWKS、签发方、受众、过期/nbf、令牌类型与组织上下文校验;组织、角色、权限、套餐与功能检查默认拒绝;区分公开、私有、不安全的元数据与数据库字段的信任级别;Webhook 经 Svix 投递,须先校验签名再处理,仅处理订阅事件,处理器幂等,安全接收或持久排队后才返回 2xx;用唯一 event_id 去重,按 Clerk 用户/组织 ID upsert,按 updated_at 处理乱序;区分发布密钥与仅服务端的密钥、Webhook 签名密钥、加密密钥;按清单做密钥轮换与安全审查。
使用方式:服务端在中间件/路由中按需调用 getToken(),用 verifyWebhook() 或 Svix 校验 Webhook;审查时盘点认证入口、各端点接受的令牌类型、路由保护、环境变量与域名、Webhook 去重与重放处理,并测试未登录、错组织、错角色、pending 会话、错令牌类型、重放 Webhook、过期令牌与混合环境等场景。
限制:资料未给出具体安装命令、代码示例、框架版本、定价或性能数据;部分能力依赖 Clerk 支持范围,API 密钥、OAuth、M2M 等以官方文档为准;系统权限不在会话令牌声明中,需按 Clerk 要求检查用户角色。