use*_*913 3 amazon-ec2 amazon-iam
我希望用户能够登录 aws 帐户并启动和停止一个特定的 ec2-instance。到目前为止,我发现 ec2 describe 仅适用于资源中的 catch -all star "*"。用户可以登录,查看所有实例,但他无法启动或停止实例,因为出现权限被拒绝错误:(
这是我的政策
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "TheseActionsDontSupportResourceLevelPermissions",
"Effect": "Allow",
"Action": [
"ec2:Describe*"
],
"Resource": "*"
},
{
"Sid": "TheseActionsSupportResourceLevelPermissions",
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:StopInstances",
"ec2:StartInstances"
],
"Resource": "arn:aws:ec2:eu-central-1a:MY_ACCOUNT_ID:instance/MY_INSTANCE_ID"
}
]
}
Run Code Online (Sandbox Code Playgroud)
答案是,你不能。
的ec2:Stopinstances,ec2:StartInstances并且ec2:TerminateInstances确实支持资源级别的权限,而不是实例ID的状态键。它们支持条件键:
唯一可能有用的条件键是ec2:ResourceTag/tag-key。您可以在特定实例上添加资源标签,并允许用户权限在具有该标签的实例上调用这 3 个 API 调用。
但是,除非您拒绝了与标签相关的 API 调用,否则不会阻止用户将标签添加到另一个实例,并在该实例上执行 API 调用。您需要确定拒绝标记是否适合您的情况。
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
5273 次 |
| 最近记录: |