A SysOps Administrator is troubleshooting an access issue where an application running on an Amazon EC2 instance cannot decrypt data using an AWS KMS Customer Managed Key (CMK). The application uses an IAM role named AppExecutionRole. An IAM policy attached to this role allows the kms:Decrypt action on the CMK's Amazon Resource Name (ARN). However, the application continues to receive an AccessDenied error.
The CMK is configured with the following key policy:
{
"Version": "2012-10-17",
"Id": "key-policy-1",
"Statement": [
{
"Sid": "Allow Key Administration",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::111122223333:role/AdminRole"
},
"Action": [
"kms:Create*",
"kms:Describe*",
"kms:Enable*",
"kms:List*",
"kms:Put*",
"kms:Update*",
"kms:Revoke*",
"kms:Disable*",
"kms:Get*",
"kms:Delete*",
"kms:TagResource",
"kms:UntagResource",
"kms:ScheduleKeyDeletion",
"kms:CancelKeyDeletion"
],
"Resource": "*"
}
]
}
Which of the following actions can the administrator take to resolve this issue? (Select TWO.)
- Add a statement to the KMS key policy that grants the account's root user (arn:aws:iam::111122223333:root) permissions to perform kms:Decrypt and kms:DescribeKey actions.Answer
- Modify the KMS key policy to add a statement that explicitly grants the AppExecutionRole principal permissions to perform kms:Decrypt and kms:DescribeKey actions.Answer
- CAttach an inline IAM policy to the AppExecutionRole that grants kms:Decrypt permissions on all resources (Resource: *).
- DModify the trust policy of the AppExecutionRole to trust the KMS service principal (kms.amazonaws.com).
- ECreate a Service Control Policy (SCP) in AWS Organizations that explicitly allows the kms:Decrypt action for the AppExecutionRole.