在 AWS IAM 中使用以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:DescribeInstances"
],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/project": "projectA"
}
},
"Resource": [
"arn:aws:ec2:your_region:your_account_ID:instance/*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": [
"arn:aws:ec2:eu-west-1:REMOVED:instance/i-REMOVED"
]
}
]
}
我能够根据设置为特定实例 ID 的资源来启动/停止。另一方面,我想将 DescribeInstances 的操作限制为标记为“project=projectA”的 EC2 资产,但该操作似乎不起作用。
我尝试使用 aws cli 列出它们,如下所示:
aws ec2 describe-instances --filters Name=tag:project,Values=projectA
并且该标签实际上已添加到相关的 EC2 资产中。
有什么建议或提示吗?
PS:我也尝试将 describeinstances 部分中的资源设置为 *,但仍然不行。
答案1
关闭该问题,因为看起来 DescribeInstances 不支持该条件。
DescribeInstances 不允许任何资源限制(标签、特定实例 ID 等)。