DOP-C02 Question 40
Single answerYour organization uses AWS CodePipeline for CI/CD, and you are responsible for automating the build and management of application artifacts. You are tasked with ensuring that build artifacts are securely stored, versioned, and easily accessible for deployments across multiple environments. Which service and configuration would best meet these requirements?
- A
Store build artifacts in an S3 bucket with versioning enabled and apply IAM policies for access control.
- B
Use AWS CodeArtifact to store and manage build artifacts, ensuring secure access via repository policies.
- C
Store build artifacts in AWS EFS to ensure scalability and file-level access control.
- D
Use AWS DynamoDB to store and version build artifacts, leveraging fine-grained access control.
Show answer and explanation
Correct answer: A
Explanation
Amazon S3 with versioning is the most appropriate choice for securely storing, versioning, and managing build artifacts in AWS. It is highly scalable, cost-effective, and integrates well with other AWS services like CodePipeline and CodeBuild. Enabling versioning ensures that all artifact versions are retained and recoverable, and IAM policies provide fine-grained access control to meet security requirements.
- A. Correct.
Storing build artifacts in an S3 bucket with versioning enabled is a best practice for managing artifacts in AWS. S3 provides secure, scalable, and cost-effective storage, and versioning ensures that you can track changes and revert to previous versions if needed.
- B. Incorrect.
AWS CodeArtifact is primarily designed for managing software packages (e.g., Maven, npm) rather than build artifacts. While it provides secure access, it is not optimized for storing general build artifacts.
- C. Incorrect.
AWS EFS is a shared file system designed for use cases requiring file-level access. It is not an ideal solution for storing and managing application build artifacts due to its higher cost and complexity compared to S3.
- D. Incorrect.
AWS DynamoDB is a NoSQL database service and is not suited for storing build artifacts. It is designed for key-value and document-based data storage, not binary files or versioned artifacts.