A medical device company uses AWS Organizations to manage a multi-account environment. A newly acquired division has several AWS accounts grouped under a dedicated Organizational Unit (OU) named Acquisition-OU. The corporate security team must enforce a strict compliance rule: all Amazon Elastic Block Store (Amazon EBS) volumes provisioned within Acquisition-OU must be encrypted. To ensure rapid mitigation in the event of a security incident, the encryption must use a Customer Managed Key (CMK) hosted in a centralized Security account, allowing the security team to revoke access instantly. The local administrators in the member accounts have full administrative privileges and must be able to launch Amazon EC2 instances with encrypted volumes without having IAM credentials or roles in the Security account. Which combination of configurations will meet these requirements while preventing member account administrators from bypassing the encryption guardrail?
- AIn the Security account, create a Customer Managed Key (CMK). Configure the CMK's key policy to allow the member accounts' root principals to perform the kms:Decrypt, kms:GenerateDataKeyWithoutPlaintext, and kms:CreateGrant actions. Attach a Service Control Policy (SCP) to the Acquisition-OU that explicitly allows these KMS actions on the Security account's CMK, and denies ec2:RunInstances if the EBS volume is unencrypted. Rely on the SCP to authorize the pipeline IAM roles without adding local IAM policy permissions in the member accounts.
- In the Security account, create a Customer Managed Key (CMK). Configure the CMK's key policy to allow the member accounts' root principals (arn:aws:iam::<member-account-ID>:root) to perform the kms:Decrypt, kms:GenerateDataKeyWithoutPlaintext, and kms:CreateGrant actions. In each member account, grant the local IAM roles used to launch EC2 instances permissions to perform these same KMS actions on the central CMK. Attach a Service Control Policy (SCP) to the Acquisition-OU that denies the ec2:RunInstances action if the EBS volume is unencrypted or if the KMS key specified is not the central CMK ARN.Cevap
- CIn the Security account, enable cross-account sharing on the AWS-managed KMS key for EBS (aws/ebs) by updating its key policy to trust the member accounts. In each member account, grant local EC2 execution roles permissions to use the Security account's aws/ebs key. Attach a Service Control Policy (SCP) to the Acquisition-OU that denies the ec2:RunInstances action if the EBS volume is unencrypted.
- DIn the Security account, create a Customer Managed Key (CMK) and configure its key policy to trust the member accounts' root principals. In the member accounts, create and attach a customer managed IAM policy to all local IAM users and roles that denies the ec2:RunInstances action if the EBS volume is unencrypted or does not use the central CMK. Avoid attaching any Service Control Policies (SCPs) at the Organization level to minimize performance impact on API requests.