AWS Certified Solutions Architect – Professional (SAP-C02) — Question 389

A company is running multiple workloads in the AWS Cloud. The company has separate units for software development. The company uses AWS Organizations and federation with SAML to give permissions to developers to manage resources in their AWS accounts. The development units each deploy their production workloads into a common production account.

Recently, an incident occurred in the production account in which members of a development unit terminated an EC2 instance that belonged to a different development unit. A solutions architect must create a solution that prevents a similar incident from happening in the future. The solution also must allow developers the possibility to manage the instances used for their workloads.

Which strategy will meet these requirements?

Answer options

Correct answer: B

Explanation

Option B is correct because passing the DevelopmentUnit attribute as an AWS STS session tag enables Attribute-Based Access Control (ABAC), allowing IAM policies to dynamically compare the user's principal tag (aws:PrincipalTag/DevelopmentUnit) with the resource's tag. Implementing a deny action with a StringNotEquals condition ensures that developers can only modify EC2 instances that match their own development unit. Other options either introduce high administrative overhead by avoiding ABAC (Option D) or incorrectly attempt to use Service Control Policies (SCPs) to regulate resource-level permissions within a single shared account (Options A and C).