API 文档

黑石私有网络

最近更新时间:2019-12-02 16:05:43

概述

黑石私有网络支持细化到实例级别的权限管理,您可以为人员分配管理特定 VPC 实例的管理权限。

预设策略

预设策略,能帮助您快速授权,而不需要编写策略,但授权粒度会粗些,以下是黑石私有网络的两个预设策略,分别为:

预设策略名 授权范围描述
QcloudBMVPCFullAccess 关联后,获得所有黑石私有网络实例的增、删、改、查操作的权限
QcloudBMVPCReadOnlyAccess 关联后,只能获得查询黑石私有网络实例列表及基本信息的权限

Action、Resource、Condtion列表

以下表格,罗列了在配置黑石私有网络的策略时,需要用到的action、resource、condition。相关概念请参考 访问管理 章节。

  • Action,即操作,对应的是 API。编写策略时,您可以复制表格里内容并粘贴在Action字段中。关联该策略后,即可获得特定 API 的调用权限。
  • Resource,即云资源,当列表中 ACtion 的鉴权参数不为空时,则表示在调用 API 需要指定云资源,否则不需要指定。编写策略时,您可以复制表格里内容并粘贴在策略生成器的 Resource 字段中,但请记得替换$unVpcId、$unSubnetId,$NatId,$PeerId 为真实的实例 ID;关联该策略后,即可获得特定资源的操作权限。
    注意:

    部分 API 鉴权时需要两种类型的实例 ID,例如黑石 NAT 网关绑定 EIP,分别需要被绑定的 NAT 网关以及用于绑定的黑石弹性公网 IP 的实例 ID,这时需要把两种云产品的资源描述都写在 Resource 里。

  • Condition,即生效条件。换句话说 Action 和 Resource 需要在特定的生效条件下,才能鉴权通过。您可以灵活使用 condtion 以做到 VPC 或者 Subnet 粒度的权限管理,例如授权人员管理特定 VPC 内的所有黑石服务器。
    注意:

    Describe 或者 Get 指查询操作,例如拉取多个实例详情等,查询操作鉴权通过后可能会把所有实例信息都返回,而无法区别哪些是有权限哪些是没有权限的实例。但再修改、删除实例时,会再次鉴权。

