Files
openclaw/docs/zh-CN/gateway/authentication.md

143 lines
4.1 KiB
Markdown
Raw Normal View History

2026-02-01 22:47:44 +01:00
---
read_when:
- 调试模型认证或 OAuth 过期
- 记录认证或凭证存储
2026-02-01 22:47:44 +01:00
summary: 模型认证OAuth、API 密钥和 setup-token
title: 认证
x-i18n:
generated_at: "2026-02-03T07:47:32Z"
2026-02-01 22:47:44 +01:00
model: claude-opus-4-5
provider: pi
source_hash: 66fa2c64ff374c9cfcdb4e7a951b0d164d512295e65513eb682f12191b75e557
source_path: gateway/authentication.md
workflow: 15
2026-02-01 22:47:44 +01:00
---
# 认证
OpenClaw 支持模型提供商的 OAuth 和 API 密钥。对于 Anthropic 账户,我们推荐使用 **API 密钥**。对于 Claude 订阅访问,使用 `claude setup-token` 创建的长期令牌。
2026-02-01 22:47:44 +01:00
参阅 [/concepts/oauth](/concepts/oauth) 了解完整的 OAuth 流程和存储布局。
2026-02-01 22:47:44 +01:00
## 推荐的 Anthropic 设置API 密钥)
如果你直接使用 Anthropic请使用 API 密钥。
1. 在 Anthropic 控制台创建 API 密钥。
2. 将其放在 **Gateway 网关主机**(运行 `openclaw gateway` 的机器)上。
2026-02-01 22:47:44 +01:00
```bash
export ANTHROPIC_API_KEY="..."
openclaw models status
```
3. 如果 Gateway 网关在 systemd/launchd 下运行,最好将密钥放在 `~/.openclaw/.env` 中以便守护进程可以读取:
2026-02-01 22:47:44 +01:00
```bash
cat >> ~/.openclaw/.env <<'EOF'
ANTHROPIC_API_KEY=...
EOF
```
然后重启守护进程(或重启你的 Gateway 网关进程)并重新检查:
2026-02-01 22:47:44 +01:00
```bash
openclaw models status
openclaw doctor
```
如果你不想自己管理环境变量,新手引导向导可以为守护进程使用存储 API 密钥:`openclaw onboard`
2026-02-01 22:47:44 +01:00
参阅[帮助](/help)了解环境变量继承的详情(`env.shellEnv``~/.openclaw/.env`、systemd/launchd
2026-02-01 22:47:44 +01:00
## Anthropicsetup-token订阅认证
对于 Anthropic推荐的路径是 **API 密钥**。如果你使用 Claude 订阅,也支持 setup-token 流程。在 **Gateway 网关主机**上运行:
2026-02-01 22:47:44 +01:00
```bash
claude setup-token
```
然后将其粘贴到 OpenClaw
2026-02-01 22:47:44 +01:00
```bash
openclaw models auth setup-token --provider anthropic
```
如果令牌是在另一台机器上创建的,手动粘贴:
2026-02-01 22:47:44 +01:00
```bash
openclaw models auth paste-token --provider anthropic
```
如果你看到类似这样的 Anthropic 错误:
2026-02-01 22:47:44 +01:00
```
This credential is only authorized for use with Claude Code and cannot be used for other API requests.
```
…请改用 Anthropic API 密钥。
2026-02-01 22:47:44 +01:00
手动令牌输入(任何提供商;写入 `auth-profiles.json` + 更新配置):
2026-02-01 22:47:44 +01:00
```bash
openclaw models auth paste-token --provider anthropic
openclaw models auth paste-token --provider openrouter
```
自动化友好检查(过期/缺失时退出 `1`,即将过期时退出 `2`
2026-02-01 22:47:44 +01:00
```bash
openclaw models status --check
```
可选的运维脚本systemd/Termux在此处记录[/automation/auth-monitoring](/automation/auth-monitoring)
2026-02-01 22:47:44 +01:00
> `claude setup-token` 需要交互式 TTY。
## 检查模型认证状态
```bash
openclaw models status
openclaw doctor
```
## 控制使用哪个凭证
2026-02-01 22:47:44 +01:00
### 每会话(聊天命令)
2026-02-01 22:47:44 +01:00
使用 `/model <alias-or-id>@<profileId>` 为当前会话固定特定的提供商凭证(示例配置文件 ID`anthropic:default``anthropic:work`)。
2026-02-01 22:47:44 +01:00
使用 `/model`(或 `/model list`)获取紧凑的选择器;使用 `/model status` 获取完整视图(候选项 + 下一个认证配置文件,以及配置时的提供商端点详情)。
2026-02-01 22:47:44 +01:00
### 每智能体CLI 覆盖)
2026-02-01 22:47:44 +01:00
为智能体设置显式的认证配置文件顺序覆盖(存储在该智能体的 `auth-profiles.json` 中):
2026-02-01 22:47:44 +01:00
```bash
openclaw models auth order get --provider anthropic
openclaw models auth order set --provider anthropic anthropic:default
openclaw models auth order clear --provider anthropic
```
使用 `--agent <id>` 指定特定智能体;省略它则使用配置的默认智能体。
2026-02-01 22:47:44 +01:00
## 故障排除
### "No credentials found"
如果 Anthropic 令牌配置文件缺失,在 **Gateway 网关主机**上运行 `claude setup-token`,然后重新检查:
2026-02-01 22:47:44 +01:00
```bash
openclaw models status
```
### 令牌即将过期/已过期
运行 `openclaw models status` 确认哪个配置文件即将过期。如果配置文件缺失,重新运行 `claude setup-token` 并再次粘贴令牌。
2026-02-01 22:47:44 +01:00
## 要求
- Claude Max 或 Pro 订阅(用于 `claude setup-token`
- 已安装 Claude Code CLI`claude` 命令可用)