首页 › tutorials › Claude Code 登录认证:四路首跑入门

概述

很多新手把 Claude Code 装进终端,敲下 claude,结果卡在"请登录"这一步不知道选哪条路:用刚买的 Claude Max 订阅?用控制台的 API Key?还是公司配的 AWS Bedrock 凭证?选错不仅跑不通,还可能"以为在用订阅、实际在烧 API 额度"。本教程把登录认证这一入门第一关彻底讲透——覆盖订阅登录、API Key、Amazon Bedrock、Google Vertex 四条认证路径,并带你登录成功后跑通第一个项目。适用人群:零基础到进阶初学者、刚拿到企业账号的团队新成员、在 WSL2/SSH/容器里跑 Claude Code 卡在回调的开发者。

前置条件

第一步:第一次输入 claude 会发生什么

安装完成后,在任意目录执行:

claude

预期结果:终端打印欢迎信息,随后尝试自动打开系统浏览器跳转到 Anthropic 登录页。如果你看到一行类似 Waiting for authentication... 的提示,说明 Claude Code 已经在本机起了一个临时本地回调服务器,等待浏览器登录后把凭证回传给它。

这一步的常见卡点不是"登录失败",而是"浏览器打不开"或"打开了却回不来"。理解这个回调机制,是后面排错的基础。

第二步:选对认证方式——一张决策表

登录前先回答一个问题:你想让 Claude Code 用谁的钱、谁的额度? 这决定了你走哪条路。

你的场景 推荐认证方式 谁在计费 关键凭证
个人买了 Claude Pro/Max 订阅登录(OAuth) 订阅额度,不按 token 计费 Claude.ai 账号
公司发了 Teams/Enterprise 账号 订阅登录(OAuth) 企业订阅额度 被管理员邀请的账号
想精确控制成本、做脚本/CI API Key 按 token 实付计费 ANTHROPIC_API_KEY
企业合规要求数据走 AWS Amazon Bedrock AWS 账单 AWS IAM + Bedrock
企业合规要求数据走 GCP Google Vertex AI GCP 账单 GCP 项目 + 服务账号

决策原则:能用订阅就别用 API Key(订阅是包月,API Key 是计件);有合规要求就走云提供商(Bedrock/Vertex 数据不出云)。如果你只是个人开发者想快速跑通,订阅登录几乎总是最优解。

第三步:四套认证逐一手把手配置

3.1 路径一:订阅登录(Claude Pro/Max/Teams/Enterprise)

这是最省事的路径。执行 claude 后,浏览器会打开登录页,用你的 Claude.ai 账号登录并授权即可。授权成功后浏览器会自动跳回终端,显示登录成功。

WSL2 / SSH / 容器里的高频坑: 浏览器可能显示一串登录码(login code)而不是自动跳转回终端——这是因为浏览器无法访问 Claude Code 在你本机起的那个回调服务器。解决方法:在终端的 Paste code here if prompted 提示处,把这串登录码粘贴进去回车即可完成认证。

预期结果:终端显示 Logged in as <你的邮箱>,再次运行 claude 时不再要求登录。

常见问题与解决:

3.2 路径二:API Key(Anthropic Console)

到 console.anthropic.com 创建一个 API Key,然后设置环境变量:

# macOS / Linux(写入 shell 配置以持久化)
export ANTHROPIC_API_KEY="sk-ant-xxxxxxxxxxxxxxxx"
echo 'export ANTHROPIC_API_KEY="sk-ant-xxxxxxxxxxxxxxxx"' >> ~/.zshrc

# Windows PowerShell(用户级持久化)
setx ANTHROPIC_API_KEY "sk-ant-xxxxxxxxxxxxxxxx"

注意:API Key 一旦设置,会覆盖订阅登录。也就是说,如果你同时有保存的 OAuth 订阅凭证和这个环境变量,Claude Code 默认走 API Key,按 token 计费。这是"以为用订阅、实际烧额度"的头号元凶,务必心里有数。

安全建议:永远不要把含 Key 的命令写进提交到 Git 的脚本;用 .env + .gitignore,或借助系统密钥管理。验证设置是否生效:

echo "${ANTHROPIC_API_KEY:0:12}..."   # 只打印前缀,确认已注入

