Claude Code 在中国报 403:先分清地区限制、代理与账号权限
简答:如果 403 的根因是当前地区或账户不符合 Anthropic 的支持条件,代理配置不能替代官方资格;如果属于技术性故障,按“记录报错→同一终端测试 API→检查代理继承→确认认证路径→核对组织与模型权限”的顺序排查。先不要删除本地配置,也不要把浏览器能打开网页当成 Claude Code 的终端请求已经正常。
定义:Claude Code 的 403 是服务端拒绝请求,可能来自地区或服务资格、终端代理、认证方式、组织席位、模型权限,也可能由第三方网关返回。
先看结论:在中国遇到 403,先判断是不是资格问题
Anthropic 在 2025 年 9 月 4 日的公开说明中写明,当前不向中国提供 Claude 的商业访问;官方支持地区页面也要求 Claude Code 运行在支持地区。本文截至 2026 年 10 月 27 日不把代理配置描述为绕过地区限制的方法。请以当前支持地区政策、账户提示和组织规定为准;如果服务资格不满足,应联系管理员或官方支持,而不是继续尝试伪造位置、共享账号或不明中转。
如果你是在已获授权、且符合服务条款的账户和网络环境中排查技术故障,按下面顺序进行。本文是第三方接入指南,不是 Claude Code 官方站点;涉及版本、菜单和账户权限的内容,以当前官方文档为准。
| 报错或现象 | 优先判断 | 先做什么 |
|---|---|---|
Request not allowed,并且来自不支持地区或账户 | 服务资格或政策限制 | 查看当前支持地区和账户政策,不把代理当作解决方案 |
| 浏览器能打开,但终端超时、DNS 或 TLS 失败 | 终端没有继承浏览器或系统代理 | 在运行 Claude Code 的同一环境检查代理变量并测试 API |
| 登录后仍是 403,提示组织或模型不可用 | 席位、组织设置或模型访问权限 | 检查认证路径、组织管理员设置和当前模型 |
| 改用网关后 403 | 网关 Key、Base URL、模型或策略错误 | 区分网关返回还是上游返回,严格按当前网关文档核对 |
第一步:记录错误原文,再在同一环境测试连通性
先保存完整错误文本、发生时间、Claude Code 版本、操作系统、运行位置,以及你使用的是 Claude 账户登录、Anthropic API Key、Amazon Bedrock、Google Vertex AI 还是第三方网关。Remote SSH、容器和 WSL 都应以实际运行 Claude Code 的环境为准,不能在本机终端代测。
在同一个终端中先做不暴露密钥的 HTTPS 连通性测试:curl -I https://api.anthropic.com。如果出现 DNS 失败、连接超时或 TLS 证书错误,先处理网络、代理、证书或防火墙;如果能收到 HTTP 响应,至少说明域名解析和 HTTPS 建连已经走到服务端附近,但这不代表账户、组织或模型权限正常。
若你已经有合法可用的 Anthropic API Key,可在当前会话中执行带认证头的最小请求:curl -i https://api.anthropic.com/v1/models -H "x-api-key: $ANTHROPIC_API_KEY" -H "anthropic-version: 2023-06-01"。不要把真实 Key 写入文章、截图、工单或 shell 历史。通常可按下面理解结果:401 多表示认证缺失或无效;403 表示请求被策略、账户、组织或权限拒绝;超时、DNS 和 TLS 错误优先看网络链路。未认证请求收到 401,只能证明请求到达了服务端,不能证明目标模型或组织权限可用。
Anthropic 的企业代理文档列出了 Claude Code 需要访问的服务地址和代理配置要求;排障时应以该文档及当前版本说明为准。
第二步:检查终端代理是否真的生效
浏览器、操作系统代理、VS Code、PowerShell、WSL 和 Remote SSH 可能是不同进程,代理设置不会自动在所有环境间共享。Anthropic 当前文档明确支持通过 HTTP_PROXY 和 HTTPS_PROXY 配置 HTTP/HTTPS 代理,并说明 Claude Code 不支持 SOCKS 代理和 NO_PROXY。代理地址和端口必须替换为你自己的 HTTP 或 HTTPS 代理端口,不能照抄示例值。
macOS、Linux 或 WSL 的当前终端
export HTTP_PROXY=http://127.0.0.1:端口; export HTTPS_PROXY=http://127.0.0.1:端口; export http_proxy="$HTTP_PROXY"; export https_proxy="$HTTPS_PROXY"; env | grep -i proxy; curl -I https://api.anthropic.com
这组命令只影响当前 shell。若 Claude Code 在 WSL 内运行,就必须在 WSL 内设置并测试;Windows PowerShell 的变量不代表 WSL 已经读取。
Windows PowerShell 的当前会话
$env:HTTP_PROXY="http://127.0.0.1:端口"; $env:HTTPS_PROXY="http://127.0.0.1:端口"; $env:http_proxy=$env:HTTP_PROXY; $env:https_proxy=$env:HTTPS_PROXY; Get-ChildItem Env: | Where-Object Name -match "proxy"; curl.exe -I https://api.anthropic.com
PowerShell 中建议显式使用 curl.exe,并在真正运行 Claude Code 的同一窗口执行测试。若 Remote SSH 登录到服务器,应在远程终端检查 env、代理变量和 curl;本地电脑的代理状态不能代表远程主机。
如果代理使用企业自签名证书,官方文档还要求按企业环境配置证书包;不要为了绕过 TLS 错误而关闭证书校验。
第三步:确认认证方式,排除 API Key 覆盖登录
Claude Code 支持 Anthropic Console、Claude Pro 或 Max 账户,以及企业场景中的 Amazon Bedrock 和 Google Vertex AI。不同认证路径对应不同的账户、组织和权限,不能把订阅登录的排错结论直接套到云平台或第三方网关上。可先查看Claude Code 官方设置说明。
如果 Claude Code 当前版本支持相关命令,可在会话中运行 /status 查看当前认证状态;命令名称、显示字段可能随版本或接入方式变化。如果命令不可用,退出会话后使用 claude doctor,并检查当前终端的环境变量。
API Key 环境变量可能优先于订阅认证。官方帮助中心说明,设置 ANTHROPIC_API_KEY 后,Claude Code 可能使用该 Key,而不是 Claude 订阅的认证路径;这还可能导致 API 账户产生用量费用。可只检查变量是否存在,不打印完整内容:if [ -n "$ANTHROPIC_API_KEY" ]; then echo "ANTHROPIC_API_KEY is set"; else echo "ANTHROPIC_API_KEY is not set"; fi。Windows PowerShell 可使用 if ($env:ANTHROPIC_API_KEY) { "ANTHROPIC_API_KEY is set" } else { "ANTHROPIC_API_KEY is not set" }。
如果你原本要使用订阅登录,却发现环境变量已设置,先在当前终端临时取消它,再重新启动 Claude Code:unset ANTHROPIC_API_KEY;PowerShell 使用 Remove-Item Env:ANTHROPIC_API_KEY。是否永久删除 profile 中的配置,应先备份并确认组织要求。相关优先级可参考官方 API Key 环境变量说明。
第四步:认证成功后仍 403,检查组织席位和模型权限
如果网络连通、代理变量正确、认证路径也符合预期,但每次请求仍然 403,重点检查组织是否启用 Claude Code、Team 或 Enterprise 席位是否有效,以及当前账户是否能访问 Claude Code 请求的模型。Anthropic 的官方排障页把“账户存在但没有目标模型权限”列为 403 或 model not available 的排查方向。
当前版本支持时,可使用 /model 查看或切换到账户确实有权限的模型;如果命令或模型列表与本文不同,以当前 CLI 文档和账户界面为准。模型名称不要从旧教程直接复制,因为官方会调整模型生命周期;可查看模型生命周期文档。
使用 Amazon Bedrock 时,应在实际 AWS 环境确认 aws sts get-caller-identity 可用,并检查目标区域是否已启用对应模型;使用 Google Vertex AI 时,应核对 GCP 凭据、项目、区域和模型访问权限。Anthropic 的设置说明将这两类企业接入作为独立路径,不能只凭 Claude Code 登录成功推断云平台调用权限。
如果是组织账户,请让管理员核对席位、SSO、模型策略和 Claude Code 开关。不要把反复登录、删除配置目录或更换模型名当成组织权限的替代方案。
第五步:通过第三方网关时,不要直接套用直连参数
Claude Code 直连 Anthropic、通过 Bedrock 或 Vertex,以及使用第三方 LLM 网关,属于不同配置。网关返回的 403 可能来自 Key、Base URL、模型 ID、组织绑定、请求格式或网关策略;也可能是上游返回后被网关转发。本文不提供未核实的第三方域名、模型名或账户配置。
排查网关时,先在控制台确认 API Key 状态,再从当前文档逐字核对 ANTHROPIC_BASE_URL、认证变量、路径和模型字段。Anthropic 的LLM Gateway 文档展示了网关变量和不同端点形式,但示例不能直接套到其他服务。尤其不要默认 Base URL 一定包含或不包含 /v1。
- 先记录网关返回的 HTTP 状态码、响应体摘要和请求时间,不要上传完整密钥。
- 确认请求实际到达网关,而不是仍然请求
api.anthropic.com。 - 核对网关要求的认证头、Base URL 和模型 ID。
- 如果网关支持日志,区分 403 是网关生成还是上游转发。
- 参数无法从当前公开文档核实时,写“以当前控制台和文档为准”,不要自行拼接。
如需使用网关,请只在你拥有合法授权、账户和网络环境符合服务条款的前提下进行配置。
按顺序执行的 403 自查清单
- 记录完整报错、时间、版本、系统、运行位置和认证方式。
- 先确认当前地区、组织和账户是否满足 Anthropic 的支持政策。
- 在运行 Claude Code 的同一环境执行
curl -I https://api.anthropic.com。 - 检查大写和小写的
HTTP_PROXY、HTTPS_PROXY,确认端口是 HTTP/HTTPS 代理端口。 - 用最小认证请求区分 401、403、超时、DNS 和 TLS 错误;不要打印完整 Key。
- 运行
claude doctor,并在支持的版本中查看/status。 - 检查
ANTHROPIC_API_KEY是否覆盖了订阅、SSO 或其他预期认证。 - 检查组织席位、模型访问权限,以及 Bedrock 或 Vertex 的项目和区域设置。
- 如果请求经过网关,单独核对网关的 Key、Base URL、路径和模型 ID。
- 只有确认本地认证缓存损坏并完成备份后,才考虑重新认证;删除整个配置目录不应作为第一步。
常见问题
在中国使用 Claude Code 报 403,先设置代理还是先看支持地区?
先看支持地区和账户资格。Anthropic 的公开说明称当前不向中国提供 Claude 的商业访问;如果根因是服务资格限制,代理设置不能替代官方资格。只有在已获授权且符合服务条款的环境中,才继续做终端连通性和代理继承排查。
浏览器能打开 Claude,为什么 Claude Code 仍然 403?
浏览器、系统代理、终端、WSL、Remote SSH 和 VS Code 可能使用不同网络通道。请在实际运行 Claude Code 的同一环境执行 curl,并检查 HTTP_PROXY、HTTPS_PROXY;浏览器能打开网页不能证明终端 API 已正常连通。
curl 返回 401,是不是说明 Claude Code 的账号权限正常?
不是。未认证请求返回 401 通常只能说明请求已到达服务端,但没有提供有效认证;它不能证明账户、组织或目标模型有权限。需要在不泄露 Key 的前提下使用正确认证方式继续核对。
设置了 ANTHROPIC_API_KEY,为什么登录后仍然 403?
API Key 存在不等于账户有 Claude Code 或目标模型权限,而且该变量可能改变 Claude Code 的认证路径。先用 /status 或 claude doctor 确认当前认证方式,再核对 Key 所属组织、模型权限和账户状态。
Claude Code 403 时可以直接删除 ~/.claude 吗?
不建议。先记录错误、运行 claude doctor、检查代理和认证变量;只有确认本地认证缓存损坏并完成备份后,才按当前官方流程重新认证。地区限制、组织席位和模型权限不会因为删除目录自动消失。
Windows、WSL 和 Remote SSH 可以共用同一套代理变量吗?
不能默认共用。它们可能是不同进程和不同网络环境。应在真正运行 Claude Code 的环境中设置并检查变量,然后在同一环境执行 curl 和 claude doctor。
第三方网关返回 403 时,应该把 Base URL 改成什么?
不能凭经验指定。Base URL、是否包含 /v1、认证变量、请求路径和模型 ID 必须来自该网关当前控制台或文档。先判断 403 是网关生成还是上游返回,再逐项核对配置。
相关阅读
参考资料
- Anthropic:排查 Claude Code 安装和身份验证问题(support.claude.com)
- Anthropic:Claude Code 企业代理配置
- Anthropic:设置 Claude Code
- Anthropic:管理 Claude Code 中的 API Key 环境变量(support.claude.com)
- Anthropic:LLM Gateway 配置
- Anthropic:关于地区与商业访问的公开说明
- Anthropic:支持地区政策
- Anthropic:模型生命周期与弃用说明
