使用资源组进行精细化资源控制

更新时间:
复制为 MD 格式

当您使用资源组对资源进行分组管理时,可以结合访问控制(RAM),在单个阿里云账号内实现资源的隔离和精细化权限管理。本文总结了专有网络VPC对资源组的支持情况,以及资源组级别的授权操作步骤。

说明
  • 只有支持资源组的资源类型和支持资源组级别授权的操作,资源组级别授权才能生效。

  • 对于不支持资源组的资源类型,授予资源组范围的权限将无效。在选择资源范围时,请选择账号级别,进行账号级别授权。具体操作,请参见不支持资源组级别授权的操作

资源组授权的工作原理

您可以使用资源组(Resource Group)对阿里云账号内的资源进行分组管理。例如,为不同的项目创建对应的资源组,并将资源转移到对应的组中,以便集中管理各项目的资源。更多信息,请参见什么是资源组

在完成资源分组后,您可以为不同的RAM授权主体(RAM用户、RAM用户组或RAM角色)授予指定资源组范围的权限,从而限定这个授权主体只能管理该资源组内的资源。更多信息,请参见资源分组和授权

这种授权方式的优点有:

  • 权限精细化:确保每个身份能获得最准确的资源访问权限,避免账号下的多个项目的资源混合管理。

  • 良好的扩展性:后续新增资源时,只需将其加入该资源组,RAM身份便会自动获得新资源的相应权限,无需再次授权。

RAM用户授予资源组级别的权限

下面以RAM用户为例,介绍授予指定资源组内专有网络VPC资源权限的操作步骤。

1. 前置步骤

  1. 创建待使用的RAM用户,可参考:创建RAM用户

  2. 创建资源组并将已有资源划分到目标资源组,可参考:创建资源组资源自动转组资源手动转组

2. 进行资源组级别授权

您可以通过以下任一方式进行资源组级别授权。

方式一:在资源管理控制台中授权

通过资源组的权限管理功能为指定 RAM 用户授权。详情操作可参见RAM身份授予资源组范围的权限

  • 登录资源组控制台

  • 在资源组页面,单击目标资源组操作列的权限管理

  • 权限管理页签,单击新增授权

  • 新增授权面板,设置授权主体和权限策略。

    • 授权主体:选择已有RAM用户。

    • 权限策略:选择系统策略或已创建的自定义策略,参考创建自定义权限策略

  • 单击确认新增授权

方式二:在 RAM 控制台中授权

通过RAM控制台为指定 RAM 用户进行资源组级别授权。详细操作可参见RAM用户授权

  • 使用阿里云账号(主账号)或RAM管理员登录RAM控制台

  • 在左侧导航栏,选择身份管理 > 用户用户页面,单击目标RAM用户操作列的添加权限

  • 新增授权面板,为RAM用户添加权限。

    • 资源范围:选择资源组级别

    • 授权主体:选择已有 RAM 用户或前面步骤创建的 RAM 用户。

    • 权限策略:选择系统策略或已创建的自定义策略,参考创建自定义权限策略

  • 单击确认新增授权

支持资源组的资源类型

专有网络VPC支持资源组的资源类型如下表所示:

云服务

云服务代码

资源类型

专有网络VPC

vpc

customergateway : 用户网关

专有网络VPC

vpc

dhcpoptionsset : DHCP选项集

专有网络VPC

vpc

gatewayendpoint : 网关终端节点

专有网络VPC

vpc

ipam : IPAM实例

专有网络VPC

vpc

ipampool : IPAM地址池

专有网络VPC

vpc

ipamresourcediscovery : IPAM资源发现

专有网络VPC

vpc

ipamscope : IPAM作用范围

专有网络VPC

vpc

ipsecserver : IPsec服务端

专有网络VPC

vpc

ipv4gateway : IPv4网关

专有网络VPC

vpc

ipv6gateway : IPv6网关

专有网络VPC

vpc

natgateway : NAT网关

专有网络VPC

vpc

peerconnection : VPC对等连接

专有网络VPC

vpc

publicipaddresspool : 弹性公网IP地址池

专有网络VPC

vpc

sslvpnclientcert : SSL客户端

专有网络VPC

vpc

sslvpnserver : SSL服务端

专有网络VPC

vpc

trafficmirrorfilter : 流量镜像筛选条件

专有网络VPC

vpc

trafficmirrorsession : 流量镜像会话

专有网络VPC

vpc

vpc : 专有网络

专有网络VPC

vpc

vpnattachment : IPsec连接(绑定CEN)

专有网络VPC

vpc

vpnconnection : IPsec连接

