A company uses a centralized tooling account to host AWS CodePipeline, which automates application infrastructure deployments across multiple target AWS accounts in an AWS Organization. The pipeline uses AWS CloudFormation to deploy resources, using templates stored in an Amazon S3 bucket in the tooling account. To secure database credentials, the CloudFormation template references secret values stored in AWS Secrets Manager in the tooling account.
During a deployment run, the pipeline fails. The pipeline execution logs indicate that the CloudFormation deployment role in the target accounts cannot retrieve the template artifacts from the S3 bucket, and cannot decrypt the database credentials stored in Secrets Manager.
Which two actions should the Solutions Architect take to resolve these deployment failures? (Select two.)
- Update the S3 bucket policy in the tooling account to allow the deployment IAM role in the target accounts to perform the s3:GetObject action.Answer
- Use a Customer Managed Key (CMK) to encrypt the Secrets Manager secrets in the tooling account, and configure its key policy to allow the deployment IAM role in the target accounts to perform the kms:Decrypt action.Answer
- CShare the default AWS-managed KMS key (aws/secretsmanager) in the tooling account with the target accounts by attaching a cross-account IAM policy to the target deployment roles.
- DAttach a Service Control Policy (SCP) to the target accounts' Organizational Unit (OU) that grants the deployment IAM roles permissions to read the S3 bucket in the tooling account.
- EConfigure AWS Systems Manager State Manager to automatically perform manual API updates on the target account resources to resolve configuration errors and bypass the pipeline blocks.