An enterprise is strengthening the security posture of an existing data processing application. The application runs on Amazon ECS Fargate tasks in a private subnet within VPC A (Account A). The tasks process telemetry data and write the results to a centralized Amazon S3 bucket in Account B. The S3 bucket is configured with default encryption using an AWS KMS Customer Managed Key (CMK) in Account B.
Currently, the ECS tasks access the S3 bucket via an S3 Gateway VPC Endpoint in VPC A. The security team must implement the following improvements:
- Ensure all data upload requests to the S3 bucket and KMS cryptographic requests are kept off the public internet.
- Restrict the S3 bucket and KMS CMK access so that they only accept requests originating from VPC A's VPC endpoints.
- Prevent administrators in Account A from modifying the KMS key policies or S3 bucket policies in Account B, while ensuring Account B security administrators retain full management capabilities.
Which combination of actions will meet these security requirements with the least operational complexity?
- Create a KMS Interface VPC Endpoint in VPC A. Update the S3 bucket policy in Account B to allow write permissions for the ECS task IAM role, with a condition restricting access to the S3 Gateway VPC Endpoint ID. Update the KMS CMK key policy in Account B to allow cryptographic permissions for the ECS task IAM role, with a condition restricting access to the KMS Interface VPC Endpoint ID. Rely on the default AWS cross-account security boundaries to restrict Account A administrators.Answer
- BCreate a KMS Interface VPC Endpoint in VPC A. Update the S3 bucket policy and the KMS CMK key policy in Account B to allow access from the ECS task IAM role, with a condition restricting both resources to the S3 Gateway VPC Endpoint ID. Apply a Service Control Policy (SCP) to the Production OU containing Account A that denies policy modifications for S3 and KMS to protect Account B's resources.
- CCreate an S3 Interface VPC Endpoint in VPC A to replace the S3 Gateway VPC Endpoint. Modify the default S3 AWS-managed KMS key (aws/s3) policy in Account B to grant cryptographic permissions to Account A's ECS task IAM role, restricted by a condition for the S3 Interface VPC Endpoint ID. Apply a Service Control Policy (SCP) to Account B's OU to block any policy modification requests originating from Account A IAM roles.
- DCreate a KMS Interface VPC Endpoint in VPC A. Create a Route 53 Private Hosted Zone for the KMS service endpoint in Account B without associating it with VPC A. Update the S3 bucket policy in Account B to allow write permissions for the ECS task IAM role, with a condition restricting access to VPC A's ID. Update the KMS CMK key policy in Account B to allow cryptographic permissions for the ECS task IAM role, with a condition restricting access to the S3 Gateway VPC Endpoint ID.