【发布时间】:2020-03-02 20:17:22
【问题描述】:
我正在创建跨多个 AWS 账户分配的跨账户角色。目标是允许我的 lambda 之一承担此 CrossAccount 角色并在目标帐户中创建 CFN 堆栈。
为了允许删除堆栈,我需要将 ec2:TerminateInstances 之类的操作分配给角色。但我不想允许对所有资源“*”执行操作。如何只允许对具有特定标签的资源执行此操作?
我尝试了以下政策条件,但它不起作用。当尝试删除堆栈时,我在 ec2:TerminateInstances 操作上遇到未经授权的错误。
- Effect: "Allow"
Action:
- "ec2:TerminateInstances"
Resource: "*"
Condition:
StringEquals:
aws:RequestTag/Usage: TestOnlyTag
我走对了吗?
请注意,此角色需要在创建堆栈之前部署到目标帐户中。所以这里没有办法指定Instance-Id。
【问题讨论】:
-
你试过了吗?有用吗?
标签: amazon-web-services yaml amazon-iam