exam questions

Exam AWS Certified Solutions Architect - Professional All Questions

View all questions & answers for the AWS Certified Solutions Architect - Professional exam

Exam AWS Certified Solutions Architect - Professional topic 1 question 528 discussion

A Solutions Architect is redesigning an image-viewing and messaging platform to be delivered as SaaS. Currently, there is a farm of virtual desktop infrastructure
(VDI) that runs a desktop image-viewing application and a desktop messaging application. Both applications use a shared database to manage user accounts and sharing. Users log in from a web portal that launches the applications and streams the view of the application on the user's machine. The Development Operations team wants to move away from using VDI and wants to rewrite the application.
What is the MOST cost-effective architecture that offers both security and ease of management?

  • A. Run a website from an Amazon S3 bucket with a separate S3 bucket for images and messaging data. Call AWS Lambda functions from embedded JavaScript to manage the dynamic content, and use Amazon Cognito for user and sharing management.
  • B. Run a website from Amazon EC2 Linux servers, storing the images in Amazon S3, and use Amazon Cognito for user accounts and sharing. Create AWS CloudFormation templates to launch the application by using EC2 user data to install and configure the application.
  • C. Run a website as an AWS Elastic Beanstalk application, storing the images in Amazon S3, and using an Amazon RDS database for user accounts and sharing. Create AWS CloudFormation templates to launch the application and perform blue/green deployments.
  • D. Run a website from an Amazon S3 bucket that authorizes Amazon AppStream to stream applications for a combined image viewer and messenger that stores images in Amazon S3. Have the website use an Amazon RDS database for user accounts and sharing.
Show Suggested Answer Hide Answer
Suggested Answer: D 🗳️

Comments

