SuperAPI AI 工具集

implement-scim

智能体与模型

查看项目

更新于 10-16 04:30

技能介绍

用途:实现 SCIM,使智能体能够从目录预配用户与组。适用于用户要求 SCIM 或预配用户的场景。

主要能力:通过 SCALEKIT_ENVIRONMENT_URL、SCALEKIT_CLIENT_ID、SCALEKIT_CLIENT_SECRET、SCALEKIT_WEBHOOK_SECRET 初始化 Scalekit 客户端;在 /webhooks/scalekit 上用 express.raw({ type: 'application/json' }) 挂载并校验 webhook 签名;处理六类目录事件——organization.directory.user_created、user_updated、user_deleted、group_created、group_updated、group_deleted,用 upsert 方式写入本地用户与组,删除事件改为停用而非硬删除;支持按需首同步或回填:getPrimaryDirectoryByOrganizationId(orgId) 返回目录对象,再调用 listDirectoryUsers、listDirectoryGroups 逐条 upsert。

必要用法:先确认环境变量三步清单,再初始化 SDK(仓库若无 SDK 时安装 @scalekit-sdk/node),编写路由,映射用户与组,最后在仪表盘注册 webhook 并订阅上述六个事件、复制签名密钥、发送测试事件。verifyWebhookPayload 接受字符串、会抛异常,捕获后返回 400;须在读取事件前调用。必须在 express.json() 之前注册 express.raw,签名基于原始字节。webhook 用户字段为 email、name、organization_id,组字段为 id、display_name、organization_id;目录 API 用户字段为 email、givenName、familyName,无 name,组字段为 id、displayName。组织 ID 须从仪表盘或事件中复制,不可编造。

适用场景与限制:适合需要目录用户/组预配与按需回填的应用。本技能不生成管理门户,而应改用 implement-sso;若还需 SaaSKit 登录用 implement-saaskit,路由角色权限用 implement-access-control。默认语言为 Node。不要使用 SCALEKIT_ENV_URL,不要加 https:// 前缀。webhook 端点须为公开 HTTPS,需在 10 秒内返回 201。签名密钥在注册端点后才有。

参考:文档索引 https://docs.scalekit.com/llms.txt,SCIM 快速开始 https://docs.scalekit.com/directory/scim/quickstart/,目录事件 https://docs.scalekit.com/directory/reference/directory-events/。