统一身份

身份与登录

TokenDance ID 作为统一身份提供方的公开边界。

统一登录目标

TokenDance ID 是 TokenDance 产品族的身份权威。GitHub、Google、Feishu/Lark 等第三方 provider 由 TokenDance ID 统一管理,各产品只消费 TokenDance ID OIDC。

推荐登录流程

  • 浏览器产品使用 Authorization Code + PKCE。
  • 服务端消费 access token 时必须校验 issuer、audience、signature、expiry 和 JWKS key id。
  • 静态官网只保留低风险 profile personalization,不保存 access token、ID token 或 refresh token。
  • 产品后端可以签发自己的产品 session,并在本地完成角色、资源和动作授权。

产品侧职责

  • 产品可以拥有本地 session 和产品权限判断。
  • 产品不直接新增第三方 OAuth app。
  • 官网浏览器 session 只用于低风险个性化,不作为后端授权。
  • Gateway API key 与 TokenDance ID 登录必须分开描述。

谁可以接入

  • TokenDance 产品族内的新应用应优先作为 TokenDance ID OIDC relying party 接入。
  • 产品可以拥有自己的 session、角色、资源权限和 API key 边界。
  • 第三方 GitHub、Google、Feishu/Lark OAuth app 归 TokenDance ID 管理,业务产品不直接新增一套。
  • 静态官网只使用低风险浏览器个性化;高信任 API 授权必须在产品后端验证。

当前不承诺

  • TokenDance ID access token 不能当作 TokenDance Gateway API key。
  • 官网登录态不能替代 AgentHub Hub Server 或 Gateway 后端授权。
  • 公开文档不记录 client secret、admin key、回调错误详情或私有用户数据。
  • 管理后台、provider UX 和组织级自助配置仍在持续完善。

产品接入检查

检查项要求
Callback 使用产品自己的 callback,并登记到 TokenDance ID client
Token exchange 浏览器应用使用 PKCE;服务端应用保管 client secret
Storage 静态站不持久化 token;后端 session 只保存必要 claim
Authorization 产品本地判断角色、资源和动作,不把登录等同于授权
Logout 清理产品本地 session,再跳转 TokenDance ID logout
Public docs 只写端点、流程和占位变量,不写真实 secret、token、callback payload

OIDC 公开端点

端点路径
Discovery https://id.vectorcontrol.tech/.well-known/openid-configuration
Authorize https://id.vectorcontrol.tech/oidc/authorize
Token https://id.vectorcontrol.tech/oidc/token
UserInfo https://id.vectorcontrol.tech/oidc/userinfo
JWKS https://id.vectorcontrol.tech/oidc/jwks