专有网络VPC

vpc

vpngateway : VPN网关

说明

对于暂不支持资源组的资源类型,如有需要,您可以在资源组控制台提交反馈。

image

不支持资源组级别授权的操作

专有网络VPC中不支持资源组级别授权的操作(Action)如下:

操作(Action)

操作描述

vpc:AddBandwidthPackageIps

-

vpc:AddGlobalAccelerationInstanceIp

调用AddGlobalAccelerationInstanceIp接口添加EIP到指定的带宽共享实例中。

vpc:AddIPv6TranslatorAclListEntry

在访问控制策略组中添加IP条目。

vpc:AllocateVpcIpv6Cidr

预留指定的IPv6地址段。

vpc:CancelExpressCloudConnection

-

vpc:CheckVpnBgpEnabled

调用CheckVpnBgpEnabled接口查询IPsec连接所属的地域是否支持BGP功能。

vpc:ConvertBandwidthPackage

转换NAT带宽包。

vpc:CreaeNatGateway

-

vpc:CreateBandwidthPackage

-

vpc:CreateBondRouterInterfaceConnection

-

vpc:CreateExpressCloudConnection

调用CreateExpressCloudConnection创建高速上云服务实例。

vpc:CreateGlobalAccelerationInstance

创建全球加速实例。

vpc:CreateIPv6Translator

创建IPv6转换服务实例。

vpc:CreateIPv6TranslatorAclList

创建访问控制策略组。

vpc:CreateIPv6TranslatorEntry

为指定的IPv6转换服务实例添加IPv6转换映射条目。

vpc:CreateNqa

-

vpc:DeleteBandwidthPackage

-

vpc:DeleteGlobalAccelerationInstance

删除全球加速实例。

vpc:DeleteIPv6Translator

删除IPv6转换服务实例。

vpc:DeleteIPv6TranslatorAclList

删除访问控制策略组。只有当访问控制策略组没有绑定任何IPv6转换映射时,才可以删除。

vpc:DeleteIPv6TranslatorEntry

删除IPv6转换映射条目。

vpc:DeleteIpv6EgressOnlyRule

调用DeleteIpv6EgressOnlyRule接口删除仅主动出规则。

vpc:DescribeAccessPoints

-

vpc:DescribeBandwidthPackageMonitorData

-

vpc:DescribeBandwidthPackagePublicIpMonitorData

-

vpc:DescribeGlobalAccelerationInstances

查询已创建的全球加速实例列表。

vpc:DescribeGrantRulesToCbn

-

vpc:DescribeIPv6TranslatorAclListAttributes

查询访问控制策略组的详细信息,包括访问控制策略组中的IP和关联的IPv6转换映射条目的具体信息。

vpc:DescribeIPv6TranslatorAclLists

查询已创建的访问控制策略组。

vpc:DescribeIPv6TranslatorEntries

查询IPv6转换映射条目。

vpc:DescribeInstances

-

vpc:DescribeNetworkQuotas

-

vpc:DescribePublicIpAddress

调用DescribePublicIpAddress接口查询指定地域中位于专有网络的公网IP地址的范围。

vpc:DescribeRouterInterfacesForGlobal

-

vpc:DescribeServerRelatedGlobalAccelerationInstances

查询指定后端服务器绑定的全球加速实例。

vpc:DescribeVPCs

-

vpc:DescribeVpnGatewayAvailableZones

调用DescribeVpnGatewayAvailableZones接口查询指定地域支持部署IPsec连接的可用区列表。

vpc:DescribeVrouters

-

vpc:DescribeZones

-

vpc:DiagnoseVpnConnections

调用DiagnoseVpnConnections接口诊断IPsec连接。

vpc:DiagnoseVpnConnectionsHistory

-

vpc:DiagnoseVpnGateway

调用DiagnoseVpnGateway接口一键诊断指定的VPN网关实例。

vpc:DisableNatGatewayEcsMetric

调用DisableNatGatewayEcsMetric接口关闭ECS流量监控。

vpc:EnableNatGatewayEcsMetric

调用EnableNatGatewayEcsMetric接口开启ECS流量监控。

vpc:GetBusinessAccessPointDetail

-

vpc:GetFlowLogServiceStatus

调用GetFlowLogServiceStatus接口查询流日志功能的开通状态。

vpc:GetNatIpCidrAttribute

-

vpc:GetObject

-

vpc:GetPhysicalConnectionServiceStatus

查看当前账号是否已开通出云流量费。

vpc:GetPublicIpAddressPoolServiceStatus

