安全组添加规则

最近更新时间:2024-03-12 02:03:05

我的收藏

1. 接口描述

接口请求域名: vpc.tencentcloudapi.com 。

本接口(CreateSecurityGroupPolicies)用于创建安全组规则(SecurityGroupPolicy)。

在 SecurityGroupPolicySet 参数中:

  • Version 安全组规则版本号,用户每次更新安全规则版本会自动加1,防止您更新的路由规则已过期,不填不考虑冲突。
  • 在创建出站和入站规则(Egress 和 Ingress)时:
    • Protocol 字段支持输入TCP, UDP, ICMP, ICMPV6, GRE, ALL。
    • CidrBlock 字段允许输入符合cidr格式标准的任意字符串。在基础网络中,如果 CidrBlock 包含您的账户内的云服务器之外的设备在腾讯云的内网 IP,并不代表此规则允许您访问这些设备,租户之间网络隔离规则优先于安全组中的内网规则。
    • Ipv6CidrBlock 字段允许输入符合IPv6 cidr格式标准的任意字符串。在基础网络中,如果Ipv6CidrBlock 包含您的账户内的云服务器之外的设备在腾讯云的内网 IPv6,并不代表此规则允许您访问这些设备,租户之间网络隔离规则优先于安全组中的内网规则。
    • SecurityGroupId 字段允许输入与待修改的安全组位于相同项目中的安全组 ID,包括这个安全组 ID 本身,代表安全组下所有云服务器的内网 IP。使用这个字段时,这条规则用来匹配网络报文的过程中会随着被使用的这个 ID 所关联的云服务器变化而变化,不需要重新修改。
    • Port 字段允许输入一个单独端口号,或者用减号分隔的两个端口号代表端口范围,例如80或8000-8010。只有当 Protocol 字段是 TCP 或 UDP 时,Port 字段才被接受,即 Protocol 字段不是 TCP 或 UDP 时,Protocol 和 Port 是排他关系,不允许同时输入,否则会接口报错。
    • Action 字段只允许输入 ACCEPT 或 DROP。
    • CidrBlock, Ipv6CidrBlock, SecurityGroupId, AddressTemplate 四者是排他关系,不允许同时输入,Protocol + Port 和 ServiceTemplate 二者是排他关系,不允许同时输入。IPv6CidrBlock和ICMP是排他关系,如需使用,请输入ICMPV6。
    • 一次请求中只能创建单个方向的规则, 如果需要指定索引(PolicyIndex)参数, 多条规则的索引必须一致。如想在规则最前面插入一条,则填0即可,如果想在最后追加,该字段可不填。

默认接口请求频率限制:100次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateSecurityGroupPolicies。
Version String 公共参数,本接口取值:2017-03-12。
Region String 公共参数,详见产品支持的 地域列表
SecurityGroupId String 安全组实例ID,例如sg-33ocnj9n,可通过DescribeSecurityGroups获取。
示例值:sg-33ocnj9n
SecurityGroupPolicySet SecurityGroupPolicySet 安全组规则集合。

3. 输出参数

参数名称 类型 描述
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 安全组添加出站规则

安全组添加出站规则

输入示例

POST / HTTP/1.1
Host: vpc.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateSecurityGroupPolicies
<公共请求参数>

{
    "SecurityGroupId": "sg-ohuuioma",
    "SecurityGroupPolicySet": {
        "Ingress": [
            {
                "PolicyIndex": 0,
                "Protocol": "All",
                "PolicyDescription": "测试",
                "AddressTemplate": {
                    "AddressGroupId": "ipmg-o8w64jdg",
                    "AddressId": "ipm-ngk4c2dw"
                },
                "Ipv6CidrBlock": "::/0",
                "SecurityGroupId": "sg-ohuuioma",
                "ModifyTime": "2020-12-03 16:12:15",
                "Action": "accept",
                "ServiceTemplate": {
                    "ServiceGroupId": "sg-ohuuioma",
                    "ServiceId": "ppm-f5n1f8da"
                },
                "CidrBlock": "0.0.0.0/0",
                "Port": "80"
            }
        ],
        "Egress": [
            {
                "PolicyIndex": 0,
                "Protocol": "All",
                "PolicyDescription": "测试",
                "AddressTemplate": {
                    "AddressGroupId": "ipmg-o8w64jdg",
                    "AddressId": "ipm-ngk4c2dw"
                },
                "Ipv6CidrBlock": "::/0",
                "SecurityGroupId": "sg-ohuuioma",
                "ModifyTime": "2020-12-03 16:12:15",
                "Action": "accept",
                "ServiceTemplate": {
                    "ServiceGroupId": "sg-ohuuioma",
                    "ServiceId": "ppm-f5n1f8da"
                },
                "CidrBlock": "0.0.0.0/0",
                "Port": "80"
            }
        ]
    }
}

输出示例

{
    "Response": {
        "RequestId": "53ee3ed3-c9ed-48ba-8a57-8624b9c0d3b8"
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
InternalError.ModuleError 内部模块错误。
InvalidParameter 参数错误。
InvalidParameter.Coexist 参数不支持同时指定。
InvalidParameterValue 参数取值错误。
InvalidParameterValue.Empty 缺少参数。
InvalidParameterValue.LimitExceeded 参数值超出限制。
InvalidParameterValue.Malformed 入参格式不合法。
InvalidParameterValue.MemberApprovalApplicationIdMismatch 指定审批单号和资源不匹配。
InvalidParameterValue.MemberApprovalApplicationNotApproved 流程服务审批单未审批。
InvalidParameterValue.MemberApprovalApplicationRejected 流程服务审批单被拒绝。
InvalidParameterValue.MemberApprovalApplicationStarted 该请求需要走BPAAS流程服务审批,当前发起审批中。
InvalidParameterValue.Range 参数值不在指定范围。
InvalidParameterValue.TooLong 无效参数值。参数值太长。
LimitExceeded 超过配额限制。
LimitExceeded.SecurityGroupPolicySet 安全组规则数量超过上限。
ResourceNotFound 资源不存在。
UnknownParameter.WithGuess 参数无法识别,可以尝试相似参数代替。
UnsupportedOperation.ClbPolicyExceedLimit 负载均衡的安全组规则已达到上限。
UnsupportedOperation.ClbPolicyLimit 公网Clb不支持该规则。
UnsupportedOperation.DuplicatePolicy 安全组规则重复。
UnsupportedOperation.LockedResources 资源被锁定。
UnsupportedOperation.VersionMismatch 指定安全组规则版本号和当前最新版本不一致。