def _create_policy_statements()

in aws_emr_launch/constructs/step_functions/emr_tasks.py [0:0]


    def _create_policy_statements(self) -> List[iam.PolicyStatement]:
        stack = core.Stack.of(self)

        policy_statements = list()

        policy_statements.append(
            iam.PolicyStatement(
                actions=[
                    "elasticmapreduce:RunJobFlow",
                    "elasticmapreduce:DescribeCluster",
                    "elasticmapreduce:TerminateJobFlows",
                ],
                resources=["*"],
            )
        )

        policy_statements.append(
            iam.PolicyStatement(
                actions=["iam:PassRole"],
                resources=[
                    self._roles.service_role.role_arn,
                    self._roles.instance_role.role_arn,
                    self._roles.autoscaling_role.role_arn,
                ],
            )
        )

        if self._integration_pattern == sfn.IntegrationPattern.RUN_JOB:
            policy_statements.append(
                iam.PolicyStatement(
                    actions=["events:PutTargets", "events:PutRule", "events:DescribeRule"],
                    resources=[
                        stack.format_arn(
                            service="events", resource="rule", resource_name="StepFunctionsGetEventForEMRRunJobFlowRule"
                        )
                    ],
                )
            )

        return policy_statements