Chosen Answer:
This is a voting comment (?). It is better to Upvote an existing comment if you don't have anything to add.
Switch to a voting comment New
AWSPro24
Highly Voted 3 years, 7 months ago
I believe the answer should be A. There are examples of filling in the dynamic elements of S3 websites with Lambda. https://aws.amazon.com/blogs/architecture/create-dynamic-contact-forms-for-s3-static-websites-using-aws-lambda-amazon-api-gateway-and-amazon-ses/ https://aws.amazon.com/getting-started/projects/build-serverless-web-app-lambda-apigateway-s3-dynamodb-cognito/ I feel the words "wants to rewrite the application" are key. They aren't looking to move the same code to AppStreah which is App streaming, similar to VDI but scoped at the App level. B - EC2 will be more expensive and "EC2 user data" is just silly and wrong C - RDS isn't the best choice for a user store and there is no blue/green requirement D - Don't believe AppStream can be launched from S3. Too Dynamic. Might be possible with Lambda.
upvoted 18 times
Smart
3 years, 6 months ago
Can "rewrite the app" means switching from VDI to App Streaming?
upvoted 2 times
...
...
inf
Highly Voted 3 years, 6 months ago
Answer: A A - correct - solution will work and with low cost and management. No infrastructure to manage. B - incorrect - cost of running and managing infrastructure expensive - not easy to maintain C - incorrect - cost of running and managing infrastructure expensive - blue/green more so which requires the database to be external to the environment or data will be lost. D - incorrect - RDS for authentication/authorisation to provide secure access to S3? possible? plus cost of running infrastructure, and AppStream is the same tech as the current streaming solution Light reading https://stackoverflow.com/questions/49782492/cognito-user-authorization-to-access-an-s3-object https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_examples_s3_cognito-bucket.html
upvoted 9 times
timmysixstrings
2 years, 4 months ago
I agree the answer is A. But per your explanation about D, using RDS auth to secure access to S3 is possible. Once authenticated the backend can provide S3-signed URLs. The bucket resource policy could then restrict access to the EC2 instance role
upvoted 1 times
...
...
spinatram
Most Recent 3 months, 1 week ago
Selected Answer: D
D is correct. Option A requires API Gateway
upvoted 1 times
...
SkyZeroZx
1 year, 10 months ago
Selected Answer: A
The answer is A. Run a website from an Amazon S3 bucket with a separate S3 bucket for images and messaging data. Call AWS Lambda functions from embedded JavaScript to manage the dynamic content, and use Amazon Cognito for user and sharing management. This architecture is the most cost-effective because it uses serverless technologies like Amazon S3, AWS Lambda, and Amazon Cognito. These technologies are pay-as-you-go, so the Solutions Architect will only be charged for the resources that they use. The architecture is also secure because it uses Amazon Cognito to manage user authentication and authorization. Amazon Cognito provides a number of features that help to protect user data, such as multi-factor authentication and session management.
upvoted 1 times
SkyZeroZx
1 year, 10 months ago
The architecture is also easy to manage because it uses AWS CloudFormation templates. AWS CloudFormation templates are a way to define and deploy AWS resources in a repeatable and consistent way. This makes it easy for the Solutions Architect to make changes to the architecture in the future. The other options are not as cost-effective, secure, or easy to manage as option A. Option B uses Amazon EC2, which is a more expensive option than Amazon S3. Option C uses AWS Elastic Beanstalk, which is a managed platform for deploying and scaling web applications. However, Elastic Beanstalk is not as cost-effective as option A because it charges for the EC2 instances that are used to run the application. Option D uses Amazon AppStream, which is a managed service for streaming applications to users' desktops. However, AppStream is not as secure as option A because it does not use Amazon Cognito to manage user authentication and authorization.
upvoted 1 times
...
...
dev112233xx
2 years ago
Selected Answer: D
SaaS app "offers both security and ease of management" == AppStream Imagine you run such SaaS app from static website where all the logic exists in the user browser. not a good idea in terms of security
upvoted 1 times
...
et22s
2 years, 5 months ago
Selected Answer: A
Ans: A You can Invoke a Lambda function from a browser using the SDK for JavaScript. https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/cross_LambdaForBrowser_javascript_topic.html
upvoted 1 times
...
MarianKowalskiExam
2 years, 5 months ago
Selected Answer: A
Definitely A as it is the simplest one.
upvoted 1 times
...
nsvijay04b1
2 years, 5 months ago
Selected Answer: A
A) Java script trigger lambda, S3 is cost effective, cognito for auth https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/using-lambda-functions.html B,C) costly and others explained already D) App stream support user pool /sso/federated users not RDS, not cheap although pasy as u go, ques wants to refactor app from desktop not migrate to another desktop steaming solution
upvoted 1 times
...
kharakbeer
2 years, 6 months ago
Selected Answer: A
A is right. Easy question ya 3azeezy
upvoted 1 times
...
joanneli77
2 years, 6 months ago
A has no database of record - where is the data? I went with D since it has a DB.
upvoted 2 times
...
tomosabc1
2 years, 6 months ago
Selected Answer: D
A(wrong): AWS Lambda function cannot be called by embedded JavaScript directly, API Gateway is required, which is not mentioned by the option. B/C(wrong): These two options involve the use of EC2(EC2 is in used even in the case of Elastic Beanstalk), not cost effective, compared with D.
upvoted 2 times
...
tomosabc1
2 years, 6 months ago
Selected Answer: D
A(wrong): AWS Lambda function cannot be called by embedded JavaScript directly, API Gateway is required, which is not mentioned by the option. B/C(wrong): These two options involve the use of EC2(EC2 is in used even in the case of Elastic Beanstalk), not cost effective, compared with D.
upvoted 3 times
tomosabc1
2 years, 6 months ago
Someone might argue that, as the question mentioned, the development operation team wants to move away from using VDI...I doubt whether moving away from VDI means the same as moving away from AppStream 2.0.
upvoted 1 times
...
tomosabc1
2 years, 6 months ago
D(correct): AppStream 2.0 manages the AWS resources required to host and run your applications, scales automatically, and provides access to your users on demand...With AppStream 2.0, you can easily add your existing desktop applications to AWS and enable your users to instantly stream them(*** ease of management ***)...Your applications run on AWS compute resources, and data is never stored on users' devices, which means they always get a high performance, secure experience((*** secure ***)). Unlike traditional on-premises solutions for desktop application streaming, AppStream 2.0 offers pay-as-you-go pricing, with no upfront investment and no infrastructure to maintain(*** Cost effective ***). You can scale instantly and globally, ensuring that your users always have the best possible experience. https://docs.aws.amazon.com/appstream2/latest/developerguide/what-is-appstream.html
upvoted 3 times
...
...
Dionenonly
2 years, 7 months ago
Selected Answer: A
A is the answer for me
upvoted 1 times
...
vbal
3 years, 4 months ago
A is the right Answer. Cognito Identity Pool would help run Lambda using AWS SDK for Javascript.
upvoted 1 times
vbal
3 years, 4 months ago
https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/using-lambda-functions.html
upvoted 1 times
...
...
cldy
3 years, 4 months ago
A. Run a website from an Amazon S3 bucket with a separate S3 bucket for images and messaging data. Call AWS Lambda functions from embedded JavaScript to manage the dynamic content, and use Amazon Cognito for user and sharing management.
upvoted 1 times
...
AzureDP900
3 years, 4 months ago
A is right because they want to discontinue VDI solutions.
upvoted 1 times
...
AWSum1
3 years, 5 months ago
A is correct
upvoted 1 times
...
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.

Upvoting a comment with a selected answer will also increase the vote count towards that answer by one. So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.

SaveCancel
Loading ...
exam
Someone Bought Contributor Access for:
SY0-701
London, 1 minute ago