AWS

APIでGETリクエスト時にCloudfrontで403エラー

APIリクエスト時にCloudFrontでエラーとなった

Route53 ― CloudFront — ALB — ECS(Fargate)構成のアプリケーション開発中、バックエンドエンジニアより下記連絡が来ました。

「APIでGETリクエストをしたが、Cloudfrontエラーが出ている」と。

ブラウザ表示は下記。CloudFront構成ではよく見る、CloudFrontのエラーです。

403error

下記のようなリクエストを送ったようです。

curl --location --request GET 'https://xxx.co.jp/api' \

--header 'Content-Type: application/json' \

--data-raw '{

    "email": "e-mail address"

}'

調査結果

Cloudfrontのビューワーの変更や色々試しましたが改善しませんでした。

すると、公式に下記のようにありました。

GET requests that include a body

If a viewer GET request includes a body, CloudFront returns an HTTP status code 403 (Forbidden) to the viewer.

ビューアのGETリクエストに本文が含まれている場合、CloudFront は HTTP ステータス コード 403 (Forbidden) をビューアに返す仕様のようです。

▼公式サイトは下記

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorCustomOrigin.html

確認

公式サイト通り、bodyを外して確認してみました。

curl --location --request GET 'https://xxx.co.jp/api/user/env' \

無事APIが返ってきました。

AWSの効果的な学習方法は?

aws study

最後に、AWSの効果的な学習方法をご紹介します。

自学自習はUdemy講座

オンラインプラットフォームであるUdemyは安価で手軽にAWSの学習が可能です。

しかし、上記で紹介したような実際のAWSエンジニアが実施している構築スキルまでは教えてくれません。初心者~中級者向けの講座が多くなっています。

大きなチャンスのためのビッグセール.

私も受講した、初心者向けAWS講座を下記記事でまとめています。ご参考ください。

1人で学習が難しい場合はオンラインレッスン

1人で学習が難しい場合はオンラインレッスンがおすすめです。

最近では、AWS講座を提供するオンラインレッスンも増えてきました。

料金は高くなりますが、現役エンジニアからAWSについて学ぶことができます。

本ブログ執筆者のメンタリングも受付中

本ブログを執筆している[KAITech]もメンタリングを受け付けています。
オンラインレッスンは高くて手が出せないという方は私までお気軽にご相談ください。
下記から承っております。

  • この記事を書いた人

KAITech

大企業/中小企業/ベンチャー企業を経験
AWS/ネットワークのエンジニア
記事執筆やメンタリング等、仕事の依頼はコチラから
https://www.kaitech-media.biz/work/

-AWS