API Gateway REST API エンドポイントからの 403「Missing Authentication Token」エラーをトラブルシューティングするにはどうすればよいですか?
最終更新日: 2021 年 10 月 6 日
Amazon API Gateway REST API を呼び出そうとすると、403「Missing Authentication Token」というエラーメッセージが表示され続けます。このエラーのトラブルシューティング方法を教えてください。
簡単な説明
API Gateway REST API エンドポイントが、Missing Authentication Tokenエラーを返すのは、次の 2 つの理由からです。
- API リクエストが、存在しないメソッドまたはリソースに対して行われたため。
- API メソッドで AWS Identity and Access Management (IAM) 認証が有効になっているのに、API リクエストが署名されていないため。
このエラーのトラブルシューティングを行うには、次の手順を実行します。
解決方法
API Gateway リソースパスにメソッドとリソースが設定されていることを確認
「API Gateway コンソールを使用してメソッドをセットアップする」の手順に従います。詳細については、API リソースの設定を参照してください。
重要: 変更を有効にするには、API をデプロイする必要があります。
プロキシリソース統合を持つ API の場合
メソッドリクエストがルートリソースに送信された場合は、ルートリソースの下にメソッドが設定されていることを確認します。
API メソッドで IAM 認証が有効になっている場合は、API リクエストが署名されていることを確認
詳細については、リクエストに署名するを参照してください。
REST API エンドポイントに正しい HTTP メソッドリクエストを送信していることを確認
REST API エンドポイントをウェブブラウザからテストすると、自動的に GET HTTP メソッドリクエストが送信されます。
POST HTTP メソッドをテストするには、別の HTTP クライアントを使用します。例えば、Postman や curl を使用できます。
POST HTTP メソッドリクエストを使用する curl コマンドの例
$ curl -X POST <API URL> -d <request body>