【问题标题】:AWS IAM Policy - Restrict VPC TenancyAWS IAM 政策 - 限制 VPC 租赁
【发布时间】:2020-01-27 15:00:20
【问题描述】:

要求:限制 IAM 用户创建具有专用租户的 VPC。 IAM 用户应该只能使用默认租期创建 VPC。

IAM 用户附加的 IAM 政策:

    {
        "Sid": "limitedTenancyVpc",
        "Effect": "Deny",
        "Action": "ec2:CreateVpc",
        "Resource": "arn:aws:ec2:*:*:vpc/*",
        "Condition": {
            "ForAnyValue:StringNotLike": {
                "ec2:Tenancy": [
                    "default"
                ]
            }
        }
    }

我知道对于 VPC,InstanceTenancy 是要使用的关键字。我尝试过使用它,但它不起作用。附加此策略的 IAM 用户能够创建具有专用租赁的 VPC。

请提出建议。

【问题讨论】:

    标签: amazon-web-services amazon-vpc


    【解决方案1】:

    无法对此进行限制,因为没有与 ec2:CreateVPC 操作关联的条件。查看可用EC2 conditions keys的列表。

    但是,ec2:tenancy 条件适用于 ec2:runInstances。因此,您可以改为拒绝使用专用租赁作为护栏来启动实例的请求。

    共有 3 种不同的租赁类型:默认、专用和主机。如果租户设置为主机或专用,则拒绝请求。

    {
        "Sid": "limitedTenancyVpc",
        "Effect": "Deny",
        "Action": "ec2:RunInstances",
        "Resource": "*",
        "Condition": {
            "ForAnyValue:StringEquals": {
                "ec2:Tenancy": [
                    "host", 
                    "dedicated"
                ]
            }
        }
    }
    
    

    【讨论】:

    • 感谢您的回复。然而这并没有奏效。在策略中添加上述详细信息后,我仍然能够创建具有专用租户的 VPC。
    • 我理解你的意思,在AWS管理控制台中,我们只能在创建VPC时看到default和dedicated。
    • 我的回答是用来拒绝用户是否启动具有专用租用的实例。但是,您希望防止创建具有专用租户的 VPC。
    • 很遗憾这是不可能的。查看我的更新答案。
    • @PavanRao 似乎您正在寻找即使存在也无济于事的东西。这个答案是正确的,因为 VPC 租赁仅在一个方向上限制实例的类型,而不是在另一个方向上 - 具有专用租赁的 VPC 要求所有实例都具有专用租赁,但 all i> VPC 允许 实例拥有专用租用。如果您不想允许专用租赁,则限制一种类型的 VPC 创建将无法实现该目标。
    猜你喜欢
    • 2020-05-24
    • 1970-01-01
    • 1970-01-01
    • 2021-11-14
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多