Action 鉴权参数 功能描述 条件密钥
bmvpc:SubnetBindBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
黑石NAT网关绑定子网 -
bmvpc:SubnetUnBindBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
黑石网关解绑子网 -
bmvpc:EipUnBindBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatIdx
qcs::bmeip:::eipId/$EipId
黑石网关解绑EIP -
bmvpc:EipBindBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
qcs::bmeip:::eipId/$EipId
黑石NAT网关绑定EIP -
bmvpc:UpgradeBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
升级黑石NAT网关 -
bmvpc:DeleteBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
删除黑石NAT网关 -
bmvpc:CreateBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId 创建黑石NAT网关 -
bmvpc:UpdateBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
更新黑石Nat网关绑定信息 -
bmvpc:UnbindIpsToBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
黑石NAT网关解绑IP -
bmvpc:BindIpsToBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
黑石NAT网关绑定IP -
bmvpc:ModifyBmNatGateway qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::natId/$NatId
修改黑石NAT网关名称 -
bmvpc:RegisterBatchIp qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::unSubnetId/$unSubnetId
指定VPC内网IP注册 -
bmvpc:ApplyIps qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::unSubnetId/$unSubnetId
VPC内网IP申请 -
bmvpc:ModifySubnetDhcpRelayFlag qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::unSubnetId/$unSubnetId
修改子网Dhcp -
bmvpc:ModifyBmSubnetAttribute qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::unSubnetId/$unSubnetId
修改黑石私有网络中的子网属性 -
bmvpc:DeleteBmSubnet qcs::bmvpc:::unVpcId/$unVpcId
qcs::bmvpc:::unSubnetId/$unSubnetId
删除黑石私有网络的子网 -
bmvpc:ModifyBmVpcPeeringConnection qcs::bmvpc:::vpcPeerId/$PeerId 黑石激活对等连接申请 -
bmvpc:DeleteBmVpcPeeringConnection qcs::bmvpc:::vpcPeerId/$PeerId 黑石删除对等连接 -
bmvpc:CreateBmVpcPeeringConnection qcs::bmvpc:::vpcPeerId/$PeerId 黑石创建对等连接 -
bmvpc:EnableBmVpcPeeringConnection qcs::bmvpc:::vpcPeerId/$PeerId 黑石激活对等连接申请 -
bmvpc:RejectBmVpcPeeringConnection qcs::bmvpc:::vpcPeerId/$PeerId 黑石拒绝对等连接 -
bmvpc:AcceptBmVpcPeeringConnection qcs::bmvpc:::vpcPeerId/$PeerId 黑石接受对等连接 -
bmvpc:ReturnIps qcs::bmvpc:::unVpcId/$unVpcId 回收VPC子网IP -
bmvpc:ModifyBmRouteTableAttribute qcs::bmvpc:::unVpcId/$unVpcId 修改黑石路由表项 -
bmvpc:ModifyBmVpcAttribute qcs::bmvpc:::unVpcId/$unVpcId 修改黑石VPC属性 -
bmvpc:CreateBmSubnet qcs::bmvpc:::unVpcId/$unVpcId 创建黑石私有网络的子网 -
bmvpc:DelBmInterface qcs::bmvpc:::unVpcId/$unVpcId 物理机从带VLANTAG子网中移除 -
bmvpc:DescribeBmNatSubnetEx - 查询子网被NAT网关使用情况信息 -
bmvpc:DescribeBmNatGateway - 黑石nat网关列表 -
bmvpc:DescribeBmVpcPeeringConnections - 查询黑石对等连接 -
bmvpc:DescribeBmVpcEx - 查询黑石私有网络列表 -
bmvpc:DescribeBmSubnetEx - 查询黑石私有网络中的子网信息 -
bmvpc:DescribeBmSubnetAvailableIp - 获取vpc子网内可用IP -
bmvpc:DescribeBmNatSubnetBindIps - 查看给定Nat下子网绑定的IP -
bmvpc:DescribeBmSubnetIpInfo - 查看给定子网下的IP信息 -
bmvpc:DescribeBmSubnetIps - 拉取子网已分配的IP列表 -
bmvpc:DescribeBmSubnetByCpmId - 拉取物理机加入的所有子网列表 -
bmvpc:DescribeBmCpmBySubnetId - 拉取加入子网的所有物理机列表 -
bmvpc:DescribeBmRouteTableEx - 获取黑石路由表详情 -
bmvpc:CreateBmVpc - 创建黑石私有网络和子网 bmvpc:unVpcId
bmvpc:$unSubnetId
bmvpc:CreateBmInterface qcs::bmvpc:::unVpcId/$unVpcId 物理机加入带VLANTAG子网 bmvpc:unVpcId
bmvpc:$unSubnetId

最佳实践

本章节,我们举例两个场景的策略内容和评估逻辑,帮助您了解如何实现黑石服务器的权限分配。

场景:授权将eip-b2h2rhs5绑定到属于vpc-34cxlz7z的NAT网关:nat-am27agoo以及解绑权限。

场景

策略如下:

{
"version":"2.0",
"statement":[
{
"effect":"allow",
"action":[
"bmvpc:EipBindBmNatGateway",
                "bmvpc:EipUnBindBmNatGateway"

],
"resource":[
"qcs::bmvpc:::natId/nat-am27agoo",
                "qcs::bmvpc:::unVpcId/vpc-34cxlz7z",
                "qcs::bmeip:::eipId/eip-b2h2rhs"

]
}
]
}

评估逻辑:
当调用EipBindBmNatGateway或者EipUnBindBmNatGateway时,CAM会判断传入的NatId,EipId,VpcId是否为nat-am27agoo,vpc-34cxlz7z,eip-b2h2rhs.【是】则鉴权通过,【否】则鉴权失败。

目录