禁止RAM用户为ECS实例分配公网IP

固定公网IP与弹性公网IP以便捷的方式为ECS实例提供了公网访问的能力,但对于拥有大量云资源的企业,随意为ECS实例分配公网IP会增加实例从公网被攻击的风险,同时会使您的网络架构变得混乱,难以管理,建议您指派网络管理员,将网络相关的操作授权给他们进行统一规划。本文将介绍如何使用RAM权限策略禁止RAM用户为ECS实例分配公网IP。

操作步骤

以下提供了一个示例,禁止RAM用户(Alice)为ECS实例分配固定公网IP,也无法购买弹性公网IP。

  1. RAM控制台,创建RAM用户(Alice)。

    具体操作,请参见创建RAM用户

  2. RAM控制台,创建权限策略(ecs-network-control),选择脚本编辑,使用如下策略内容。

    说明

    以下策略表示:禁止在创建ECS实例时为其分配固定公网IP;禁止通过资源变配,将流量带宽峰值提高到大于0 Mbit/s,为实例生成一个固定公网IP;也不能创建EIP。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Deny",
                "Action": [
                    "ecs:RunInstances",
                    "ecs:CreateInstance",
                    "ecs:ModifyInstanceSpec",
                    "ecs:ModifyInstanceNetworkSpec"
                ],
                "Resource": "*",
                "Condition": {
                    "Bool": {
                        "ecs:AssociatePublicIpAddress": [
                            "true"
                        ]
                    }
                }
            },
            {
                "Effect": "Deny",
                "Action": [
                    "vpc:AllocateEipAddress",
                    "vpc:AllocateEipAddressPro",
                    "vpc:AssociateEipAddress",
                    "vpc:AllocateEipSegmentAddress",
                    "eipanycast:AllocateAnycastEipAddress"
                ],
                "Resource": "*"
            }
        ]
    }
  3. 继续创建权限策略(ecs-admin),选择脚本编辑,使用如下策略内容。

    说明

    以下策略表示:拥有管理云服务器ECS相关的权限(包括购买,管理,查看ECS实例等),在此示例中用于模拟云服务器ECS的管理员,您可以按实际需求对策略进行调整。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "ecs:*",
            "ecs-workbench:*",
            "vpc:CheckCanAllocateVpcPrivateIpAddress",
            "vpc:DescribeVpcs",
            "vpc:DescribeVSwitches",
            "bss:ModifyAgreementRecord",
            "bss:DescribeOrderList",
            "bss:DescribeOrderDetail",
            "bss:PayOrder",
            "bss:CancelOrder"
          ],
          "Resource": "*"
        }
      ]
    }
  4. RAM控制台,为RAM用户(Alice)授权。

    其中,授权范围选择账号级别,授权主体选择RAM用户(Alice),权限策略选择上一步创建的自定义策略(ecs-network-controlecs-admin)。具体操作,请参见RAM用户授权

    image

结果验证

使用RAM用户(Alice)登录阿里云控制台

具体操作,请参见RAM用户登录阿里云控制台

验证项一:创建ECS实例时分配公网IP

  1. 访问实例购买页

  2. 选择自定义购买页签。

  3. 选择付费类型、地域、实例规格、镜像等配置。并且勾选公网IP。具体操作,请参见自定义购买实例

    image

  4. 确认下单后提示创建失败。

验证项二:为已创建的ECS实例更改带宽从而分配公网IP

  1. 访问ECS控制台-实例

  2. 在页面左侧顶部,选择目标资源所在的资源组和地域。地域

  3. 选择没有分配固定公网IP的实例,在实例详情页,单击全部操作展开所有操作面板,然后搜索并单击更改带宽。将其带宽提升至大于0 Mbit/s。image

  4. 确认更改后显示未被授权。

验证项三:购买弹性公网IP

  1. 访问弹性公网IP页面,单击创建弹性公网IP

  2. 在创建页面,提示无权限。image