Roles Anywhere trust policy lacks trust-anchor scoping (aws:SourceArn / aws:SourceAccount / sts:SourceIdentity)
What it checks
Roles Anywhere trust policy lacks trust-anchor scoping (aws:SourceArn / aws:SourceAccount / sts:SourceIdentity)
Where it applies
Terraform: aws_iam_role
CloudFormation: AWS::IAM::Role
How to fix it
- Add Condition.ArnEquals["aws:SourceArn"] pinned to the expected trust anchor ARN (arn:aws:rolesanywhere:<region>:<account>:trust-anchor/<id>, or reference aws_rolesanywhere_trust_anchor.<name>.arn) to the rolesanywhere.amazonaws.com trust statement.
- For defense-in-depth, also add certificate-attribute conditions (e.g. StringEquals on aws:PrincipalTag/x509Issuer/CN) so only certificates from the intended issuer can authenticate.
Frameworks
- NIST 800-53 rev5 AC-3
- NIST 800-53 rev5 AC-6
These mappings are advisory, not an attestation of compliance.