预期结果:打印出 sk-ant-xxxx... 前缀,说明环境变量已生效。

3.3 路径三:Amazon Bedrock

适合企业合规场景。前提是 AWS 账号已在 Bedrock 控制台启用 Claude 模型访问,并配置好 IAM 凭证(aws configure 或挂载 IAM Role)。然后:

export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1
export ANTHROPIC_MODEL="us.anthropic.claude-sonnet-4-6-20250929-v1:0"

# 可选:自定义 Bedrock 端点(跨区域或 PrivateLink 时)
export ANTHROPIC_BEDROCK_BASE_URL="https://bedrock-runtime.us-east-1.amazonaws.com"

模型 ID 形如 us.anthropic.claude-<版本>,必须和你在 Bedrock 控制台申请访问权限的模型严格一致,否则会报模型未授权。

常见问题与解决:

3.4 路径四:Google Vertex AI

export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5
export ANTHROPIC_VERTEX_PROJECT_ID="your-gcp-project-id"

# 一次性应用层凭证
gcloud auth application-default login

前提:GCP 项目已启用 Vertex AI、已申请 Claude 模型访问、gcloud 已登录。ANTHROPIC_VERTEX_PROJECT_ID 是计费项目,CLOUD_ML_REGION 决定推理区域和可用模型,两者配错会直接 404。

Microsoft Foundry 走类似逻辑(CLAUDE_CODE_USE_FOUNDRY=1 等),本文不展开,思路与 Bedrock/Vertex 一致:设开关、设区域、配服务凭证。

第四步:用三个命令验证与管理认证

登录/配置完成后,永远先验证当前实际生效的是哪条路,再开始干活:

claude            # 进入交互界面
> /status         # 查看当前账户、组织、生效的认证方式与模型
> /login          # 重新走登录流程(切换账号)
> /logout         # 清除保存的凭证

认证优先级链(Authentication precedence):当多个凭证同时存在时,Claude Code 按固定顺序选择其一——一般规律是显式设置的环境变量(API Key / Bedrock flag / Vertex flag)优先于本地保存的 OAuth 订阅凭证。这意味着:只要你设了 ANTHROPIC_API_KEY,订阅登录就被架空。排查"为什么在烧 API 额度"时,第一反应就是 env | grep -i anthropic 看有没有遗留的环境变量,或在交互界面用 /status 确认当前账户类型。

第五步:登录成功后跑通第一个项目

认证通过只是上半场,下半场是让 Claude Code 真正在你的项目里干活。进入项目目录并初始化:

mkdir hello-claude && cd hello-claude
claude

在交互界面执行 /init,Claude Code 会扫描项目并生成 CLAUDE.md(项目记忆文件),随后你可以直接下一条自然语言指令:

用 Python 写一个读取当前目录所有 .md 文件并统计字数的脚本,保存为 count_words.py,然后运行它。

预期结果:Claude Code 创建 count_words.py、执行、并在终端回显每个文件的字数统计。如果它能在不被反复打断的情况下完成"创建—执行—输出"闭环,就证明认证、文件读写、命令执行整条链路都通了。

如果你只想做最小验证、不想动文件,直接问一句"当前目录下有哪些文件?"能正常回答,就说明认证层已完全打通。

实战案例:认证+首跑自检清单

下面这个流程把上述步骤串成一个可复现的"开机自检",适合每次在新机器/新环境配置后跑一遍:

# 1. 确认 CLI 就绪
claude --version

# 2. 选定认证方式(三选一,注释掉不用的)
#    方式A:订阅登录
#    方式B:API Key
export ANTHROPIC_API_KEY="sk-ant-xxxx"
#    方式C:Bedrock
# export CLAUDE_CODE_USE_BEDROCK=1 AWS_REGION=us-east-1

# 3. 排查遗留凭证(避免优先级链劫持你的订阅)
env | grep -iE "ANTHROPIC|CLAUDE_CODE_USE|AWS_REGION|CLOUD_ML" || echo "无云凭证环境变量"

# 4. 非交互验证认证与模型可用性
claude -p "回复一个字:通"   # 期望输出"通"

# 5. 验证通过后,初始化项目记忆
claude /init

第 4 步的 claude -p "..." 是无头模式(headless)一次性问答,最适合用来做认证自检——它不会进入交互界面,认证有问题会直接报错退出,认证成功则返回模型回答。把这一行加入你的环境配置脚本,新机器开机就能秒验认证状态。

