AWS Certified Solutions Architect – Associate (SAA-C02) — Question 519
A company is planning to run a group of Amazon EC2 instances that connect to an Amazon Aurora database. The company has built an AWS CloudFormation template to deploy the EC2 instances and the Aurora DB cluster. The company wants to allow the instances to authenticate to the database in a secure way. The company does not want to maintain static database credentials.
Which solution meets these requirements with the LEAST operational effort?
Answer options
- A. Create a database user with a user name and password. Add parameters for the database user name and password to the CloudFormation template. Pass the parameters to the EC2 instances when the instances are launched.
- B. Create a database user with a user name and password. Store the user name and password in AWS Systems Manager Parameter Store. Configure the EC2 instances to retrieve the database credentials from Parameter Store.
- C. Configure the DB cluster to use IAM database authentication. Create a database user to use with IAM authentication. Associate a role with the EC2 instances to allow applications on the instances to access the database.
- D. Configure the DB cluster to use IAM database authentication with an IAM user. Create a database user that has a name that matches the IAM user. Associate the IAM user with the EC2 instances to allow applications on the instances to access the database.
Correct answer: C
Explanation
Option C is correct because enabling IAM database authentication allows EC2 instances to securely connect to Amazon Aurora without managing static database credentials, using short-lived credentials generated automatically via an IAM role associated with the EC2 instances. Options A and B are incorrect because they rely on static credentials, which require rotation and manual management. Option D is incorrect because IAM users cannot be directly attached to EC2 instances; instead, IAM roles must be used to delegate permissions to applications running on EC2.