外观
IdP / SSO 错误码(105*)
段位:105001 - 105015;共 15 个;全部 V1 暴露
通用约定(HTTP status /
code=1兜底 / 响应结构)见 README
105001 IDP_NOT_FOUND
- HTTP status:200
- 含义:IdP 不存在
- 典型触发条件:请求指定的 IdP(identity provider)
providerId在本租户内未配置 - 处理建议:核对 providerId;IdP 需先在 Console「身份提供商」面板配置
- 示例响应:
json
{ "code": 105001, "msg": "IdP 不存在", "data": null }105002 IDP_DISABLED
- HTTP status:200
- 含义:IdP 已禁用
- 典型触发条件:目标 IdP 在 Console 已被管理员禁用
- 处理建议:联系管理员启用,或切换到其它已启用的 IdP
- 示例响应:
json
{ "code": 105002, "msg": "IdP 已禁用", "data": null }105003 SSO_TOKEN_INVALID
- HTTP status:200
- 含义:SSO Token 无效(签名失败 / 过期)
- 典型触发条件:SSO 回调或 token 验证时,token 签名验证失败或已过期
- 处理建议:让用户重新走 SSO 登录流程获取新 token;若反复失败,核对 IdP 时钟同步与签名密钥配置
- 示例响应:
json
{ "code": 105003, "msg": "SSO Token 无效", "data": null }105004 SSO_TOKEN_ISSUER_MISMATCH
- HTTP status:200
- 含义:SSO Token Issuer 不匹配
- 典型触发条件:SSO token 的
issclaim 与 IdP 配置中的 issuerUrl 不一致 - 处理建议:核对 IdP 配置的 issuerUrl;若 IdP 侧 issuer 变更(如域名迁移),同步更新 atkonbase 内的 IdP 配置
- 示例响应:
json
{ "code": 105004, "msg": "SSO Token Issuer 不匹配", "data": null }105005 SSO_TOKEN_TYPE_UNSUPPORTED
- HTTP status:200
- 含义:SSO Token 类型不支持
- 典型触发条件:传入的 token 不是 atkonbase 支持的 SSO token 类型(如非 OIDC id_token、非 CAS service ticket)
- 处理建议:核对 IdP 协议;同一 IdP 不可混用不同协议的 token
- 示例响应:
json
{ "code": 105005, "msg": "SSO Token 类型不支持", "data": null }105006 USER_NOT_SYNCED
- HTTP status:200
- 含义:用户未同步(SSO 验证通过但找不到对应业务用户)
- 典型触发条件:SSO token 验证通过,但 token 中的用户标识在 atkonbase 内无对应业务用户记录(首次登录前未完成建档,或同步链路异常)
- 处理建议:若 IdP 启用了首次登录自动建档,应能自动建立映射;否则需要管理员主动同步用户;常见根因是 IdP claim 字段映射配置错误
- 示例响应:
json
{ "code": 105006, "msg": "用户未同步", "data": null }105007 IDP_ALREADY_EXISTS
- HTTP status:200
- 含义:IdP providerId 已存在
- 典型触发条件:创建 IdP 时使用了已被占用的 providerId
- 处理建议:换用唯一的 providerId;providerId 在租户内唯一
- 示例响应:
json
{ "code": 105007, "msg": "IdP providerId 已存在", "data": null }105008 IDP_OIDC_ISSUER_REQUIRED
- HTTP status:200
- 含义:OIDC 协议下 issuerUrl 必填
- 典型触发条件:创建 / 更新 OIDC 类型的 IdP 但未提供 issuerUrl
- 处理建议:补齐 issuerUrl;OIDC 端点发现依赖 issuerUrl
- 示例响应:
json
{ "code": 105008, "msg": "OIDC 协议下 issuerUrl 必填", "data": null }105009 IDP_INVALID_PRINCIPAL_SOURCE_TYPE
- HTTP status:200
- 含义:无效的 principalSourceType
- 典型触发条件:IdP 配置的 principalSourceType 不在允许枚举内(principalSourceType 决定通过该 IdP 进来的用户归到哪个 source 域)
- 处理建议:核对取值;同一 IdP 的 principalSourceType 应与租户内其它 IdP 协调,避免来源冲突
- 示例响应:
json
{ "code": 105009, "msg": "无效的 principalSourceType", "data": null }105010 IDP_CONNECTIVITY_FAILED
- HTTP status:200
- 含义:IdP 连通性测试失败
- 典型触发条件:调用 IdP 连通性测试端点,但 atkonbase 无法连接到 IdP(DNS / 防火墙 / 证书 / IdP 自身故障)
- 处理建议:检查网络可达性、TLS 证书有效性、IdP 端点 URL 拼写
- 示例响应:
json
{ "code": 105010, "msg": "IdP 连通性测试失败", "data": null }105011 IDP_JWKS_URL_NOT_CONFIGURED
- HTTP status:200
- 含义:JWKS URL 未配置
- 典型触发条件:OIDC IdP 需要 JWKS(JSON Web Key Set)端点用于签名验证,但当前 IdP 配置未指定
- 处理建议:在 IdP 配置中补齐 JWKS URL;多数 OIDC IdP 通过
.well-known/openid-configuration暴露 - 示例响应:
json
{ "code": 105011, "msg": "JWKS URL 未配置", "data": null }105012 IDP_JWKS_RESPONSE_INVALID
- HTTP status:200
- 含义:JWKS 端点响应格式异常
- 典型触发条件:JWKS URL 可达,但返回内容不符合 JWKS 规范
- 处理建议:直接访问 JWKS URL 检查返回结构;常见根因是 IdP 配置错把别的 JSON 接口路径填到 JWKS URL 字段
- 示例响应:
json
{ "code": 105012, "msg": "JWKS 端点响应格式异常", "data": null }105013 IDP_CAS_URL_NOT_CONFIGURED
- HTTP status:200
- 含义:CAS Server URL 未配置
- 典型触发条件:CAS 类型 IdP 缺少 CAS Server URL 配置
- 处理建议:在 IdP 配置中补齐 CAS Server URL
- 示例响应:
json
{ "code": 105013, "msg": "CAS Server URL 未配置", "data": null }105014 SSO_ONBOARD_FAILED
- HTTP status:200
- 含义:SSO 回调首次登录建档写入失败
- 典型触发条件:SSO 验证通过但写入新用户记录到 atkonbase 时失败(写入异常 / 数据冲突)
- 处理建议:检查响应
msg字段获取具体原因;常见是用户名冲突或 IdP 返回的必填字段缺失 - 示例响应:
json
{ "code": 105014, "msg": "SSO 回调建档写入失败", "data": null }105015 SSO_STATE_INVALID
- HTTP status:200
- 含义:SSO 回调 state / service 参数非法或已过期(CSRF 校验失败)
- 典型触发条件:SSO 回调中携带的 state 参数无法验证——通常是 CSRF 攻击防御机制触发,或用户在登录页停留过久导致 state 过期
- 处理建议:让用户重新发起 SSO 登录流程(重新获取 state);不要尝试绕过本校验
- 示例响应:
json
{ "code": 105015, "msg": "SSO 回调 state 非法或已过期", "data": null }