更新ACL规则
功能介绍
更新ACL规则
URI
PUT /v1/{project_id}/acl-rule/{acl_rule_id}
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
project_id | 是 | String | 项目ID, 可以从调API处获取,也可以从控制台获取。项目ID获取方式 |
acl_rule_id | 是 | String | 规则id,可通过查询防护规则接口查询获得,通过返回值中的data.records.rule_id(.表示各对象之间层级的区分)获得。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
enterprise_project_id | 否 | String | 企业项目ID,用户根据组织规划企业项目,对应的ID为企业项目ID,可通过如何获取企业项目ID获取,用户未开启企业项目时为0 |
fw_instance_id | 否 | String | 防火墙id,可通过防火墙ID获取方式获取 |
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
X-Auth-Token | 是 | String | 用户Token。可通过如何获取用户Token获取。 |
Content-Type | 是 | String | 内容类型,只有application/json的值是适用的 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
address_type | 否 | Integer | 地址Internet协议类型0 ipv4,1 ipv6 |
name | 否 | String | 规则名称 |
direction | 否 | Integer | 方向:0表示外到内,1表示内到外,规则type=0(互联网规则)或者type=2(nat规则)时方向值必填 |
action_type | 否 | Integer | 规则动作,0表示允许通行(permit),1表示拒绝通行(deny) |
status | 否 | Integer | 规则启用状态,0表示禁用,1表示启用 |
applications | 否 | Array of strings | 规则应用列表,规则应用类型包括:“HTTP”,"HTTPS","TLS1",“DNS”,“SSH”,“MYSQL”,“SMTP”,“RDP”,“RDPS”,“VNC”,“POP3”,“IMAP4”,“SMTPS”,“POP3S”,“FTPS”,“ANY”,“BGP”等。 |
applicationsJsonString | 否 | String | 应用列表applications字段转化的json字符串。 |
description | 否 | String | 规则描述 |
long_connect_time_hour | 否 | Long | 长连接时长对应小时 |
long_connect_time_minute | 否 | Long | 长连接时长对应分钟 |
long_connect_time_second | 否 | Long | 长连接时长秒 |
long_connect_time | 否 | Long | 长连接时长 |
long_connect_enable | 否 | Integer | 是否支持长连接,0表示不支持,1表示支持 |
source | 否 | RuleAddressDto object | 源地址传输对象 |
destination | 否 | RuleAddressDto object | 目的地址传输对象 |
service | 否 | RuleServiceDto object | 服务对象 |
type | 否 | Integer | 规则类型,0:互联网规则,1:vpc规则,2:nat规则 |
tag | 否 | TagsVO object | 规则附带标签对象 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
type | 是 | Integer | 输入类型0手工输入,1关联IP地址组,2域名,3地理位置,4域名组,5多对象,6域名组-网络型,7域名组-应用型。 |
address_type | 否 | Integer | 地址Internet协议类型0 ipv4,1 ipv6,当type为0手动输入类型时不能为空 |
address | 否 | String | IP地址信息,当type为0手动输入类型时不能为空 |
address_set_id | 否 | String | 关联IP地址组ID,当type为1关联IP地址组类型时不能为空,可通过查询地址组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。 |
address_set_name | 否 | String | 关联IP地址组名称,当type为1关联IP地址组类型时不能为空,可通过查询地址组列表接口查询获得,通过返回值中的data.records.name(.表示各对象之间层级的区分)获得。 |
domain_address_name | 否 | String | type为2(域名)和7(应用域名组)具体内容根据type中7修改后的类型名称 |
region_list_json | 否 | String | 规则地域列表json值 |
region_list | 否 | Array of IpRegionDto objects | 规则地域列表 |
domain_set_id | 否 | String | 域名组id,type为4(域名组)或7(域名组-应用型)时不能为空。可通过查询域名组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。 |
domain_set_name | 否 | String | 域名组名称,type为4(域名组)或7(域名组-应用型)时不能为空。可通过查询域名组列表接口查询获得,通过返回值中的data.records.name(.表示各对象之间层级的区分)获得。 |
ip_address | 否 | Array of strings | IP地址列表,当type为5(多对象)时不能为空。 |
address_group | 否 | Array of strings | 地址组id列表,当type为5(多对象)时不能为空。地址组id可通过查询地址组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。查询条件中query_address_set_type需要设置为0自定义地址组。 |
address_group_names | 否 | Array of AddressGroupVO objects | 地址组名称列表 |
address_set_type | 否 | Integer | 地址组类型,当type为1(关联IP地址组)时不能为空。0表示自定义地址组,1表示WAF回源IP地址组,2表示DDoS回源IP地址组,3表示NAT64转换地址组 |
predefined_group | 否 | Array of strings | 预定义地址组id列表,当type为5(多对象)时不能为空。地址组id可通过查询地址组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。查询条件中query_address_set_type需要设置为1预定义地址组。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
region_id | 否 | String | 区域id,可通过获取账号、IAM用户、项目、用户组、区域、委托的名称和ID获取。 |
region_type | 否 | Integer | 区域类型,0表示国家,1表示省份,2表示大洲,可通过地域信息表获取。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
address_set_type | 否 | Integer | 地址组类型,0表示自定义地址组,1表示WAF回源IP地址组,2表示DDoS回源IP地址组,3表示NAT64转换地址组 |
name | 否 | String | 关联IP地址组名称,可通过查询地址组列表接口查询获得,通过返回值中的data.records.name(.表示各对象之间层级的区分)获得。 |
set_id | 否 | String | 关联IP地址组ID,可通过查询地址组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
type | 是 | Integer | 服务输入类型,0为手动输入类型,1为自动输入类型 |
protocol | 否 | Integer | 协议类型:TCP为6,UDP为17,ICMP为1,ICMPV6为58,ANY为-1,type为0手动类型时不能为空。 |
protocols | 否 | Array of integers | 协议列表,协议类型:TCP为6,UDP为17,ICMP为1,ICMPV6为58,ANY为-1,type为0手动类型时不能为空。 |
source_port | 否 | String | 源端口 |
dest_port | 否 | String | 目的端口 |
service_set_id | 否 | String | 服务组id,当type为1(关联IP地址组)时不能为空,可通过获取服务组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。 |
service_set_name | 否 | String | 服务组名称,当type为1(关联IP地址组)时不能为空,可通过获取服务组列表接口查询获得,通过返回值中的data.records.name(.表示各对象之间层级的区分)获得。 |
custom_service | 否 | Array of ServiceItem objects | 自定义服务 |
predefined_group | 否 | Array of strings | 预定义服务组id列表,服务组id可通过获取服务组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。查询条件中query_service_set_type需要设置为1预定义服务组。 |
service_group | 否 | Array of strings | 服务组id列表,服务组id可通过获取服务组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。查询条件中query_service_set_type需要设置为0自定义服务组。 |
service_group_names | 否 | Array of ServiceGroupVO objects | 服务组名称列表 |
service_set_type | 否 | Integer | 服务组类型,0表示自定义服务组,1表示常用WEB服务,2表示常用远程登录和PING,3表示常用数据库 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
protocol | 否 | Integer | 协议类型:TCP为6,UDP为17,ICMP为1,ICMPV6为58,ANY为-1,RuleServiceDto.type为0时不能为空。 |
source_port | 否 | String | 源端口 |
dest_port | 否 | String | 目的端口 |
description | 否 | String | 服务成员描述 |
name | 否 | String | 服务成员名称 |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
name | 否 | String | 服务组名称 |
protocols | 否 | Array of integers | 协议列表,协议类型:TCP为6,UDP为17,ICMP为1,ICMPV6为58,ANY为-1 |
service_set_type | 否 | Integer | 服务组类型,0表示自定义服务组,1表示预定义服务组 |
set_id | 否 | String | 服务组id,可通过获取服务组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。 |
响应参数
状态码:200
参数 | 参数类型 | 描述 |
|---|---|---|
data | RuleId object | 规则数据 |
状态码:400
参数 | 参数类型 | 描述 |
|---|---|---|
error_code | String | 错误码 |
error_msg | String | 错误描述 |
请求示例
示例为更新一个IPv4类型的外到内的规则,名称为测试规则,源类型为IP地址,地址为1.1.1.1,目的类型为IP地址,目的地址为2.2.2.2,服务类型为服务,协议类型为TCP,源端口为0,目的端口为0,不支持长连接,动作为放行,启用状态为启用
https://{Endpoint}/v1/9d80d070b6d44942af73c9c3d38e0429/acl-rule/ceaa0407-b9c8-4dfd-9eca-b6ead2dfd031
{
"name" : "测试规则",
"status" : 1,
"action_type" : 0,
"description" : "",
"source" : {
"type" : 0,
"address" : "1.1.1.1"
},
"destination" : {
"type" : 0,
"address" : "2.2.2.2"
},
"service" : {
"type" : 0,
"protocol" : 6,
"source_port" : "0",
"dest_port" : "0"
},
"type" : 0,
"address_type" : 0,
"tag" : {
"tag_key" : "",
"tag_value" : ""
},
"long_connect_enable" : 0,
"direction" : 0
} 响应示例
状态码:200
OK
{
"data" : {
"id" : "ceaa0407-b9c8-4dfd-9eca-b6ead2dfd031"
}
} 状态码:400
Bad Request
{
"error_code" : "CFW.00200005",
"error_msg" : "操作内容不存在"
} 状态码
状态码 | 描述 |
|---|---|
200 | OK |
400 | Bad Request |
401 | Unauthorized |
403 | Forbidden |
404 | Not Found |
500 | Internal Server Error |
错误码
请参见错误码。

