跳转至

SAI 账号接入

应用可以通过 OpenID Connect(OIDC)接入 SAI 账号,由 SAI 完成登录和用户认证。应用负责自己的账号关系、权限和业务数据。

第三方应用须先完成登记和联调,再启用接入。公开文档不提供通用客户端凭据,也不开放匿名客户端注册。

从这里开始

  1. 申请接入,提交应用信息、准确的回调地址和所需资料范围。
  2. 实现登录,使用成熟 OIDC 库完成授权码与 PKCE 流程。
  3. 读取用户资料,按实际授权的 scope 解析 UserInfo。
  4. 处理续期和退出,验证撤销、故障恢复和原页面返回。

服务地址

项目 地址
Issuer https://id.open-sai.com/realms/sai
Discovery https://id.open-sai.com/realms/sai/.well-known/openid-configuration
SAI 账号管理 https://id.open-sai.com/realms/sai/account/
SAI 文档 https://www.open-sai.com/docs/
账号接入文档 https://www.open-sai.com/docs/identity/
接口描述 OpenAPI 3.1 JSON

/realms/sai 是 issuer 的一部分。通过 Discovery 获取协议端点,校验其 issuer 与上表完全一致。

当前接入范围

能力 第三方接入方式
网页登录 登记后使用 Authorization Code,必须启用 PKCE S256
服务端客户端认证 优先 private_key_jwt;经登记可使用 client_secret_basic
无法保密的客户端 单独评审,不能把客户端密钥放入浏览器或安装包
基本资料 openid、profile、email,分别按登记及用户授权提供
扩展资料 sai.profile 和 sai.profile.details 需说明用途并单独批准,当前字段见字段说明
在线续期、撤销、退出 使用 Discovery 中的标准端点及登记的退出回调
认证状态 sai.assurance 单独申请并取得用户同意后,读取当前认证状态;不提供认证材料
机器身份、设备授权、离线访问 不属于普通网页接入范围,须单独申请,现有用户登录授权不包含这些权限
Implicit、密码直传、PKCE plain、通配回调 第三方接入禁用

Discovery 可能列出 implicit、password、其他 grant、客户端认证方式或 plain。这些是协议引擎的能力声明,不代表你的客户端获准使用。实际权限由客户端登记决定,本指南只描述上表范围。

当前没有可对外承诺的稳定公开用户名、头像、个人简介等完整公开资料接口。请使用 (iss, sub) 关联账号,不将昵称、邮箱或计算节点用户名当作账号主键。

OIDC 登录不授予计算、组织、账务或其他业务权限。访问业务 API 需要该服务独立批准的 audience、scope 和当前业务授权。

接入验收

上线前至少验证:首次登录、已有 SSO 登录、用户拒绝授权、错误回调与 PKCE、重复授权码、资料未填写、刷新令牌轮换、撤销、退出回调及短时服务故障。使用你登记的客户端完成这些检查,其他应用可登录不能替代你的接入验收。

此站提供文档和机器可读描述,不在网页中收集真实客户端密钥、授权码或令牌。请在自己的测试环境验证请求。