A SysOps administrator manages a multi-account AWS environment and uses AWS Service Catalog in a hub account to share a portfolio with several spoke accounts within an AWS Organization. To enforce security compliance, the administrator wants all resources provisioned from this portfolio in the spoke accounts to be created using a dedicated IAM role named SCLaunchExecutionRole in each spoke account. The administrator creates the SCLaunchExecutionRole in the spoke accounts, attaches policies containing the required resource provisioning permissions, and configures the trust policy to allow the cloudformation.amazonaws.com service principal to assume the role. The administrator then configures a launch constraint on the shared portfolio in the spoke accounts, specifying SCLaunchExecutionRole as the launch role. However, when developers in the spoke accounts attempt to provision the product, the deployment fails with a status of tainted, and the event logs state that the execution role cannot be assumed. How should the administrator resolve this deployment failure?
- AAttach an IAM policy to the developer IAM groups in the spoke accounts that grants the iam:PassRole permission for the SCLaunchExecutionRole.
- Update the trust policy of the SCLaunchExecutionRole in the spoke accounts to trust the servicecatalog.amazonaws.com service principal.Answer
- CManually create the CloudFormation stacks in the spoke accounts using the SCLaunchExecutionRole, and then use the AWS Service Catalog associate action to link the stacks.
- DAdd the sts:AssumeRole permission to the developers' IAM policies in the spoke accounts, allowing them to assume the SCLaunchExecutionRole directly during provisioning.