调用GetPublicIpAddressPoolServiceStatus接口查询IP地址池功能的开通状态。

vpc:GetTrafficMirrorServiceStatus

调用GetTrafficMirrorServiceStatus接口查询流量镜像功能的状态。

vpc:GetVpcIpamServiceStatus

查询IPAM功能的开通状态。

vpc:GetVpnGatewayDiagnoseResult

调用GetVpnGatewayDiagnoseResult接口查询VPN网关实例的一键诊断结果。

vpc:GrantInstanceToCbn

-

vpc:InnerVpcCreateDscp

-

vpc:InnerVpcDeleteDscp

-

vpc:InnerVpcDescribeCrossBorderRouterInterface

-

vpc:InnerVpcDescribeDscp

-

vpc:InnerVpcModifyDscp

-

vpc:InnerVpcRefreshDscp

-

vpc:ListBusinessAccessPointPortUsage

-

vpc:ListBusinessAccessPoints

调用ListBusinessAccessPoints接口查询物理专线的接入点信息。

vpc:ListBusinessRegions

查询专线可购地域列表

vpc:ListGeographicSubRegions

调用ListGeographicSubRegions接口查询地域信息。

vpc:ListNatGatewayEcsMetric

-

vpc:ListVpcCloudInstance

-

vpc:ListVpcEndpointServicesByEndUser

调用ListVpcEndpointServicesByEndUser查询可使用的终端节点服务。

vpc:ModifyBandwidthPackageAttribute

-

vpc:ModifyBandwidthPackageSpec

-

vpc:ModifyBypassToaAttribute

-

vpc:ModifyExpressCloudConnectionAttribute

调用ModifyExpressCloudConnectionAttribute修改高速上云服务连接。

vpc:ModifyGlobalAccelerationInstanceAttributes

修改全球加速实例的名称和描述信息。

vpc:ModifyGlobalAccelerationInstanceSpec

调用ModifyGlobalAccelerationInstanceSpec接口修改全球加速实例的带宽。

vpc:ModifyIPv6TranslatorAclAttribute

修改访问控制策略组的名称。

vpc:ModifyIPv6TranslatorAclListEntry

修改访问控制策略组中的IP条目。

vpc:ModifyIPv6TranslatorAttribute

修改IPv6转换服务实例的名称和描述信息。

vpc:ModifyIPv6TranslatorBandwidth

修改IPv6转换服务实例的带宽。

vpc:ModifyIPv6TranslatorEntry

修改IPv6转换映射条目。

vpc:ModifyIpv6GatewaySpec

-

vpc:OpenFlowLogService

调用OpenFlowLogService接口开通流日志功能。

vpc:OpenPhysicalConnectionService

调用OpenPhysicalConnectionService接口开通出方向流量服务。

vpc:OpenPublicIpAddressPoolService

调用OpenPublicIpAddressPoolService接口开通IP地址池功能。

vpc:OpenTrafficMirrorService

开通流量镜像功能。

vpc:OpenVpcIpamService

开通IPAM功能。

vpc:QueryPconnTrafficPrice

-

vpc:QueryPhysicalConnectionPrice

-

vpc:RejectVpcPeerConnection

调用RejectVpcPeerConnection接口拒绝VPC对等连接实例的请求。

vpc:RemoveBandwidthPackageIps

-

vpc:RemoveGlobalAccelerationInstanceIp

调用RemoveGlobalAccelerationInstanceIp接口从带宽共享实例中移除EIP。

vpc:RemoveIPv6TranslatorAclListEntry

删除访问控制策略组中的IP条目。

vpc:RevokeInstanceFromCbn

-

vpc:SetHaVipMasterInstance

-

vpc:TransformEipSegmentToPublicIpAddressPool

将连续EIP组迁移至IP地址池。

vpc:UnAssociateEipAddress

-

vpc:UnassociateGlobalAccelerationInstance

调用UnassociateGlobalAccelerationInstance接口解绑与全球加速实例关联的后端服务实例。

vpc:UpdateCrossBoarderStatus

-

vpc:associatevpccidrblock

-

vpc:createvpc

-

vpc:deleteBgpNetwork

-

vpc:describeVpcs

-

vpc:releaseIpv6Address

-

对于不支持资源组授权的操作,授权时资源范围选择资源组级别将无效。如果仍需要RAM用户有上述操作权限,您需要创建自定义权限策略,授权时资源范围选择账号级别

