UniterRouter

身份验证

UniterRouter API 身份验证完整指南。学习如何生成 API 密钥、实现安全的 Bearer Token 认证,以及保护 LLM API 请求的最佳实践。

身份验证

所有对 UniterRouter 的 API 请求都需要使用 API 密钥进行身份验证。本指南介绍如何获取和安全使用你的 API 密钥。

获取 API 密钥

  1. 登录 UniterRouter 控制台
  2. 进入 项目 → API 密钥
  3. 点击 创建 API 密钥
  4. 立即复制密钥 —— 它只会显示一次

安全提示:你的 API 密钥是机密凭证。切勿在客户端代码、公开仓库中暴露它,也不要与他人分享。

使用 API 密钥

在每个请求的 Authorization 头中使用 Bearer token 格式包含你的 API 密钥:

Authorization: Bearer YOUR_API_KEY

示例请求

curl https://api.uniterouter.ai/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $UNITEROUTER_API_KEY" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "你好!"}]
  }'
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.uniterouter.ai/v1",
    api_key=os.environ.get("UNITEROUTER_API_KEY"),
)

response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "你好!"}]
)
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.uniterouter.ai/v1",
  apiKey: process.env.UNITEROUTER_API_KEY,
});

const response = await client.chat.completions.create({
  model: "gpt-4o",
  messages: [{ role: "user", content: "你好!" }],
});
package main

import (
    "context"
    "os"
    openai "github.com/sashabaranov/go-openai"
)

func main() {
    config := openai.DefaultConfig(os.Getenv("UNITEROUTER_API_KEY"))
    config.BaseURL = "https://api.uniterouter.ai/v1"
    client := openai.NewClientWithConfig(config)

    resp, _ := client.CreateChatCompletion(
        context.Background(),
        openai.ChatCompletionRequest{
            Model: "gpt-4o",
            Messages: []openai.ChatCompletionMessage{
                {Role: "user", Content: "你好!"},
            },
        },
    )
}

环境变量

我们建议将 API 密钥存储在环境变量中:

# 添加到你的 shell 配置文件 (.bashrc, .zshrc 等)
export UNITEROUTER_API_KEY="sk_..."

对于生产应用,请使用密钥管理器或部署平台提供的环境配置。

API 密钥格式

UniterRouter API 密钥遵循以下格式:

前缀描述
sk_标准 API 密钥
sk_test_测试环境密钥(如适用)

身份验证错误

如果身份验证失败,API 返回 401 Unauthorized 响应:

{
  "error": {
    "message": "提供的 API 密钥不正确。你可以在 https://uniterouter.ai/dashboard 找到你的 API 密钥。",
    "type": "invalid_request_error",
    "code": "invalid_api_key"
  }
}

常见的身份验证问题:

问题解决方案
缺少 Authorization 头添加包含 API 密钥的头
密钥格式无效确保密钥以正确的前缀开头
密钥已过期或被撤销在控制台生成新密钥
密钥所属项目已禁用重新启用项目或使用其他密钥

安全最佳实践

推荐的安全实践

  1. 永远不要硬编码 API 密钥 —— 使用环境变量或密钥管理器
  2. 定期轮换密钥 —— 创建新密钥并弃用旧密钥
  3. 每个环境使用单独的密钥 —— 开发、测试和生产使用不同的密钥
  4. 设置使用限制 —— 为每个 API 密钥配置消费限额
  5. 监控使用情况 —— 定期在控制台查看 API 密钥活动
  6. 立即撤销泄露的密钥 —— 如果密钥被暴露,立即禁用并创建新密钥

组织和项目结构

UniterRouter 使用层级结构进行访问管理:

组织
└── 项目
    └── API 密钥
  • 组织:你的顶级账户
  • 项目:API 密钥和设置的逻辑分组
  • API 密钥:作用于特定项目的凭证

每个 API 密钥继承其父项目的权限和设置。

下一步

How is this guide?