首页文档认证与 API Key

认证与 API Key

并行AI API 支持两种认证方式:

  1. API Key(sk-hub-xxx)— 长期凭证,用于第三方客户端和集成
  2. JWT Token(eyJhbGc...)— 短期凭证,用于官方桌面/Web 客户端

/hub/v1/chat/completions 等核心端点同时接受这两种凭证。你选一种用就行。

认证头格式

Authorization: Bearer <token>

不管是 API Key 还是 JWT,都用 Bearer 方式放在 HTTP Header 里。完全符合 OpenAI 规范。

API Key 的生命周期

创建

登录后进入 控制台 → API Keys,点击"创建"。 新 Key 只会在创建时显示一次明文,务必立即复制。

存储机制

我们只在数据库存储 SHA-256 哈希,不留明文。这意味着:

  • ✅ 即使数据库泄漏,攻击者也拿不到可用 Key
  • ✅ 你可以随时删除 Key(立即失效)
  • ❌ Key 丢失无法找回,必须删除后重新创建

管理操作

  • 重命名:帮助你区分不同项目/场景
  • 启用/禁用:临时关闭不影响其他 Key
  • 删除:彻底失效,无法恢复
  • 使用统计:每个 Key 的调用次数、最后使用时间

安全最佳实践

🔐 API Key 等同于你账号的凭证,泄漏后别人可以代你消费积分。

✅ 推荐做法

  • 每个项目/环境用独立的 Key(方便追踪和吊销)
  • 把 Key 放在环境变量里,不要硬编码
  • 服务端代理所有 API 调用,不要在前端暴露 Key
  • 定期检查控制台的"最近使用"是否异常

❌ 禁止做法

  • 把 Key commit 到 Git 仓库(即使是私有仓库也不要)
  • 在浏览器客户端直接调用(别人能看到)
  • 截图分享时不打码
  • 多人共享同一个 Key

泄漏了怎么办?

  1. 立即去 控制台 删除该 Key
  2. 检查账单流水是否有异常调用
  3. 如有非本人调用,发邮件 admin@bingxingai.com 申请补偿
  4. 创建新 Key,更新所有相关配置

JWT Token(桌面 Web 客户端用)

当你用 Web 控制台 登录时,服务器会返回一对 Token:

  • Access Token:2 小时有效,每次 API 调用都带它
  • Refresh Token:30 天有效,用于刷新 Access Token

浏览器的 Web 应用会自动管理这一对,你不需要手动操作。 只有你自己写 SDK 时才需要关心 JWT。

速率限制

目前暂未启用严格限流,但有基础保护:

  • 单个 Key 每分钟最多 60 次请求(基础 / 标准 / 无限 套餐各有不同)
  • 超限返回 429 Too Many Requests
  • 建议客户端做指数退避重试

错误码

HTTP 状态业务 code含义
4011005Token 无效或过期
4011006未提供认证头
4022001积分余额不足
4292003请求频率过高

相关