An enterprise is establishing direct federated access for its operations team to a Shared Services AWS account (account ID 111122223333) using an on-premises SAML 2.0-compliant Identity Provider (IdP). A Solutions Architect creates a SAML provider named 'CorporateIdP' and an IAM role named 'OpsConsoleRole' in the Shared Services account.
During testing, users receive an error message in their browser stating: 'Your request to assume a role has been denied' when redirecting from the IdP portal. The trust policy of the 'OpsConsoleRole' is currently configured as follows:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Federated": "arn:aws:iam::111122223333:saml-provider/CorporateIdP"
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"SAML:aud": "https://signin.aws.amazon.com/saml"
}
}
}
]
}
Additionally, a Service Control Policy (SCP) is attached to the organizational unit (OU) containing the Shared Services account:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"sts:AssumeRole",
"sts:AssumeRoleWithSAML"
],
"Resource": "*"
}
]
}
Which of the following actions should the Solutions Architect take to resolve the authentication error and successfully establish federated access? (Select TWO.)
- Change the Action in the trust policy of the 'OpsConsoleRole' IAM role from 'sts:AssumeRole' to 'sts:AssumeRoleWithSAML'.Answer
- Configure the SAML assertion sent by the Identity Provider to include the 'https://aws.amazon.com/SAML/Attributes/Role' attribute with the ARNs of both the IAM role and the SAML provider.Answer
- CModify the Service Control Policy (SCP) to explicitly grant permissions to the 'CorporateIdP' SAML provider, as SCPs must authorize external federated principals.
- DConfigure the Principal in the trust policy of the IAM role to trust the AWS account root 'arn:aws:iam::111122223333:root' instead of the SAML provider.
- ERemove the trust policy from the 'OpsConsoleRole' IAM role entirely, relying on the SCP attached to the OU to grant the required 'sts:AssumeRoleWithSAML' permissions.