1. 身份与凭证模型
不需要
openid。openid 用于 OAuth 应用内的用户映射。Owner 模式无需保存用户映射;虚拟成员模式由接入方自行维护映射,并使用 member_id 调用成员管理接口。
2. 接入流程
- 接入方提供团队账号,由秒悟团队在管理后台创建测试 AK/SK,配置管理 Scope、可委托业务 Scope 和 Token 最长有效期。
- 接入方仅在可信服务端保存 AK/SK。
- 不需要最终用户隔离时,从成员列表找到
role=owner的 Ownermember_id;需要隔离时,使用 AK/SK 创建托管成员并保存外部用户 ID →member_id映射。 - 需要调用 Meoo 能力时,使用 AK/SK 为选定的 Owner 或虚拟成员
member_id签发短期 Token。 - 使用
Authorization: Bearer <member_token>调用普通/open/v1业务 API。 - 成员冻结或删除、团队 AK/SK 吊销后,相关临时 Token 立即失效。
3. 创建团队 AK/SK
团队 AK/SK 的用户侧自助创建入口暂不开放,未来随“集成版”套餐提供。现阶段请联系秒悟团队创建联调测试凭证,并提供用于绑定凭证的团队账号。秒悟管理员会在管理后台核对团队 ID 与 Owner 后创建,创建时配置:- 凭证名称和用途说明。
- 成员管理权限,例如创建、查询、冻结、删除成员和签发成员 Token。
- 允许委托给成员 Token 的业务 Scope,例如
project.read、project.write、agent.read、agent.run。 - 成员 Token 最长有效期。
secret_access_key 只在创建成功时展示一次。应立即写入 KMS 或 Secret Manager,不要写入数据库明文、日志、前端持久化存储或客户端应用。
凭证创建、列表、吊销属于 Meoo 内部控制面能力,不属于对外 OpenAPI 契约。接入方不应调用内部管理接口,也不应依赖其 URL 或请求结构;需要新建、轮换或吊销测试凭证时请联系秒悟团队。
4. HMAC 签名
团队成员管理请求必须包含:- Header 名按小写参与签名,签名 Header 顺序固定为
host;x-meoo-content-sha256;x-meoo-nonce;x-meoo-timestamp。 - GET/HEAD 的原始 Body 为空字符串。
- JSON 请求按实际发送的 UTF-8 原始字节计算摘要;计算后不能重新格式化 Body。
- Query 对名称和值进行 RFC 3986 编码后排序。
- Timestamp 只允许短时间窗口内的请求。
- Nonce 必须每次重新生成;相同 AK 下重复 Nonce 会被拒绝。
5. 选择身份并签发 Token
5.1 Owner 大账号模式
调用成员列表接口,选择当前团队中role=owner 且 status=active 的成员,使用其 member_id 签发短期 Token。Owner Token 创建的项目、生成任务和 Release 均归属于团队 Owner;接入方自行负责最终用户与业务对象隔离。
5.2 虚拟成员隔离模式
创建成员: 每个 active 虚拟成员占用一个团队席位,与普通团队成员共用套餐席位上限。冻结或删除成员释放席位,重新激活时再次校验并占用席位;席位不足时创建或激活返回409 quota_exceeded,且不会产生半成品用户数据。
scopes 必须同时属于平台支持范围和团队凭证的 delegable_scopes;expires_in 最低 60 秒,并受凭证 token_ttl_max_seconds 上限约束。
6. 调用业务 API
Owner 或虚拟成员 Token 与 OAuth Access Token、用户 API Key 使用相同的 Bearer 协议:7. 生命周期与安全建议
- AK/SK 只保存在可信服务端;前端只能获得短期成员 Token。
- 建议成员 Token 有效期为 5~15 分钟,并按需签发。
- Owner 模式不提供最终用户隔离,接入方必须自行校验业务对象访问权。
- 虚拟成员模式下,外部用户与
member_id的映射由接入方保存;不要依赖昵称、手机号等可变字段。 - 成员离职、封禁或解绑时调用冻结或删除接口;已有 Token 会立即失效。
- AK/SK 泄露时立即吊销并创建新凭证。
- 收到 401 时重新签发 Token;不要尝试刷新成员 Token。
- 对非幂等调用自行保存业务幂等状态;HMAC Nonce 只负责阻止同一签名被重放。

