過去問ドリル

DVA-C02:AWS Certified Developer - Associate AWS サービスを用いた開発 問3

AWS サービスを用いた開発/AWS でホストされるアプリのコード開発

REST API で、不正な形式のリクエストをバックエンドに届く前に拒否し、クライアントごとのリクエスト数も制限したいと考えています。最も適切なのはどれですか。

当サイトのオリジナル問題(DVA-C02:AWS Certified Developer - Associateの出題範囲「AWS サービスを用いた開発」に対応。実際の試験問題ではありません)

正解:C

解説

Amazon API Gateway には、リクエストの形式(必須パラメーターや JSON スキーマ)を検証して不正なリクエストをバックエンドに届く前に拒否する機能と、使用量プランと API キーによるスロットリング(レート制限・バースト制限)があります。これにより、バックエンドの Lambda などに負荷をかける前に、入口で不正リクエストや過剰な流量を抑えられます。

選択肢ごとの解説

  • A誤り。すべてをバックエンドで検証すると、不正リクエストでもバックエンドが起動してコストと負荷がかかります。
  • B誤り。CloudFront は配信・キャッシュが主目的で、API のリクエストスキーマ検証や使用量プランによる流量制御の役割は担いません。
  • C正しい。API Gateway のリクエスト検証とスロットリングで、不正リクエストを手前で拒否し、クライアントごとの流量を制限できます。
  • D誤り。検証も流量制御も行わないのは、セキュリティと可用性の面で不適切です。
DVA-C02:AWS Certified Developer - Associateの問題を演習モードで解く