云服务器内容精选

  • 请求示例 示例为添加一个IPv4类型的外到内的规则,名称为测试规则,源类型为IP地址,地址为1.1.1.1,目的类型为IP地址,目的地址为2.2.2.2,服务类型为服务,协议类型为TCP,源端口为0,目的端口为0,不支持长连接,动作为放行,启用状态为启用 https://{Endpoint}/v1/9d80d070b6d44942af73c9c3d38e0429/acl-rule { "object_id" : "ae42418e-f077-41a0-9d3b-5b2f5ad9102b", "rules" : [ { "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" }, "address_type" : 0, "tag" : { "tag_key" : "", "tag_value" : "" }, "long_connect_enable" : 0, "direction" : 0, "sequence" : { "top" : 1, "dest_rule_id" : null } } ], "type" : 0 }
  • 响应参数 状态码: 200 表13 响应Body参数 参数 参数类型 描述 data RuleIdList object 创建规则返回值data数据 表14 RuleIdList 参数 参数类型 描述 rules Array of RuleId objects 规则id列表 表15 RuleId 参数 参数类型 描述 id String 规则id name String 规则名称 状态码: 400 表16 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 添加acl响应 { "data" : { "rules" : [ { "id" : "0475c516-0e41-4caf-990b-0c504eebd73f", "name" : "testName" } ] } } 状态码: 400 Bad Request { "error_code" : "CFW.00900016", "error_msg" : "导入任务进行中,请任务结束后再操作" }
  • 请求参数 表3 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。可通过如何获取用户Token获取。 表4 请求Body参数 参数 是否必选 参数类型 描述 object_id 是 String 防护对象id,是创建 云防火墙 后用于区分互联网边界防护和VPC边界防护的标志id,可通过调用查询防火墙实例接口获得,通过返回值中的data.records.protect_objects.object_id(.表示各对象之间层级的区分)获得,注意type为0的为互联网边界防护对象id,type为1的为VPC边界防护对象id,type可通过data.records.protect_objects.type(.表示各对象之间层级的区分)获得 type 是 Integer 规则类型,0:互联网边界规则,1:vpc间规则,2:nat规则,当type取0时,规则源和目的地址需要为公网ip或 域名 ,vpc间规则需要源和目的地址为私有ip,nat规则需要源地址为私网ip,目的地址为公网ip或域名。 rules 是 Array of rules objects 添加规则请求规则列表 表5 rules 参数 是否必选 参数类型 描述 name 是 String 规则名称 sequence 是 OrderRuleAclDto object 修改规则顺序请求体 address_type 是 Integer 地址类型,0表示ipv4,1表示ipv6 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”等。 applicationsJsonString 否 String 应用列表applications字段转化的json字符串。 long_connect_time 否 Long 长连接时长 long_connect_time_hour 否 Long 长连接时长对应小时 long_connect_time_minute 否 Long 长连接时长对应分钟 long_connect_time_second 否 Long 长连接时长秒 long_connect_enable 是 Integer 是否支持长连接,0表示不支持长连接,1表示支持长连接 description 否 String 描述 direction 否 Integer 方向:0表示外到内,1表示内到外,规则type=0(互联网规则)或者type= 2(nat规则)时方向值必填 source 是 RuleAddressDtoForRequest object 源地址传输对象 destination 是 RuleAddressDtoForRequest object 目的地址传输对象 service 是 RuleServiceDto object 服务对象 tag 否 TagsVO object 规则附带标签对象 表6 OrderRuleAclDto 参数 是否必选 参数类型 描述 dest_rule_id 否 String 目标规则id,添加规则位于此规则之后,非置顶时不能为空,置顶时为空,目标规则id可以通过查询防护规则接口获得,通过返回值中的data.records.rule_id(.表示各对象之间层级的区分)获得。 top 否 Integer 是否置顶,0代表非置顶,1代表置顶 bottom 否 Integer 是否置底,0代表非置底,1代表置底 表7 RuleAddressDtoForRequest 参数 是否必选 参数类型 描述 type 是 Integer 地址类型0手工输入,1关联IP地址组,2域名,3地理位置,4域名组,5多对象,6域名组-网络型,7域名组-应用型。 address_type 否 Integer 地址类型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_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预定义地址组。 address_group 否 Array of strings 地址组id列表,当type为5(多对象)时不能为空。地址组id可通过查询地址组列表接口查询获得,通过返回值中的data.records.set_id(.表示各对象之间层级的区分)获得。查询条件中query_address_set_type需要设置为0自定义地址组。 表8 IpRegionDto 参数 是否必选 参数类型 描述 region_id 否 String 区域id,可通过获取账号、 IAM 用户、项目、用户组、区域、委托的名称和ID获取。 description_cn 否 String 区域中文描述,仅当区域为中国区域时使用,可通过地域信息表获取。 description_en 否 String 区域英文描述,仅当区域为非中国区域时使用,可通过地域信息表获取。 region_type 否 Integer 区域类型,0表示国家,1表示省份,2表示大洲,可通过地域信息表获取。 表9 RuleServiceDto 参数 是否必选 参数类型 描述 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表示常用数据库 表10 ServiceItem 参数 是否必选 参数类型 描述 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 服务成员名称 表11 ServiceGroupVO 参数 是否必选 参数类型 描述 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(.表示各对象之间层级的区分)获得。 表12 TagsVO 参数 是否必选 参数类型 描述 tag_key 否 String 规则标签键 tag_value 否 String 规则标签值
  • URI POST /v1/{project_id}/acl-rule 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID, 可以从调API处获取,也可以从控制台获取。项目ID获取方式 表2 Query参数 参数 是否必选 参数类型 描述 enterprise_project_id 否 String 企业项目ID,用户根据组织规划企业项目,对应的ID为企业项目ID,可通过如何获取企业项目ID获取,用户未开启企业项目时为0 fw_instance_id 否 String 防火墙id,可通过防火墙ID获取方式获取
  • URI DELETE /v1/{project_id}/acl-rule/{acl_rule_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 租户项目Id acl_rule_id 是 String 规则Id 表2 Query参数 参数 是否必选 参数类型 描述 enterprise_project_id 否 String 企业项目id,用户支持企业项目后,由企业项目生成的id。 fw_instance_id 否 String 防火墙实例id,创建云防火墙后用于标志防火墙由系统自动生成的标志id,可通过调用查询防火墙实例接口获得。具体可参考APIExlorer和帮助中心FAQ。默认情况下,fw_instance_Id为空时,返回帐号下第一个墙的信息;fw_instance_Id非空时,返回与fw_instance_Id对应墙的信息。