原文(日本語)
3分のタイムアウトを追加することで、AWS認証更新が無期限にハングする問題を修正しました。
原文(英語)
Fixed AWS auth refresh hanging indefinitely by adding a 3-minute timeout
概要
Claude Code 2.1.43では、AWS認証の更新処理が無期限に待機してしまう問題が修正されました。3分のタイムアウトが追加されたことで、認証更新プロセスが応答しなくなった場合でも自動的に処理が中断され、ユーザーに適切なエラーメッセージが表示されるようになりました。
基本的な使い方
この修正はAWS Bedrock経由でClaude Codeを使用している場合に自動的に適用されます。
bash
# AWS SSOでログイン
aws sso login --profile my-profile
# Claude Codeを起動(AWS認証を使用)
claude
# 認証が3分以内に完了しない場合、タイムアウトエラーが表示されます実践例
AWS SSO認証の設定
~/.claude/settings.json でAWS認証を設定している場合:
json
{
"awsAuthRefresh": "aws sso login --profile my-bedrock-profile",
"env": {
"AWS_PROFILE": "my-bedrock-profile",
"AWS_REGION": "us-west-2",
"CLAUDE_CODE_USE_BEDROCK": "1"
}
}タイムアウト前の動作(2.1.42以前)
以前のバージョンでは、AWS認証更新が失敗すると、Claude Codeが応答しなくなり、手動でプロセスを終了する必要がありました:
bash
# 認証更新がハング(応答なし)
# Ctrl+C で強制終了が必要
^Cタイムアウト後の動作(2.1.43以降)
現在は、3分後に自動的にタイムアウトし、明確なエラーメッセージが表示されます:
bash
# 3分後に自動的にタイムアウト
Error: AWS authentication refresh timed out after 3 minutes.
Please check your AWS credentials and try again.
# 手動で再認証
aws sso login --profile my-bedrock-profileGitHub Codespaces環境での利用
GitHub Codespaces等でSAML認証を使用している場合も、タイムアウトにより適切なエラーハンドリングが可能になりました:
bash
# Codespacesで30分ごとに認証トークンが期限切れになる場合
# タイムアウト後、明確なエラーが表示されます
Error: AWS authentication refresh timed out.
Security token expired. Please refresh your AWS credentials.長時間実行タスクでの対応
長時間実行されるタスク中に認証が必要になった場合:
bash
# 大規模なコード生成タスクを実行中
claude "Generate complete API documentation"
# 途中で認証更新が必要になった場合、
# タイムアウトにより適切にエラーが通知されます注意点
- タイムアウト時間は3分固定: 現在、タイムアウト時間はカスタマイズできません
- AWS SSO セッション時間の設定: AWS側でセッション時間を12時間に設定することで、頻繁な再認証を回避できます
- awsAuthRefresh設定の注意:
awsAuthRefresh設定により頻繁なトークン更新ループが発生する既知のバグがあります。問題がある場合は一時的にこの設定を無効化してください - 手動再認証が必要な場合: タイムアウト後は、
aws sso loginで手動再認証が必要です
関連情報
- Claude Code Settings - 公式ドキュメント
- AWS SSO Credentials Expire Issue - GitHub Issue #596
- AWS Credentials Refresh in Codespaces - GitHub Issue #5737
- Claude Code Timeout Configuration Guide - GitHub Issue #5615
- Guidance for Claude Code with Amazon Bedrock
- AWS Authentication Best Practices
- Claude Code Deployment with Amazon Bedrock