模擬問題集SAP-C02練習問題 14

SAP-C02 練習問題 14

AWS Solutions Architect – Professional・ワークロードの移行とモダナイゼーションの加速・無料公開(全 200 問中 15 問を無料公開中)

問題
ある企業は、オンプレミスでホストしているアプリケーションからメタデータを収集するサービスを使用しています。テレビやインターネットラジオなどのコンシューマーデバイスがこれらのアプリケーションにアクセスします。多くの古いデバイスは特定の HTTP ヘッダーをサポートしておらず、レスポンスにこれらのヘッダーが含まれているとエラーを起こします。同社は、User-Agent ヘッダーによって識別した古いデバイスに送信するレスポンスから、サポートされていないヘッダーを削除するように、オンプレミスのロードバランサーを構成しています。 同社は、このサービスを AWS に移行し、サーバーレス技術を採用しつつ、古いデバイスをサポートし続ける能力を保持したいと考えています。同社はすでにアプリケーションを一連の AWS Lambda 関数に移行済みです。 この要件を満たすソリューションはどれですか?

選択肢と解説

  • メタデータサービス用に Amazon CloudFront ディストリビューションを作成する。Application Load Balancer(ALB)を作成する。CloudFront ディストリビューションがリクエストを ALB に転送するように構成する。ALB が各タイプのリクエストに対して正しい Lambda 関数を呼び出すように構成する。User-Agent ヘッダーの値に基づいて問題のあるヘッダーを削除する CloudFront 関数(CloudFront Function)を作成する。
  • 2
    メタデータサービス用に Amazon API Gateway REST API を作成する。API Gateway が各タイプのリクエストに対して正しい Lambda 関数を呼び出すように構成する。User-Agent ヘッダーの値に基づいて問題のあるヘッダーを削除するように、デフォルトのゲートウェイレスポンス(gateway responses)を変更する。
  • 3
    メタデータサービス用に Amazon API Gateway HTTP API を作成する。API Gateway が各タイプのリクエストに対して正しい Lambda 関数を呼び出すように構成する。User-Agent の値に基づいて問題のあるヘッダーを削除するレスポンスマッピングテンプレートを作成する。そのレスポンスデータマッピングを HTTP API に関連付ける。
  • 4
    メタデータサービス用に Amazon CloudFront ディストリビューションを作成する。Application Load Balancer(ALB)を作成する。CloudFront ディストリビューションがリクエストを ALB に転送するように構成する。ALB が各タイプのリクエストに対して正しい Lambda 関数を呼び出すように構成する。viewer リクエストにおいて User-Agent ヘッダーの値に基づいて問題のあるヘッダーを削除する Lambda@Edge 関数を作成する。

解説

【正解】A

【0からの解説】
要件は「サーバーレスで」「User-Agent によって識別した古いデバイス向けのレスポンスから、特定の HTTP ヘッダーを削除する」ことです。

CloudFront には軽量・低レイテンシーで HTTP リクエスト/レスポンスを操作できる CloudFront Functions があり、ビューワーリクエスト/ビューワーレスポンスのイベントでヘッダーの追加・削除・書き換えができます。User-Agent を見て、古いデバイスへのレスポンスから問題のあるヘッダーを削る、というまさにこの用途に最適です。CloudFront → ALB → Lambda の構成でサーバーレスにアプリを動かしつつ、エッジでヘッダー整形を行えます(選択肢 A)。

【誤りの選択肢】
B:API Gateway の「ゲートウェイレスポンス(gateway responses)」は、認証失敗やスロットリングなど API Gateway 自身が生成するエラーレスポンスをカスタマイズする機能で、User-Agent に応じて通常レスポンスから任意のヘッダーを動的に削除する用途には設計されていません。
C:HTTP API は機能が絞られた軽量版で、REST API のようなレスポンスマッピングテンプレート(VTL による変換)をサポートしていません。「レスポンスマッピングテンプレートを作成して関連付ける」という構成自体が成立しません。
D:Lambda@Edge でヘッダー操作自体は可能ですが、本選択肢は「viewer リクエスト」イベントで処理するとしています。削除したいのは「レスポンス」のヘッダーなので、本来は viewer レスポンス(または origin レスポンス)で処理すべきで、イベントの選択が誤りです。また単純なヘッダー削除なら、より軽量・低コストな CloudFront Functions(A)が適切です。

【参考】
CloudFront Functions
CloudFront でのレスポンスヘッダーの操作
← 練習問題 13練習問題 15
SAP-C02 の模擬問題集は全 200

本番形式の練習テスト 4 回を、試験モード/演習モードで受験できます。 全問に解説付き、ドメイン別の弱点分析にも対応。模試プラン(月額 ¥980)からご利用いただけます。

SAP-C02 の模試を受ける料金プランを見る

SAP-C02 の無料公開問題

問題 1問題 2問題 3問題 4問題 5問題 6問題 7問題 8問題 9問題 10問題 11問題 12問題 13問題 14問題 15