IncompleteSignature: The request signature we calculated does not match
概要
AWSのAPIリクエストの署名が不完全または正しく計算されていない場合に発生するエラーです。シークレットアクセスキーの誤り、タイムスタンプのずれ、リージョン指定の不一致などが原因です。
エラーメッセージ
IncompleteSignature: The request signature we calculated does not match the signature you provided.
An error occurred (IncompleteSignature) when calling the ListBuckets operation: The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method.
原因
このエラーは以下の原因で発生します:
- シークレットアクセスキーの誤り: キーのコピーミスや一部欠落
- システム時刻のずれ: サーバーの時刻がずれている
- リージョンの不一致: 署名時のリージョンとリクエスト先が異なる
- 特殊文字のエスケープ問題: シークレットキーの特殊文字が正しく処理されていない
- 署名バージョンの問題: Signature Version 2/4 の不一致
解決策
1. シークレットアクセスキーを確認
| |
2. システム時刻を同期
| |
3. リージョンを正しく指定
| |
4. 環境変数を確認
| |
5. SDK での対処
| |
| |
よくある間違い
- シークレットキーの最後の文字が欠けている
- コンテナやサーバーレス環境で時刻が同期されていない
- S3のグローバルエンドポイントを使用してリージョン固有のバケットにアクセス
- プロキシ経由でリクエストが改変されている
デバッグ方法
| |
関連エラー
参考リンク
関連エラー
AWS の他のエラー
AccessDeniedException: User is not authorized
ECS CannotPullContainerError
AccessDenied: User is not authorized to perform sts:AssumeRole
MissingAuthenticationToken: Missing Authentication Token
SignatureDoesNotMatch: The request signature we calculated does not match
UnrecognizedClientException: The security token included in the request is invalid
この記事は役に立ちましたか?