InvalidClientTokenId: The security token included in the request is invalid
AWS認証情報が無効な場合に発生するエラー
概要
InvalidClientTokenId: The security token included in the request is invalid は、AWSのAPIリクエストに含まれる認証情報(アクセスキー)が無効な場合に発生するエラーです。
エラーメッセージ
An error occurred (InvalidClientTokenId) when calling the GetCallerIdentity operation: The security token included in the request is invalid.
InvalidClientTokenId: The security token included in the request is invalid.
An error occurred (SignatureDoesNotMatch) when calling the ListBuckets operation: The request signature we calculated does not match the signature you provided.
原因
- アクセスキーが無効: 削除または無効化されたキー
- 認証情報の入力ミス: アクセスキーID またはシークレットキーの誤り
- 認証情報が設定されていない: 環境変数やcredentialsファイルがない
- 間違ったプロファイル: 異なるプロファイルを使用
- 一時的な認証情報の期限切れ: セッショントークンが期限切れ
解決策
1. 認証情報の確認
| |
2. 認証情報の再設定
| |
3. 認証情報ファイルの確認
| |
| |
| |
4. 環境変数の確認
| |
5. 新しいアクセスキーの作成
- AWS Console にログイン
- IAM → ユーザー → 対象ユーザー
- セキュリティ認証情報 タブ
- アクセスキー → アクセスキーを作成
- 新しいキーをダウンロード・保存
| |
6. IAMロールの使用(推奨)
| |
7. 一時的な認証情報(STS)
| |
8. GitHub Actions での設定
| |
9. Docker/Kubernetes での設定
| |
| |
SDK での設定
| |
| |
デバッグのコツ
認証情報の優先順位
- コード内で明示的に指定
- 環境変数
- 共有認証情報ファイル(~/.aws/credentials)
- IAM ロール(EC2, Lambda等)
デバッグ出力
| |
関連エラー
AWS の他のエラー
AccessDeniedException: User is not authorized
ECS CannotPullContainerError
AccessDenied: User is not authorized to perform sts:AssumeRole
IncompleteSignature: The request signature we calculated does not match
MissingAuthenticationToken: Missing Authentication Token
SignatureDoesNotMatch: The request signature we calculated does not match
この記事は役に立ちましたか?