image.png以下是两个自定义权限策略示例,您可以根据实际需要调整策略内容。

  • 允许不支持资源组级别授权的全部只读操作:Action中列举不支持资源组级别授权的所有只读操作。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "vpc:CheckVpnBgpEnabled",
            "vpc:DescribeAccessPoints",
            "vpc:DescribeBandwidthPackageMonitorData",
            "vpc:DescribeBandwidthPackagePublicIpMonitorData",
            "vpc:DescribeGlobalAccelerationInstances",
            "vpc:DescribeGrantRulesToCbn",
            "vpc:DescribeIPv6TranslatorAclListAttributes",
            "vpc:DescribeIPv6TranslatorAclLists",
            "vpc:DescribeIPv6TranslatorEntries",
            "vpc:DescribeInstances",
            "vpc:DescribeNetworkQuotas",
            "vpc:DescribePublicIpAddress",
            "vpc:DescribeRouterInterfacesForGlobal",
            "vpc:DescribeServerRelatedGlobalAccelerationInstances",
            "vpc:DescribeVPCs",
            "vpc:DescribeVpnGatewayAvailableZones",
            "vpc:DescribeVrouters",
            "vpc:DescribeZones",
            "vpc:GetBusinessAccessPointDetail",
            "vpc:GetFlowLogServiceStatus",
            "vpc:GetNatIpCidrAttribute",
            "vpc:GetObject",
            "vpc:GetPhysicalConnectionServiceStatus",
            "vpc:GetPublicIpAddressPoolServiceStatus",
            "vpc:GetTrafficMirrorServiceStatus",
            "vpc:GetVpcIpamServiceStatus",
            "vpc:GetVpnGatewayDiagnoseResult",
            "vpc:ListBusinessAccessPointPortUsage",
            "vpc:ListBusinessAccessPoints",
            "vpc:ListBusinessRegions",
            "vpc:ListGeographicSubRegions",
            "vpc:ListNatGatewayEcsMetric",
            "vpc:ListVpcCloudInstance",
            "vpc:ListVpcEndpointServicesByEndUser"
          ],
          "Resource": "*"
        }
      ]
    }
    
  • 允许不支持资源组级别授权的全部操作:Action中列举不支持资源组级别授权的全部操作。

    {
      "Version": "1",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "vpc:AddBandwidthPackageIps",
            "vpc:AddGlobalAccelerationInstanceIp",
            "vpc:AddIPv6TranslatorAclListEntry",
            "vpc:AllocateVpcIpv6Cidr",
            "vpc:CancelExpressCloudConnection",
            "vpc:CheckVpnBgpEnabled",
            "vpc:ConvertBandwidthPackage",
            "vpc:CreaeNatGateway",
            "vpc:CreateBandwidthPackage",
            "vpc:CreateBondRouterInterfaceConnection",
            "vpc:CreateExpressCloudConnection",
            "vpc:CreateGlobalAccelerationInstance",
            "vpc:CreateIPv6Translator",
            "vpc:CreateIPv6TranslatorAclList",
            "vpc:CreateIPv6TranslatorEntry",
            "vpc:CreateNqa",
            "vpc:DeleteBandwidthPackage",
            "vpc:DeleteGlobalAccelerationInstance",
            "vpc:DeleteIPv6Translator",
            "vpc:DeleteIPv6TranslatorAclList",
            "vpc:DeleteIPv6TranslatorEntry",
            "vpc:DeleteIpv6EgressOnlyRule",
            "vpc:DescribeAccessPoints",
            "vpc:DescribeBandwidthPackageMonitorData",
            "vpc:DescribeBandwidthPackagePublicIpMonitorData",
            "vpc:DescribeGlobalAccelerationInstances",
            "vpc:DescribeGrantRulesToCbn",
            "vpc:DescribeIPv6TranslatorAclListAttributes",
            "vpc:DescribeIPv6TranslatorAclLists",
            "vpc:DescribeIPv6TranslatorEntries",
            "vpc:DescribeInstances",
            "vpc:DescribeNetworkQuotas",
            "vpc:DescribePublicIpAddress",
            "vpc:DescribeRouterInterfacesForGlobal",
            "vpc:DescribeServerRelatedGlobalAccelerationInstances",
            "vpc:DescribeVPCs",
            "vpc:DescribeVpnGatewayAvailableZones",
            "vpc:DescribeVrouters",
            "vpc:DescribeZones",
            "vpc:DiagnoseVpnConnections",
            "vpc:DiagnoseVpnConnectionsHistory",
            "vpc:DiagnoseVpnGateway",
            "vpc:DisableNatGatewayEcsMetric",
            "vpc:EnableNatGatewayEcsMetric",
            "vpc:GetBusinessAccessPointDetail",
            "vpc:GetFlowLogServiceStatus",
            "vpc:GetNatIpCidrAttribute",
            "vpc:GetObject",
            "vpc:GetPhysicalConnectionServiceStatus",
            "vpc:GetPublicIpAddressPoolServiceStatus",
            "vpc:GetTrafficMirrorServiceStatus",
            "vpc:GetVpcIpamServiceStatus",
            "vpc:GetVpnGatewayDiagnoseResult",
            "vpc:GrantInstanceToCbn",
            "vpc:InnerVpcCreateDscp",
            "vpc:InnerVpcDeleteDscp",
            "vpc:InnerVpcDescribeCrossBorderRouterInterface",
            "vpc:InnerVpcDescribeDscp",
            "vpc:InnerVpcModifyDscp",
            "vpc:InnerVpcRefreshDscp",
            "vpc:ListBusinessAccessPointPortUsage",
            "vpc:ListBusinessAccessPoints",
            "vpc:ListBusinessRegions",
            "vpc:ListGeographicSubRegions",
            "vpc:ListNatGatewayEcsMetric",
            "vpc:ListVpcCloudInstance",
            "vpc:ListVpcEndpointServicesByEndUser",
            "vpc:ModifyBandwidthPackageAttribute",
            "vpc:ModifyBandwidthPackageSpec",
            "vpc:ModifyBypassToaAttribute",
            "vpc:ModifyExpressCloudConnectionAttribute",
            "vpc:ModifyGlobalAccelerationInstanceAttributes",
            "vpc:ModifyGlobalAccelerationInstanceSpec",
            "vpc:ModifyIPv6TranslatorAclAttribute",
            "vpc:ModifyIPv6TranslatorAclListEntry",
            "vpc:ModifyIPv6TranslatorAttribute",
            "vpc:ModifyIPv6TranslatorBandwidth",
            "vpc:ModifyIPv6TranslatorEntry",
            "vpc:ModifyIpv6GatewaySpec",
            "vpc:OpenFlowLogService",
            "vpc:OpenPhysicalConnectionService",
            "vpc:OpenPublicIpAddressPoolService",
            "vpc:OpenTrafficMirrorService",
            "vpc:OpenVpcIpamService",
            "vpc:QueryPconnTrafficPrice",
            "vpc:QueryPhysicalConnectionPrice",
            "vpc:RejectVpcPeerConnection",
            "vpc:RemoveBandwidthPackageIps",
            "vpc:RemoveGlobalAccelerationInstanceIp",
            "vpc:RemoveIPv6TranslatorAclListEntry",
            "vpc:RevokeInstanceFromCbn",
            "vpc:SetHaVipMasterInstance",
            "vpc:TransformEipSegmentToPublicIpAddressPool",
            "vpc:UnAssociateEipAddress",
            "vpc:UnassociateGlobalAccelerationInstance",
            "vpc:UpdateCrossBoarderStatus",
            "vpc:associatevpccidrblock",
            "vpc:createvpc",
            "vpc:deleteBgpNetwork",
            "vpc:describeVpcs",
            "vpc:releaseIpv6Address"
          ],
          "Resource": "*"
        }
      ]
    }
    
