
Ultimate access to all questions.
A developer is working on an application that requires user-specific file upload and download features. This application utilizes Amazon Cognito user pools and Cognito identity pools to ensure secure access, alongside Amazon S3 for file storage. The goal is to allow files ranging from 5 KB to 500 MB in size to be securely saved and retrieved by authorized users, ensuring that users can only access their own files.
What would be the most efficient solution to achieve these requirements?
A
Use CloudFront Lambda@Edge to validate that the given file is uploaded to S3 and downloaded from S3 only by the authorized user
B
Integrate Amazon API Gateway with a Lambda function that validates that the given file is uploaded to S3 and downloaded from S3 only by the authorized user
C
Use S3 Event Notifications to trigger a Lambda function that validates that the given file is uploaded and downloaded only by the authorized user
D
Leverage an IAM policy with the Amazon Cognito identity prefix to restrict users to use their own folders in Amazon S3