SuperAPI AI 工具集

clerk-data-handling

数据与分析

查看项目

更新于 10-15 22:42

技能介绍

用途:使用 Clerk Backend API 管理用户数据、实现隐私功能并满足 GDPR/CCPA 合规要求,覆盖数据导出、被遗忘权、同意管理和审计日志。

前提条件:Clerk 集成已可正常工作;了解 GDPR/CCPA 要求;数据库中的用户相关数据通过 Clerk 用户 ID 关联。

主要能力:

  1. 用户数据导出:在 Next.js 路由中通过 auth 获取 userId,用 clerkClient 读取用户资料(邮箱、姓名、创建时间、最近登录、publicMetadata),并合并数据库中关联数据后返回 JSON。
  2. 用户删除(被遗忘权):先删除应用数据(评论、帖子、应用用户),再调用 client.users.deleteUser 删除 Clerk 用户以结束会话,最后写入审计日志;失败时记录已完成步骤并返回部分删除状态。
  3. 同意管理:把 marketing、analytics、thirdParty 等同意记录存入用户 publicMetadata,并提供读取与更新函数;配套客户端 ConsentManager 组件用复选框收集并保存偏好。
  4. 审计日志:通过 Clerk Webhook 记录事件类型、用户 ID、时间戳和元数据,重点跟踪 user.deleted、user.updated 等合规相关事件。

输出:数据导出 API(Clerk 资料+应用数据)、删除级联流程、基于 publicMetadata 的同意管理、隐私偏好 UI 组件、合规事件审计日志。

错误处理:部分删除失败时记录已完成步骤并重试、告警;大数据导出超时改为排队任务并邮件发送下载链接;同意同步失败用指数退避重试,可回退本地存储;批量删除遇 Clerk 限流时分批并加延迟。示例还包含用 createClerkClient 清理数据库中已不存在于 Clerk 的孤立用户脚本。

限制:资料未提供具体定价、版本要求或部署环境;所有代码示例需替换为实际数据库与项目结构,且应结合当地法律与专业合规意见实施。