Missing Authentication Token
TL;DR — "Missing Authentication Token" は、リクエストが 認証情報を持たなかった**、または AWS が認識しないエンドポイント/メソッド に到達したことを意味します。存在しないパスやサポートされない HTTP メソッドへのリクエストは、404 ではなくこれを返します。DynamoDB では、ほぼ必ず 誤ったエンドポイント URL か、署名されなかったリクエストです。**
意味
{"message":"Missing Authentication Token"}AWS の SigV4 トラブルシューティングガイドは最初の原因について率直です: API リクエストが署名されていない場合、Missing Authentication Token を受け取ることがあります。直感に反して、同じメッセージは、パスや HTTP メソッドがどのルートにも一致しないとき、API Gateway スタイルのエンドポイントからも返ってきます(HTTP 403)。AWS はルーティングできないリクエストで認証を探し、「見つからない」ではなく欠落したトークンを報告します。DynamoDB 自体が、認可ヘッダーが欠落または不正な形式のリクエストを拒否するとき、例外は MissingAuthenticationTokenException です — HTTP 400、リトライ不可、メッセージは "Request must contain a valid (registered) AWS Access Key ID."。
発生する理由
- 誤ったエンドポイント URL — サービスルートへの適切に署名された SDK 呼び出しではなく、ブラウザや素の GET で
https://dynamodb.<region>.amazonaws.com/some/pathにアクセスしている。 - 署名されていないリクエスト — SigV4 の
Authorizationヘッダーのない生のcurl/fetch(SDK は通常それを追加します)。 - 誤った HTTP メソッド — DynamoDB の API は、操作を指定する
X-Amz-Targetヘッダーとともに/へのPOSTを期待します。他の形状は署名された操作として認識されません。 - タイプミスのカスタムエンドポイント — DynamoDB サービスに対応しない URL を指している。
- アクセスキーが設定されていない DynamoDB Local — SDK はローカルでもアクセスキーとリージョン値の設定を要求します(任意の値が機能します。Local はデータベースファイルの命名にのみ使用します)。
修正方法
- 生の HTTP 呼び出しではなく AWS SDK を使います。 SDK に正しい
X-Amz-Targetで署名済みのPOSTを組み立てさせ、URL を手作りしないでください。 - パスではなく サービスルート(
https://dynamodb.<region>.amazonaws.com)を指し、クライアントのリージョンを一致させます。 - SDK が実際にリクエストに署名するよう 認証情報が設定されていることを確認します(環境変数、プロファイル、またはロール)。
- DynamoDB Local では、エンドポイントを
http://localhost:8000に設定し、ダミーのアクセスキー/シークレット(英数字のみ)を設定して SDK が通常どおり署名するようにします。Local はそれらを検証しません。
関連するエラー
- Unable to locate credentials — SDK が認証情報をまったく見つけられない。
- The security token included in the request is invalid — 認証情報は存在するが拒否された。
- Could not connect to the endpoint URL — 不正な形式または到達不能なエンドポイント。
- Learn: Connect to DynamoDB Local & LocalStack
References
- Troubleshoot Signature Version 4 signing for AWS API requests — IAM User Guide
- Error handling with DynamoDB — Amazon DynamoDB Developer Guide
- Create a signed AWS API request — IAM User Guide
- DynamoDB local usage notes — Amazon DynamoDB Developer Guide
最終検証日 2026-07-13、上記にリンクした公式 AWS ドキュメントに照らして確認しました。