首页 > 解决方案 > 如何在 AWS CDK 中使用 IRole

问题描述

嗨,我正在研究 AWS CDK。我创建了一个角色,如下所示。

 MWSAutoscalingRole = iam.Role(self, 'MWSAutoscalingRole',
        assumed_by=iam.ServicePrincipal('application-autoscaling.amazonaws.com'))

        MWSAutoscalingRole.add_to_policy(iam.PolicyStatement(
        effect=iam.Effect.ALLOW,
        resources=["*"],
        actions=["application-autoscaling:*"]
        ))

现在我想将此角色分配给可扩展目标,如下所示。

asg.ScalableTarget(self, id = "scalable target", min_capacity = 1, max_capacity = 1, resource_id = "service", role= [iam.IRole.role_name["MWSAutoscalingRole"]], scalable_dimension = "1", service_namespace = asg.ServiceNamespace.ECS)

在上面的代码中,role= [iam.IRole.role_name["MWSAutoscalingRole"]]不起作用。正确的语法是role: typing.Optional[aws_cdk.aws_iam.IRole]=None

上面的实现不起作用。有人可以帮我解决这个问题吗?

标签: pythonamazon-web-servicesaws-cdk

解决方案


推荐阅读