模擬問題集SOA-C03練習問題 2

SOA-C03 練習問題 2

AWS SysOps Administrator – Associate・ネットワークとコンテンツ配信・無料公開(全 100 問中 15 問を無料公開中)

問題
ある企業の Web サイトは Amazon EC2 の Linux インスタンス上で稼働しています。この Web サイトは、Amazon S3 バケットから PDF ファイルを配信する必要があります。S3 バケットへのすべてのパブリックアクセスは、アカウントレベルでブロックされています。企業は、Web サイトの利用者が PDF ファイルをダウンロードできるようにする必要があります。最も少ない管理作業でこの要件を満たすソリューションはどれですか。

選択肢と解説

  • 1
    s3:list* と s3:get* の権限を許可するポリシーを持つ IAM ロールを作成する。そのロールを EC2 インスタンスに割り当てる。従業員を割り当てて、要求された PDF ファイルを EC2 インスタンスにダウンロードし、Web サイト利用者に配布させる。ローカルファイルを定期的に削除する AWS Lambda 関数を作成する。
  • S3 バケットを指すオリジンアクセスコントロール(OAC)を使用する Amazon CloudFront ディストリビューションを作成する。CloudFront ディストリビューションからの接続を許可するバケットポリシーをバケットに適用する。利用者が PDF ファイルを要求したときに、ディストリビューション URL とオブジェクトパスを含むダウンロード URL を提供する。
  • 3
    ソース S3 バケットの S3 バケット許可を変更してパブリックアクセスを許可する。利用者が PDF ファイルを要求したときに従業員が PDF ファイルの URL を提供する。
  • 4
    IAM インスタンスプロファイルを持つ EC2 インスタンスをパブリックサブネットにデプロイする。EC2 インスタンスからの署名付き URL を使用して、Web サイト利用者に S3 バケットへの一時的なアクセスを提供する。

解説

【正解】B

【0からの解説】
アカウントレベルでパブリックアクセスがブロックされている S3 バケットの中身を、Web サイト利用者に配信したい場合の AWS 標準パターンが「CloudFront + オリジンアクセスコントロール(OAC)」です。CloudFront をバケットの前に置き、バケットポリシーで「この CloudFront ディストリビューションからのアクセスだけ許可する」と設定します。これにより、S3 のパブリックアクセスはブロックしたまま、利用者は CloudFront 経由でファイルをダウンロードできます。一度設定すれば運用は自動化され、サーバー(EC2)の管理も不要なので、管理作業が最も少なくなります。

【誤りの選択肢】
A:従業員が手作業で PDF を EC2 にダウンロードして利用者に配布する、という運用は管理作業が極めて大きく、自動化されていません。最少労力という要件に反します。
B はサーバーレスかつ AWS 推奨の構成で、パブリックアクセスブロックを維持したまま配信でき、管理作業が最小です。
C:パブリックアクセスを許可するのは要件(アカウントレベルでブロック)に明確に反しており、セキュリティ上も不適切です。
D:EC2 と署名付き URL の仕組みを自前で構築・運用する必要があり、サーバー管理・コードの保守が発生します。CloudFront + OAC に比べて管理作業が多くなります。

※補足:Most Voted は D ですが、D は EC2 サーバーの構築・運用が伴い管理作業が大きいのに対し、CloudFront + OAC(B)はパブリックアクセスブロックを維持しつつサーバーレスで配信でき、AWS が公式に推奨する「最少労力」の構成のため B を正解とします。

【参考】
CloudFront のオリジンアクセスコントロール(OAC)による S3 オリジンへのアクセス制限
Amazon S3 のブロックパブリックアクセス
← 練習問題 1練習問題 3
SOA-C03 の模擬問題集は全 100

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

SOA-C03 の模試を受ける料金プランを見る

SOA-C03 の無料公開問題

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