この記事の目次
Claude Codeにログインできないときは、まず「起動直後」「ブラウザ認証の途中」「ログインした後」のどこで止まったかを確かめる。止まった段階と表示された文言から、最初に確認する先の候補を絞れる。原因の見当がつかない場合は、/logout でサインアウトし、Claude Codeを閉じて claude で起動し直し、認証を最後までやり直す。公式のトラブルシューティングは、原因がはっきりしないログイン失敗の大半はこのやり直しで解決すると案内している。ただし /logout はMCPサーバーのログインとプラグインの秘密値も消すので、実行後にそれらの再設定が要る。
サブスクリプションを契約しているのに失敗が続くなら、環境変数 ANTHROPIC_API_KEY などの別の認証がサブスクリプションより優先されていないかを /status で確かめる。この場合は /login をやり直しても直らない。
この記事は、claude は起動するのに、ログインの前後で認証のトラブルが起きている人向けに書いている。インストール段階のエラーはClaude Codeのインストール手順、ふだんのログイン手順はClaude Codeのログイン方法で扱っている。
まず、どの段階で止まったかを確認する
表示された文言を下の表で引き、該当する節へ進む。文言とその意味は公式のError referenceとTroubleshoot installation and loginに基づく。
| 止まった段階 | 表示される文言 | 主な原因 | 最初の対処 |
|---|---|---|---|
| 起動直後 | Unable to connect to Anthropic services |
初回セットアップの接続確認に失敗 | 通信・プロキシを確認 |
| ブラウザ認証 | OAuth error: Invalid code |
ログインコードの期限切れか、コピー時の欠け | Enterで再試行し、すぐ完了させる |
| ブラウザ認証 | ブラウザにログインコードが出て戻らない | WSL2・SSH・コンテナでリダイレクトが届かない | Paste code here if prompted に貼る |
| ブラウザ認証 | Failed to start OAuth callback server |
127.0.0.1 で待ち受けポートを開けない |
サンドボックスの許可か別の認証 |
| ブラウザ認証 | Authorization failed(Enterprise) |
Customロールに Claude Code の許可がない | 組織のOwnerに依頼 |
| ログイン後 | API Error: 403 Request not allowed |
サブスク無効、Consoleのロール不足、プロキシ | 契約・ロール・プロキシを確認 |
| ログイン後 | API Error: 400 ... This organization has been disabled |
有効なサブスクがあるのに出る場合は、ANTHROPIC_API_KEY がサブスクを上書き |
環境変数を解除し /status で確認 |
| ログイン後 | API Error: 401 Invalid authentication credentials |
認証情報の失効、組織やアカウントの無効化 | /status で使用中の認証を確認 |
| ログイン後 | Not logged in · Please run /login |
有効な認証情報がない | /login を実行 |
| ログイン後 | Login expired · Please run /login |
保存済みログインの更新に失敗 | /login で入り直す |
起動直後に接続エラーが出る場合
初回セットアップでは、サインインの画面を出す前に api.anthropic.com と platform.claude.com に届くかを確かめ、どちらかに失敗すると理由を表示して終了する。この段階では認証そのものはまだ始まっていないので、確認するのは通信経路だ。手順は「通信障害とサービス障害を切り分ける」の節にまとめた。
ブラウザ認証やコード入力で止まる場合
Invalid code、ブラウザにコードが出たまま戻らない、ブラウザもURLも出ない、のどれかなら、ブラウザとClaude Codeの間の受け渡しで止まっている。Claude Enterpriseでサインイン画面に Authorization failed が出る場合は、原因が組織のロール設定にあり、Claude Code側の操作では直らない。前者は「ブラウザ認証が完了しないとき」、後者は「ログイン後に403や400が出るとき」の節で扱う。
ログイン後に400や403が出る場合
Login successful と表示されたあとでリクエストが失敗するなら、ログイン自体は通っている。疑うのは、契約や組織の権限と、サブスクリプションより優先される別の認証情報だ。公式は、認証エラーのときは /status でいつでも使用中の認証情報を確認できると案内している。
原因が分からないときは認証をやり直す
表に当てはまる文言がない、または何が起きているか分からないときは、公式のTroubleshoot installation and loginが挙げる再認証から始める。
/logout、終了、再起動、再ログインの順番
先に失うものを確認しておく。/logout は保存されているすべての認証情報を消し、MCPサーバーのログインとプラグインの秘密値も含まれる。実行後はMCPサーバーの再認可と、プラグインの秘密値の再入力が必要になる。
- Claude Codeのプロンプトで
/logoutを実行し、完全にサインアウトする - Claude Codeを閉じる
claudeで起動し直し、認証を最後まで行う
/logout は初回セットアップの状態もリセットするため、次の起動はログインとセットアップの画面から始まる。ブラウザが自動で開かないときは、ターミナルで c を押すとOAuthのURLがクリップボードにコピーされるので、ブラウザに貼り付けて開く。ログインが完了すると Login successful と表示され、Enter を押すよう求められる。ここまで進めば認証は成功している。
再認証前に保存されている別の認証を確認する
やり直しの前に /status を実行し、どの認証情報が使われているかを見ておく。環境変数と apiKeyHelper は /login より優先されるため、どちらかがキーを渡している間は /login だけでは直らない。ログインとAPIキーの両方があるときは、/status が使われていない方に印を付ける。
CLAUDE_CODE_OAUTH_TOKEN も同じ注意が要る。この変数が設定されたまま /login すると、今のセッションは新しいログインに切り替わるが、新しいセッションを始めるたびに変数を読み直す。シェルの設定ファイルか設定ファイルの env ブロックから消すまで、その状態が続く。
ブラウザ認証が完了しないとき
ブラウザを経由するサインインは、ブラウザで承認した結果をClaude Codeが手元で受け取って完了する。受け取りのどこで途切れたかで、対処が変わる。根拠は公式のAuthenticationとトラブルシューティングだ。
URLや確認コードを別端末で完了する
OAuth error: Invalid code. Please make sure the full code was copied は、ログインコードの期限が切れたか、貼り付けの途中でコードが欠けたときに出る。Enterで再試行し、ブラウザが開いたらすぐに完了させる。ブラウザが開かないなら c でURL全体をコピーする。SSHのセッションではブラウザが別のマシンで開くことがあるので、ターミナルに表示されたURLを手元のブラウザで開く。
コードを貼り付けても反応しないときは、端末の別の貼り付け操作を試す。Windows Terminalなら右クリックかShift+Insertが多い。それでも駄目なら、貼り付けたコードを標準入力から読む claude auth login を使う。ネイティブのWindowsでも同じ方法が使える。
claude auth login
ブラウザ側でClaudeアカウントにメールでログインしている場合、ログインメールのリンクを別のデバイスで開くと、ログインではなく検証コードが表示される。そのコードは、ログインメールを依頼した元のデバイスで入力する。
ブラウザ側のClaudeサインインで止まる場合
ブラウザに出るClaudeアカウントのサインイン画面(メールやGoogleでのログイン)で止まる場合は、ClaudeのヘルプセンターのClaudeアカウントにログインするにある確認項目から見る。ログインメールが届かないときや「Googleで続行」がうまくいかないときの対処はそこにまとまっている。リンクやコードでログインできないときは、表示されたエラーメッセージを控え、Claudeのステータスページでサービスの中断やメンテナンスがないかも確かめる。アカウントの種類ごとのログイン方法はClaude Codeのログイン方法で扱っている。
なお、claude.aiアカウントのサインインではブラウザが claude.com のページを開いて claude.ai へ転送し、トークンの交換は platform.claude.com を通るので、VPNや社内プロキシがこれらを遮っていないかは「通信障害とサービス障害を切り分ける」の節の手順で確かめる。
WSL、SSH、コンテナでリダイレクトが戻らない場合
WSL2、SSH接続先のマシン、コンテナでClaude Codeを動かすと、多くの場合ブラウザは別のホストで開き、ログイン後のリダイレクトがClaude Codeのローカルのコールバックサーバーに届かない。このときサインイン後のブラウザにログインコードが表示されるので、ターミナルの Paste code here if prompted の欄に貼り付ければ完了する。WSL2からブラウザがまったく開かないときは、環境変数 BROWSER にWindows側のブラウザのパスを設定してから起動する(Chromeの例)。
export BROWSER="/mnt/c/Program Files/Google/Chrome/Application/chrome.exe"
claude
Failed to start OAuth callback server は別の状態だ。ブラウザがサインイン結果を返すための 127.0.0.1 の待ち受けポートを開けず、ブラウザもログインURLも出る前に止まっている。URLがないので、コードを貼る回避策は使えない。条件ごとの対処は次のとおり。
- サンドボックスの中で動かしている: ローカルポートでの待ち受けが許可されているか確認して、
/loginをやり直す - claude.aiのサブスクリプションで今すぐ使い始めたい: サインインできる別のマシンで
claude setup-tokenを実行し、表示されたトークンをこのマシンのCLAUDE_CODE_OAUTH_TOKENに設定する。このトークンの有効期間は1年 - サブスクリプションではない: Claude Consoleで発行したキーを
ANTHROPIC_API_KEYに設定する - 待ち受けできるはずの環境でも失敗が続く:
/feedbackで報告すると、環境の情報が添えられる
ログイン後に403や400が出るとき
ログインに成功しても、APIへのリクエストが認証や権限で拒まれることがある。確認する順番は、契約と組織のロール、次に別の認証情報の優先だ。根拠は公式のAuthenticationとError reference。
サブスクリプションと組織ロールを確認する
ログイン後に API Error: 403 Request not allowed が出たら、契約の種類ごとに次を確認する。
- Claude Pro/Max: claude.aiの設定画面でサブスクリプションが有効か確認する
- Anthropic Console: アカウントに「Claude Code」か「Developer」のロールがあるか確認する。ロールは管理者がConsoleのメンバー画面で割り当てる
- 社内プロキシの内側: プロキシがAPIリクエストを妨げていることがある
Claude Enterpriseで、Claude Codeからログインしたあとサインイン画面に Authorization failed と Claude Code access has not been granted for this account. Contact your administrator. が出る場合は、ロールがCustomに設定され、所属グループのカスタムロールのどれもClaude Codeを許可していない状態だ。公式は、Claude Code側で何を変えてもこのエラーは解決しないと明記している。組織のOwnerに、Claude Codeを許可するカスタムロールの付与か、User などの標準ロールへの変更を依頼し、その後 claude でログインし直す。
Your organization has disabled Claude subscription access for Claude Code も組織側の設定だ。サーバー側の設定なので、ローカルの設定、環境変数、CLIのフラグでは上書きできず、同じアカウントで /login し直しても同じエラーになる。管理者に有効化を頼むか、ConsoleのAPIキーで認証する。
ANTHROPIC_API_KEYなど別の認証が優先されていないか確認する
有効なサブスクリプションがあるのに API Error: 400 ... "This organization has been disabled" が出るのは、ANTHROPIC_API_KEY がサブスクリプションを上書きしているためだ。以前の勤務先や別プロジェクトの古いキーがシェルの設定ファイルに残っている例が多い。同じ原因で、Your ANTHROPIC_API_KEY belongs to a disabled organization で始まる文言が出ることもある。.env ファイルから読み込まれたキーも使われる。起動時の確認でキーを承認していると、Claude Codeはサブスクリプションよりキーを使い、-p の非対話モードではキーがあれば常にそちらを使う。
今のシェルで解除してから起動し直す。macOSとLinuxは次のとおり。
unset ANTHROPIC_API_KEY
claude
WindowsのPowerShellでは次のとおり。
Remove-Item Env:ANTHROPIC_API_KEY
claude
恒久的に消すには、~/.zshrc、~/.bashrc、~/.profile にある export ANTHROPIC_API_KEY=... の行を削除する。Windowsでは $PROFILE とユーザー環境変数を確認する。最後に /status で、使われている認証方式がサブスクリプションになったかを確かめる。
認証情報が複数あるときは、公式の認証ドキュメントにある次の順で一つが選ばれる。
- クラウドプロバイダー(
CLAUDE_CODE_USE_BEDROCK、CLAUDE_CODE_USE_VERTEX、CLAUDE_CODE_USE_FOUNDRYを設定しているとき) ANTHROPIC_AUTH_TOKENANTHROPIC_API_KEYapiKeyHelperスクリプトの出力CLAUDE_CODE_OAUTH_TOKEN- Anthropicのプロファイルとフェデレーションの認証情報(
ant auth loginで作ったプロファイルは、ANTHROPIC_PROFILEで指定したときだけこの位置で、それ以外は/loginより下) /loginで保存したサブスクリプションのOAuth認証情報
Pro、Max、Team、Enterpriseの既定は7番目なので、1〜6のどれかが有効なままだと、そちらが使われる。ただし、サインイン済みのClaude apps gatewayのセッションはこの一覧の外にあり、Amazon Bedrockなどと同じプロバイダーの選択として扱われ、それらより優先される。ANTHROPIC_API_KEY を使うかどうかは対話モードで一度だけ聞かれて記憶され、後から変えるには /config の「Use custom API key」を使う。この項目はキーが環境に設定されている間だけ表示される。APIキーの管理はClaude CodeのAPIキーの使い方で扱っている。
API Error: 401 Invalid authentication credentials は、認証情報が最近失効した、組織が無効化されたかアクセスを外した、アカウント自体が無効になった、のいずれかで出る。期限切れが原因ではない。保存済みのログインか承認済みの ANTHROPIC_API_KEY かで対処が違うので、まず /status を見る。ログインだけが表示されているなら /login を一度実行し、同じアカウントで同じエラーが戻るなら、組織の管理者にアクセスの復旧を依頼する。
毎回ログインを求められるとき
一度ログインできても次のセッションでまた求められるなら、ログインを保存できていないか、期限が切れて更新できていない。公式のAuthenticationとTroubleshoot installation and loginで、二つを切り分ける。
macOSのKeychainと認証情報ファイルを確認する
macOSでは、認証情報をログインキーチェーンに保存する。SSHセッションでキーチェーンがロックされている、キーチェーンのパスワードがアカウントのパスワードとずれている、などで書き込みを拒否されると、平文の ~/.claude/.credentials.json に保存する。Keychainを書き込める状態に戻す公式の手順は次のとおり。
claude doctorを実行する。書き込みが拒否されていればmacOS Keychain is not writableで始まる警告が出る。警告がなければKeychainは書き込める状態なので、2と3は飛ばしてよい- 下の
securityコマンドでロックを解除し、キーチェーンのパスワードを入力して、もう一度claude doctorを実行する - 公式の手順では、解除で直らなければ次にパスワードの再同期へ進む。キーチェーンアクセスで
loginキーチェーンを選び、公式表記で「Edit > Change Password for Keychain “login”」にあたるメニューで、アカウントのパスワードと同期し直す
claude doctor
security unlock-keychain ~/Library/Keychains/login.keychain-db
Keychainが書き込める状態に戻れば、Claude Codeは次に認証情報を書き込むときにログインをKeychainへ戻す。今すぐ戻したいときは /logout してから /login する。このときもMCPサーバーのログインとプラグインの秘密値が消えるので、後で再設定する。保存先は、Linuxが ~/.claude/.credentials.json、Windowsが %USERPROFILE%\.claude\.credentials.json だ。
期限切れの警告と端末時刻を確認する
セッションの後でまたログインを求められるのは、OAuthトークンの期限切れの可能性がある。/login で認証し直し、頻繁に起きるならパソコンの時計が正確か確かめる。トークンの検証は正しい時刻に依存するためだ。なお v2.1.211 より前は、スリープからの復帰で保存済みのログインが失効し、開いているすべてのセッションが一斉にログインを求めることがあった。
/login で作ったログインの期限が3日以内に迫ると、起動時に Your login expires in 3 days · run /login to renew と表示される。この警告はリクエストを止めず、実際に期限が切れるまで認証は使えるが、早めに /login で更新しておく。期限が切れて更新もできなくなると、各リクエストが Login expired · Please run /login で止まる。v2.1.210以降は、この状態を /status の Login の行でリクエストが失敗する前に確かめられる。この行は、保存済みのclaude.aiログインが使用中の認証のときだけ表示される。
通信障害とサービス障害を切り分ける
接続エラーには、手元のネットワークが原因の場合と、Anthropic側のサービスが止まっている場合がある。先にサービスの状態を見てから、手元の経路を確認する。根拠は公式のError referenceとEnterprise network configurationだ。
公式ステータスを確認する
サービス側の状態はClaudeのステータスページで確認できる。Claude Codeでも、Anthropic APIの API Error: 500 のエラー文は If it persists, check https://status.claude.com. で終わる。この末尾の案内先はプロバイダーによって変わるので、Bedrockなどを使っているならメッセージに示されたステータスページを見る。公式の対処も、status.claude.comかメッセージに示されたプロバイダーのステータスページでインシデントを確かめることを挙げている。Claudeのヘルプセンターは、ステータスページにシステム全体のインシデントが出ている場合、サービスが復旧するまで待ってから次の対処を試すよう勧めている。
プロキシ、許可リスト、接続先を確認する
起動直後に Unable to connect to Anthropic services が出て終了する場合は、まず同じシェルからAPIに届くかを確かめる。
curl -I https://api.anthropic.com
PowerShellでは、組み込みの別名 Invoke-WebRequest を避けるため curl.exe -I https://api.anthropic.com を使う。届かない原因としては、インターネットに出られない、VPNが api.anthropic.com を遮断している、必要な社内プロキシが未設定、などが挙げられている。社内プロキシの内側なら、起動前に HTTPS_PROXY を設定する。エラー文にプロキシの変数名が出ていれば、その値が正しいプロキシを指しているかを確かめ、文中のホストへのHTTPS接続を許可するようネットワーク担当者に依頼する。
許可リストに入れる接続先は、公式のネットワーク設定に一覧がある。ログインに関わるのは主に次の4つだ。
| 接続先 | 用途 |
|---|---|
api.anthropic.com |
Claude APIへのリクエスト |
claude.ai |
claude.aiアカウントの認証 |
claude.com |
サインイン時にブラウザで開くページ(claude.ai へ転送) |
platform.claude.com |
Consoleアカウントの認証。claude.aiアカウントのトークンの発行・更新・失効もここを通る |
curl は通るのにClaude Codeが失敗するなら、echo $ANTHROPIC_BASE_URL(PowerShellでは echo $env:ANTHROPIC_BASE_URL)で、古い ANTHROPIC_BASE_URL が残っていないか確かめる。/login 中に SSL certificate error (UNABLE_TO_GET_ISSUER_CERT_LOCALLY) が出て、社内プロキシやTLSを検査するファイアウォールの内側にいるなら、NODE_EXTRA_CA_CERTS に社内のCA証明書のパスを設定するか、*.anthropic.com の許可をIT部門に依頼する。ネットワークが開いているのに失敗が続く場合は、Claude Codeが利用できない国からの接続である可能性もある。通信エラー全般はClaude Codeのネットワークエラーの対処にまとめている。
環境や目的が違う場合は既存記事へ進む
ログインの困りごとでも、使っている環境や知りたいことによっては別の記事の方が早い。VS Codeでのサインインの記述は、公式のUse Claude Code in VS Codeに基づく。
VS Codeと通常のログイン手順
VS Code拡張は、パネルを初めて開くとサインイン画面を出し、ブラウザで承認すると完了する。シェルに ANTHROPIC_API_KEY を設定しているのにサインインを求められるなら、VS Codeがシェルの環境を引き継いでいない可能性があり、ターミナルから code . で起動し直す。拡張の導入と設定はClaude CodeのVS Code拡張の使い方、CLI・VS Code・アプリ別のログイン手順はClaude Codeのログイン方法を参照してほしい。
インストールとバージョン
claude が起動しない、コマンドが見つからない、といったサインイン以前の問題はClaude Codeのインストール手順で扱っている。
Bedrock、Vertex AI、企業向け認証
組織でAmazon Bedrock、Google Cloud(Vertex AI)、Microsoft Foundryを使う場合は、起動前に必要な環境変数を設定すればブラウザでのログインは要らない。資格情報を読み込めないエラーは、今のシェルでクラウドのCLIが未認証であることが多い。設定はBedrock連携とVertex AI連携の記事で扱っている。
料金とレート制限
ログインはできるが使用量や上限で止まる場合は、プランごとの違いをClaude Codeの料金、レート制限の対処をClaude Codeのレート制限で確認してほしい。
API Error: Repeated 529 Overloaded errors は別物だ。公式は、APIが全利用者に対して一時的に容量を超えている状態と説明し、529は利用上限ではなく使用量にも数えられないとしている。status.claude.comかメッセージに示されたステータスページを確認し、数分おいて再試行する。エラー文全般の切り分けはClaude Codeのエラー対処のまとめにまとめている。
解決しないときに添える情報と相談先
ここまでで直らなければ、診断結果とエラー文をそろえて報告する。公式のTroubleshoot installation and loginは、次の窓口を挙げている。
claude --versionが動くなら、claude doctorで自動診断のレポートを出す- セッションを開始できるなら、Claude Codeの中で
/feedbackから問題を報告する - GitHubのリポジトリで既知の問題を探し、新しく報告するならOS、実行したインストールコマンド、エラー出力の全文を添える
- ログインのループ、サブスクリプションが認識されない、組織が無効化されている、といったアカウント側の問題は、claude.ai(Consoleの利用者はplatform.claude.com)にサインインし、左下のイニシャルから「Get help」を選んでサポートに連絡する
報告の前に、止まった段階、表示された文言の全文、/status が示す使用中の認証方式、実行環境(OS、WSL2・SSH・コンテナかどうか、社内プロキシの有無)を控えておくと、この記事の表のどこに当たるかも伝わる。
エラー文の表記やバージョンごとの挙動は更新されることがある。この記事は2026年10月19日に照合した公式ドキュメント(Troubleshoot installation and login、Authentication、Error reference、Enterprise network configuration、Claudeアカウントにログインする)に基づく。ログイン以外のエラーはClaude Codeのエラー対処のまとめを参照してほしい。