RCP should deny cross-account role assumption from outside the Organization

このページは日本語には対応しておりません。随時翻訳に取り組んでいます。
翻訳に関してご質問やご意見ございましたら、お気軽にご連絡ください

Description

A Resource Control Policy (RCP) should deny cross-account role assumption from principals outside the AWS Organization. Without this control, IAM roles in member accounts can be assumed by any external AWS principal that satisfies the role’s trust policy, creating a lateral-movement risk and potential data exfiltration path. An RCP that denies sts:AssumeRole when aws:PrincipalOrgID does not match the organization ID ensures that only principals within the organization can assume roles on organization resources.

This rule also flags RCPs that use NotAction to exempt sts:AssumeRole from a deny statement. A NotAction-based exemption creates a gap that could be exploited if the corresponding explicit deny is ever removed.

Note: AWS service principals should be exempted using aws:PrincipalIsAWSService conditions to avoid disrupting AWS service integrations. Trusted third-party accounts can be exempted using aws:PrincipalAccount conditions.

Remediation

Create a Resource Control Policy that explicitly denies sts:AssumeRole using Action (not NotAction) from principals outside the organization and attach it to the organization root. Remove any NotAction-based deny statements that exempt STS actions. Refer to the RCP syntax documentation and the AWS data perimeter best practices for guidance.