AWS認定試験 Developer - Associate(予想問題) その9

問題 21 / 65

ブラウザ上でユーザーが設計図をアップロードおよび閲覧するシングルページアプリケーションを構築している。要件は各ユーザーが自身のファイルにのみ直接S3からアクセスできることとサーバー側でファイルをプロキシしないことである。最も適した実装はどれか?

Amazon Cognito Identity Pool を使って各ユーザーに一時的なAWS認証情報を与え、IAMポリシーでリソースを "arn:aws:s3:::your-bucket/private/${cognito-identity.amazonaws.com:sub}/*" のように制限する
バックエンドが毎回プリサインドURLを発行してブラウザへ返しユーザーはそれを使ってS3へアクセスさせる
S3バケットポリシーで Cognito User Pool のユーザー属性を参照してアクセスを制御する
CloudFront と Lambda@Edge を使ってリクエスト中にユーザーの認可を検証してS3から配信する
API Gateway と Lambda を用いて全てのファイルアクセスをプロキシして認可を行う

当サイトでは、ユーザー体験の向上を目的としてCookieを使用しています。サイトの利用を継続することで、Cookieの使用に同意したものとみなされます。