工作流程图

下面这张图把"选认证方式 → 配置 → 验证 → 首跑"的决策链画清楚:

flowchart TD
    A[执行 claude] --> B{有合规/数据驻留要求?}
    B -- 否 --> C{按量计费 or 包月?}
    C -- 包月 --> D[订阅登录 OAuth]
    C -- 按量/脚本/CI --> E[设置 ANTHROPIC_API_KEY]
    B -- 是,AWS --> F[设置 CLAUDE_CODE_USE_BEDROCK=1]
    B -- 是,GCP --> G[设置 CLAUDE_CODE_USE_VERTEX=1]
    D --> H[浏览器登录 / 回填登录码]
    E --> I[env 注入并持久化]
    F --> J[IAM + 区域 + 模型 ID]
    G --> K[gcloud + 项目 + 区域]
    H --> L[/status 验证生效账户]
    I --> L
    J --> L
    K --> L
    L --> M{claude -p 自检通过?}
    M -- 否 --> N[排查优先级链/网络/区域]
    N --> L
    M -- 是 --> O[/init 初始化 + 下指令首跑]
    O --> P[✅ 认证+首跑闭环完成]

优先级链的"劫持"关系则可以这样理解:

flowchart LR
    A[ANTHROPIC_API_KEY?] -- 已设置 --> W[走 API Key 计费]
    A -- 未设 --> B[CLAUDE_CODE_USE_BEDROCK?]
    B -- 1 --> X[走 Bedrock]
    B -- 否 --> C[CLAUDE_CODE_USE_VERTEX?]
    C -- 1 --> Y[走 Vertex]
    C -- 否 --> Z[走保存的订阅 OAuth]
    Z --> Q[订阅额度]

(具体顺序以你所用版本 claude --version 对应的官方文档为准,/status 是判断实际生效路径的唯一可靠依据。)

常见问题 FAQ

Q1:我明明登录了订阅,为什么 /status 显示在用 API? 检查环境变量里有没有遗留的 ANTHROPIC_API_KEY。unset ANTHROPIC_API_KEY 后重启终端,再 /status 确认。

Q2:WSL2 里浏览器打不开登录页怎么办? 登录界面按 c 复制 URL,粘到 Windows 侧浏览器打开;若浏览器只给一串 code,把它粘回终端的 Paste code here if prompted 处。

Q3:Bedrock 报 ModelAccessDenied? 到 Bedrock 控制台 → Model access → 申请对应模型访问权限并等待通过;同时核对 ANTHROPIC_MODEL 的 ID 与区域前缀(如 us.)。

Q4:想在 CI 里无人值守跑 Claude Code,用哪种认证? 不要用 OAuth(没有浏览器)。用 API Key,或用云提供商的服务凭证(IAM Role / Workload Identity),并配合 /login 生成的长时效 token(long-lived token)写入 CI secret。

Q5:切换账号后旧额度还在被用? /logout 清除本地凭证,再确认环境变量没残留,最后 /login 用新账号登录。

Q6:四条路能不能同时配好按需切? 可以,但通过环境变量切换而非全量常驻。建议写几个 shell 函数(如 cc-sub、cc-api、cc-bedrock)分别 export/unset 对应变量,避免优先级链互相劫持。

延伸阅读

训练营适用性评估

参考来源

  1. Authentication — Claude Code Docs — 官方认证方式总览、登录回调机制、认证优先级链与长时效 token。
  2. Claude Code on Amazon Bedrock — Claude Code Docs — Bedrock 环境变量(CLAUDE_CODE_USE_BEDROCK、ANTHROPIC_BEDROCK_BASE_URL、AWS_REGION)与 IAM 配置。
  3. Authentication: API Keys, Subscriptions, and SSO — Developer Toolkit — 订阅/API Key/SSO 三类凭证的选择与踩坑。
  4. Claude Code on Claude Max Plan: OAuth Token vs API Key Authentication in 2026 — Medium — 2026 年 OAuth token 与 API key 的差异与切换。
  5. How to Install Claude Code: Complete Setup Guide (2026) — nxcode.io — 安装到 API Key 设置的 2026 完整指南。

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入