重要

获得账号级别权限的RAM用户或RAM角色,能够操作整个账号范围内的相关资源。请务必确认所授予的权限是否符合预期,遵从最小授权原则谨慎分配权限。

常见问题

如何查看当前资源属于哪个资源组?

  • 方式一:单击资源名称,进入资源的详情页面,即可查看到当前资源的资源组。

  • 方式二:登录资源管理控制台,单击资源中心 > 资源搜索,在左侧选择目标资源所属账号(默认为当前账号),通过筛选条件定位目标资源,即可查看其所属资源组。

如何查看当前产品在某个资源组下的所有资源?

  • 方式一:登录资源管理控制台,单击资源中心 > 资源搜索,然后在左侧的资源所属账号(默认为当前账号)下选择单击目标资源组名称,最后在右侧的选择资源类型中选择当前产品,即可查看当前产品在某个资源组下的所有资源。

  • 方式二:登录资源管理控制台,单击资源组 > 资源组,然后找到目标资源组,单击其所在行的操作列下的资源管理,最后在资源管理页面上方的产品下拉框中选择当前产品,即可查看当前产品在某个资源组下的所有资源。

如何批量修改多个资源的资源组?

登录资源管理控制台,单击资源组 > 资源组,在目标资源组所在行的操作列下,单击资源管理以进入资源管理页面。通过筛选条件定位多个目标资源,批量勾选第一列的复选框后单击下方转移资源组,并按页面提示完成资源组修改。