我有一些用户想要限制他们可以在其中启动EC2的子网,但似乎无法弄清楚该如何做。我尝试在IAM中进行挖掘,但在其中找不到它。在AWS中可以做到这一点吗?
最佳答案
是的,您可以使用身份和访问管理(IAM)服务来做到这一点。
以下策略授予使用特定子网的权限。此外,它还提供了对其他资源的开放访问权限,用户可以将实例正确启动到子网中所需的其他资源:AMI,实例,网络接口,卷,密钥对等。
当启动到子网中时,默认情况下,RunInstances请求需要这些资源,因此用户在启动实例时需要访问这些资源的权限。
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": [
"arn:aws:ec2:region::image/ami-*",
"arn:aws:ec2:region:account:instance/*",
"arn:aws:ec2:region:account:subnet/subnet-1a2b3c4d",
"arn:aws:ec2:region:account:network-interface/*",
"arn:aws:ec2:region:account:volume/*",
"arn:aws:ec2:region:account:key-pair/*",
"arn:aws:ec2:region:account:security-group/sg-123abc123"
]
}
]
}
请注意,该策略还提供对特定安全组的访问。您可以根据需要对其进行修复,或者提供*作用域以允许它们指定任何安全组。
有关更多信息,请参见Launching instances into a specific subnet
关于amazon-web-services - 限制AWS用户仅允许他们将EC2实例启动到特定子网中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34752571/