A solutions architect is designing a batch data processing workload running on Amazon ECS using the AWS Fargate launch type. The application requires access to a database connection string containing sensitive credentials that must be rotated every 30 days, and a non-sensitive configuration endpoint URL that remains static. The solutions architect needs to design a secure, cost-effective storage and retrieval strategy with minimal operational overhead.
Which combination of services should the solutions architect recommend to meet these requirements?
- AStore the database connection string and the configuration endpoint URL as standard String parameters in AWS Systems Manager Parameter Store.
- Store the database connection string in AWS Secrets Manager and configure automatic rotation. Store the configuration endpoint URL as a String parameter in Systems Manager Parameter Store.Answer
- CStore the database connection string as a SecureString parameter in AWS Systems Manager Parameter Store, and enable automatic key rotation on the associated AWS KMS customer managed key.
- DStore the database connection string directly as a plaintext environment variable in the Amazon ECS task definition, and store the configuration endpoint URL in Systems Manager Parameter Store.
Answer
The most secure and cost-effective approach is to store the database connection string in AWS Secrets Manager with automatic rotation enabled, and store the non-sensitive configuration endpoint URL as a String parameter in AWS Systems Manager Parameter Store.
AWS Secrets Manager is designed for storing sensitive data such as database credentials and supports built-in automatic rotation using AWS Lambda. For non-sensitive application configurations, AWS Systems Manager Parameter Store is a cost-effective and low-overhead solution when using standard String parameters. Combining both services optimizes cost while meeting security and operational requirements.
Step-by-Step Solution
Key Concept
Selecting between AWS Secrets Manager and Systems Manager Parameter Store based on data sensitivity, rotation needs, and cost efficiency.