如何为用户显示特定的 ec2 实例

Posted

技术标签:

【中文标题】如何为用户显示特定的 ec2 实例【英文标题】:how to show specific ec2 instance for an user 【发布时间】:2015-01-23 07:52:37 【问题描述】:

我有一些 aws ec2 实例,想只为合作伙伴显示一个实例。

我为合作伙伴创建了 IAM 用户。以下是我创建的政策。 但是当合作伙伴登录到 aws 并查看 ec2 实例视图时,显示以下消息并且没有显示实例。

获取实例数据时出错:您无权 执行此操作。


  "Version": "2012-10-17",
  "Statement": [
    
      "Action": [
        "ec2:*"
      ],
      "Sid": "Stmt1373378552000",
      "Resource": [
        "arn:aws:ec2:ap-northeast-1:123456789012:instance/i-12345678"
      ],
      "Effect": "Allow"
    
  ]

(123456789012 是(虚拟)我的帐户 ID,i-12345678 是我喜欢展示的实例)

我也尝试通过如下标签名称指定,但不起作用..

"Condition": 
        "StringEquals": 
          "ec2:ResourceTag/Name": "node-B"
        
      ,

有人知道如何为合作伙伴显示特定的 ec2 实例吗?

【问题讨论】:

【参考方案1】:

目前不支持。

目前只有选定的 Amazon EC2 API 操作支持资源级权限:

描述调用不支持资源级权限 支持开始/停止/终止(和其他)

AWS 管理控制台正在使用 DescribeInstances 调用,不能将其限制为特定资源。因此,您收到的错误。

另见:

Supported Resource-Level Permissions for Amazon EC2 API Actions

【讨论】:

感谢您的信息!! 为了进一步澄清,DescribeInstances 操作不能被 any Condition 限制。即使你设置了"Resource": "*"

以上是关于如何为用户显示特定的 ec2 实例的主要内容,如果未能解决你的问题,请参考以下文章

如何为类的每个实例创建实例特定的方法?

如何为 AutoScale 实例使用 AWS 负载均衡器代理协议?

如何为 Elastic Beanstalk DOCKER 环境设置永久 DNS 名称?

如何为 AWS EC2 上托管的 Parse 服务器获取 APP_ID 和 CLIENT_KEY

如何为 cPanel 中特定子域的用户授予 SSH 访问权限

Cloudformation 模板 - 如何确保 EC2 实例启动后特定服务正在运行