Claude Code登录问题通常由凭证冲突引起,核心排查步骤是运行/status查看当前认证类型。按优先级清除冲突环境变量(如unset ANTHROPIC_API_KEY),或使用claude setup-token为CI生成长期OAuth Token。团队认证需管理员邀请,云服务商通过环境变量直接认证,无需浏览器登录。
Claude Code 认证配置指南:登录方式、凭证管理与长期 Token
Claude Code 支持多种认证方式,从个人订阅到企业 SSO 都有覆盖。认证凭证和 settings 配置同时影响行为,但它们是不同东西:模型、权限、statusline 写在 settings.json;账号登录、API Key、OAuth、长期 Token 则看本页。
登录 Claude Code
安装 Claude Code 后,在任意目录运行 claude。首次启动会打开浏览器登录窗口。
如果浏览器没有自动打开,按 c 复制登录 URL,粘贴到浏览器。
如果登录后浏览器显示一个验证码而不是自动跳转,将其粘贴到终端提示 Paste code here if prompted 处。这种情况常见于 WSL2、SSH 会话和容器中,浏览器无法访问 Claude Code 的本地回调服务器。
支持的账号类型:
| 账号类型 | 说明 |
|---|---|
| Claude Pro/Max 个人订阅 | 用 claude.ai 账号登录,订阅地址:claude.com/pricing |
| Claude for Teams/Enterprise | 用团队管理员邀请的 claude.ai 账号登录 |
| Claude Console | 用 Console 凭证登录(需管理员邀请) |
| 云服务商 | 设置环境变量(Bedrock/Vertex/Foundry),无需浏览器登录 |
退出登录:在 Claude Code 提示符里输入 /logout。
登录遇到问题?参见 认证故障排查。
设置团队认证
Claude for Teams / Enterprise(推荐)
最适合大多数团队,成员同时获得 Claude Code 和 Claude Web 权限,统一计费和管理。
Teams vs Enterprise:
| 特性 | Teams | Enterprise |
|---|---|---|
| 自助订阅 | ✅ | - |
| 团队协作 + 管理工具 | ✅ | ✅ |
| SSO | - | ✅ |
| 域名捕获 | - | ✅ |
| 基于角色的权限 | - | ✅ |
| 合规 API | - | ✅ |
| 托管 policy 设置 | - | ✅ |
设置步骤:
- 订阅 Claude for Teams 或联系销售购买 Claude for Enterprise
- 在管理员仪表板邀请团队成员
- 成员安装 Claude Code 并用 claude.ai 账号登录
Claude Console API 认证
适合偏好 API 计费方式的组织。
设置步骤:
- 使用现有 Console 账号或创建新账号
- 添加用户(两种方式):
- Console 后台批量邀请:Settings → Members → Invite
- 设置 SSO
- 分配角色:
- Claude Code 角色:只能创建 Claude Code API key
- Developer 角色:可以创建任意类型 API key
- 每个被邀请的用户需要:
- 接受 Console 邀请
- 检查系统要求
- 安装 Claude Code
- 用 Console 账号登录
第三方云服务商
支持 Amazon Bedrock、Google Vertex AI、Microsoft Foundry,参见各自的配置文档:
配置好后,把环境变量和生成云凭证的操作指南分发给用户。更多配置管理见设置文档。
凭证管理
存储位置
| 平台 | 位置 |
|---|---|
| macOS | 加密的 macOS Keychain |
| Linux | ~/.claude/.credentials.json(若设置 CLAUDE_CONFIG_DIR,则在 $CLAUDE_CONFIG_DIR/.credentials.json),权限 0600 |
| Windows | %USERPROFILE%\.claude\.credentials.json,继承用户目录的访问控制(默认仅当前用户) |
Claude Code 通过 /login 和 /logout 管理 .credentials.json。要路由请求到自定义 API 端点,设置 ANTHROPIC_BASE_URL 环境变量。
支持的认证类型
- Claude.ai 凭证
- Claude API 凭证
- Azure Auth
- Bedrock Auth
- Vertex Auth
自定义凭证脚本(apiKeyHelper)
apiKeyHelper 设置可以配置一个 shell 脚本,运行后返回 API key。适合动态或轮换凭证(如从 vault 获取短期 token)。
{
"apiKeyHelper": "~/.claude/get-api-key.sh"
}
- 默认每 5 分钟或 HTTP 401 时调用一次
- 自定义刷新间隔:设置环境变量
CLAUDE_CODE_API_KEY_HELPER_TTL_MS - 如果脚本超过 10 秒才返回,Claude Code 会在提示栏显示警告
apiKeyHelper、ANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN仅适用于终端 CLI 会话。Claude Desktop 和远程会话只使用 OAuth,不调用这些设置。
认证优先级
同时存在多种凭证时,Claude Code 按以下顺序选择(从高到低):
- 云服务商凭证:设置了
CLAUDE_CODE_USE_BEDROCK、CLAUDE_CODE_USE_VERTEX或CLAUDE_CODE_USE_FOUNDRY时优先使用。详见第三方集成 ANTHROPIC_AUTH_TOKEN环境变量:作为Authorization: Bearer头发送。适合通过 LLM Gateway 或代理 路由时使用(使用 bearer token 而非 API key)ANTHROPIC_API_KEY环境变量:作为X-Api-Key头发送。用于直接 Anthropic API 访问,key 来自 Claude Console- 交互模式:首次使用时提示确认,选择会被记住;后续可在
/config的"Use custom API key"切换 - 非交互模式(
-p):有 key 时始终使用
- 交互模式:首次使用时提示确认,选择会被记住;后续可在
apiKeyHelper脚本输出:用于动态/轮换凭证,如从 vault 获取短期 tokenCLAUDE_CODE_OAUTH_TOKEN环境变量:通过claude setup-token生成的一年期 OAuth token。适合 CI 流水线和脚本,无需浏览器登录- 订阅 OAuth 凭证(
/login):Claude Pro、Max、Team、Enterprise 用户的默认方式
常见冲突:如果同时有活跃的 Claude 订阅和 ANTHROPIC_API_KEY,API key 优先。若 key 所属的组织被禁用或过期,会导致认证失败。解决方法:unset ANTHROPIC_API_KEY,然后用 /status 确认当前使用哪种认证方式。
Claude Code Web 版始终使用订阅凭证。沙箱环境中设置的
ANTHROPIC_API_KEY和ANTHROPIC_AUTH_TOKEN不会覆盖 Web 版认证。
生成长期 Token
从 2026 年 6 月 15 日起,Agent SDK 和
claude -p的使用将从新的月度 Agent SDK 额度中扣除,与交互式使用额度分离。详见 Use the Claude Agent SDK with your Claude plan。
对于 CI 流水线、脚本或其他无法进行浏览器登录的环境,可以用 claude setup-token 生成一年有效期的 OAuth token:
claude setup-token
命令会引导你完成 OAuth 授权,并将 token 打印到终端(不会保存到任何地方)。复制后,在需要认证的环境中设置环境变量:
export CLAUDE_CODE_OAUTH_TOKEN=your-token
限制:
- 需要 Pro、Max、Team 或 Enterprise 订阅
- 仅限推理(Inference)权限,无法建立远程控制会话
- Bare 模式不读取
CLAUDE_CODE_OAUTH_TOKEN,如果脚本用了--bare,请改用ANTHROPIC_API_KEY或apiKeyHelper
常见问题
登录时浏览器没有自动打开怎么办?
启动 Claude Code 后,按键盘上的 c 键复制登录 URL,然后手动粘贴到浏览器中完成认证。
Claude Code 一直提示认证失败或登录不上是什么原因?
最常见原因是多种认证凭证冲突。例如,设置了 ANTHROPIC_API_KEY 环境变量会优先于个人订阅 OAuth 登录。运行 /status 查看当前凭证,并用 unset ANTHROPIC_API_KEY 等命令清除冲突的环境变量。如果使用云服务商凭证,确认环境变量设置正确且凭证未过期。
团队账号无法登录 Claude Code 如何解决?
请确保你已接受团队管理员发出的邀请,并使用正确的 claude.ai 账号登录。如果使用 Console API 认证,需确认已被邀请至 Console 并拥有“Claude Code角色”或“Developer角色”。管理员邀请后,用户需先接受 Console 邀请再安装 Claude Code 登录。