华为云用户手册

  • 响应消息 响应参数 返回状态码为 201: successful operation。 表8 响应Body参数列表 名称 类型 描述 vpn_server vpn_server object VPN服务端。 request_id String 请求ID。 表9 vpn_server 名称 类型 描述 id String 功能说明:VPN服务端 ID。 格式:36位UUID。 响应样例 { "vpn_server": { "id": "2407a20d-0bf7-4530-ba9a-7ffa0cedfa3b" }, "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" }
  • 请求消息 请求参数 表3 请求参数 名称 类型 是否必选 描述 vpn_server CreateServerRequest object 是 创建服务端请求对象。 表4 CreateServerRequest 名称 类型 必选 描述 tunnel_protocol String 否 功能说明:隧道协议类型。 取值范围: SSL:SSL协议。 默认值:SSL。 client_cidr String 是 功能说明:客户端网段。客户端建立连接时,会从该网段分配一个虚拟IP地址。 格式:"点分十进制/掩码"格式,例如192.168.1.0/24。 约束: 客户端网段不能和网关所在VPC默认路由表中的路由存在冲突。 客户端网段不能和本服务端中本端网段列表的网段存在冲突。 客户端网段地址池的IP地址数量需大于网关最大连接数的四倍。 客户端网段不能使用以下特殊网段:0.0.0.0/8, 127.0.0.0/8, 224.0.0.0/4, 240.0.0.0/4, 169.254.0.0/16。 local_subnets Array of strings 是 功能说明:本端网段列表。本端网段是需要访问的云上的目的网段,该网段需要通过VPN与用户侧网络进行互通。 格式:"点分十进制/掩码"格式,例如10.10.1.0/24。 约束: 至少有一个本端网段,默认最多支持填写20个网段。 本端网段不能使用以下特殊网段:0.0.0.0/8, 127.0.0.0/8, 224.0.0.0/4, 240.0.0.0/4。 client_auth_type String 否 功能说明:客户端认证类型。 取值范围: CERT:证书认证。 LOCAL_PASSWORD:口令认证(本地)。 默认值:LOCAL_PASSWORD。 server_certificate server_certificate object 否 服务端证书,隧道协议类型是SSL时必填。推荐使用强密码算法的证书,如RSA3072/4096。 client_ca_certificates Array of client_ca_certificate objects 否 功能说明:客户端CA证书列表,用于对客户端证书进行认证。 约束: 隧道协议类型是SSL,且客户端认证类型为证书认证时必填。 客户端认证类型为证书认证时,至少上传1本客户端CA证书,最多支持上传10本客户端CA证书。 ssl_options ssl_options object 否 SSL隧道协议的可选配置项。隧道协议类型是SSL时,必填。 dns_servers Array of strings 否 功能说明:DNS服务端列表,最多两个DNS 格式:"点分十进制"格式,例如172.16.1.1 表5 server_certificate 名称 类型 必选 描述 id String 是 功能说明:证书ID,为CCM( 云证书管理服务 )中已上传证书的证书ID。 表6 client_ca_certificate 名称 类型 必选 描述 name String 否 证书名称,不填时自动生成。 取值范围:1-64个字符、支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 content String 是 功能说明:证书内容,推荐使用强密码算法的证书,如RSA3072/4096。 格式: -----BEGIN CERTIFICATE----- ************************************* ************************************* -----END CERTIFICATE----- 表7 ssl_options 名称 类型 必选 描述 protocol String 否 功能说明:协议。 取值范围:TCP。 默认值:TCP。 port Integer 否 功能说明:端口号。 取值范围: 443 1194 默认值:443。 encryption_algorithm String 否 功能说明:加密算法。 取值范围: AES-128-GCM AES-256-GCM 默认值:AES-128-GCM。 is_compressed Boolean 否 功能说明:是否压缩。 取值范围: true false 默认值:false。 请求样例 1.使用证书认证方式创建VPN服务端。 POST https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "172.16.0.1/24", "local_subnets": [ "10.16.0.0/24", "10.16.1.0/24" ], "client_auth_type": "CERT", "server_certificate": { "id": "scs*********3922" }, "client_ca_certificates": [ { "name": "client_ca_8sux3d", "content": "-----BEGIN CERTIFICATE-----*******-----END CERTIFICATE-----" } ], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } } 2.使用口令认证方式创建VPN服务端。 { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "172.16.0.1/24", "local_subnets": [ "10.16.0.0/24", "10.16.1.0/24" ], "client_auth_type": "LOCAL_PASSWORD", "server_certificate": { "id": "scs1716171403922" }, "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } }
  • URI POST /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 p2c_vgw_id String 是 P2C VPN网关实例ID。 表2 请求Header参数列表 名称 类型 是否必选 描述 X-Client-Token String 否 功能说明:幂等性标识。 格式:36位UUID。
  • 响应消息 响应参数 返回状态码为 200: 查询成功。 表2 响应Body参数列表 名称 类型 描述 p2c_vpn_gateway p2c_vpn_gateway object vpn_gateway对象 request_id String 请求ID 表3 p2c_vpn_gateway 名称 类型 描述 id String 功能说明:P2C VPN网关ID 格式:36位UUID name String 功能说明:P2C VPN网关名称 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线) status String 功能说明:P2C VPN网关状态 取值范围: PENDING_CREATE:创建中 PENDING_UPDATE:更新中 PENDING_DELETE:删除中 ACTIVE:正常 FAULT:异常 FROZEN:冻结 vpc_id String P2C VPN网关所连接的VPC的ID connect_subnet String P2C VPN网关所使用的VPC子网ID flavor String 功能说明:P2C VPN网关的规格类型 取值范围: Professional1:专业型1 availability_zone_ids Array of strings 可用区列表 eip ResponseEipInfo object 网关绑定的EIP信息 max_connection_number Integer 功能说明:最多支持同时在线的客户端连接数 取值范围:1~500 current_connection_number Integer 当前建连的客户端连接数 enterprise_project_id String 企业项目ID tags Array of VpnResourceTag objects 标签列表 order_id String 订单ID admin_state_up Boolean 功能说明:冻结状态 取值范围: true:未冻结 false:冻结 frozen_effect Integer 功能说明:冻结影响,标识该资源冻结后是否可以删除 取值范围: 0:未冻结 1:冻结可删除 2:冻结不可删除 version string 功能说明:网关版本 created_at String 功能说明:创建时间 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ applied_at String 功能说明:生效时间 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ updated_at String 功能说明:最后一次更新时间 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ 表4 ResponseEipInfo 名称 类型 描述 id String 功能说明:EIP的ID 格式:36位UUID ip_version Integer 功能说明:EIP版本 取值范围:4 ip_billing_info String 功能说明:EIP的订单信息。包年/包月EIP才会返回订单信息,按需计费的EIP不返回 格式:order_id:product_id:region_id:project_id,如: CS 22********LIBIV:00301-******-0--0:br-iaas-odin1:0605768a************c006c7e484aa type String 功能说明:EIP的类型 取值范围:可查看申请EIP表6中type字段的取值范围 ip_address String 功能说明:EIP的公网IPv4地址 格式:ipv4类型地址。例如:88.***.***.11 charge_mode String 功能说明:EIP的带宽计费模式。按流量计费或按带宽计费 取值范围: bandwidth:按带宽计费 traffic:按流量计费 bandwidth_id String 功能说明:EIP的带宽ID 格式:36位UUID bandwidth_size Integer 功能说明:EIP的带宽大小,单位:Mbit/s。每个region能够提供的EIP最大带宽不同,EIP的最大带宽受限于EIP服务,可以使用工单来提高帐户下的EIP的最大带宽 取值范围:1-1000,具体取值请参考弹性公网服务创建EIP资料。 bandwidth_name String 功能说明:EIP的带宽名称 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)、.(点) bandwidth_billing_info String 功能说明:EIP的带宽订单信息。包年/包月EIP带宽才会返回带宽订单信息,按需计费的EIP带宽不返回 格式:order_id:product_id:region_id:project_id,如: CS22********LIBIV:00301-******-0--0:br-iaas-odin1:0605768a************c006c7e484aa share_type String 功能说明: 带宽共享类型 取值范围: PER:独享带宽 表5 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持任意语种字母、数字、空格和_.:=+-@,但首尾不能含有空格,不能以_sys_开头。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持任意语种字母、数字、空格和_.:/=+-@。 响应样例 { "p2c_vpn_gateway": { "id": "6d526e5f-a0c6-44b6-a785-000000000000", "name": "p2c-vpngw-0000", "status": "ACTIVE", "vpc_id": "05b9d7de-9acd-4a05-b497-1a3c75afaa0a", "connect_subnet": "1948ce22-ddc5-4fb6-87b8-dfcc9b176b51", "flavor": "Professional1", "availability_zone_ids": [ "cn-south-1f", "cn-south-1e" ], "eip": { "id": "f0bac06a-88a7-4d37-8e2e-c37691ee4ba2", "ip_version": 4, "ip_billing_info": "CS*********JWT1O:OFFI*************5078:cn-south-1:47190474************98781092d16c", "type": "5_youxuanbgp", "ip_address": "215.***.***.120", "charge_mode": "bandwidth", "bandwidth_id": "3456471c-9dac-40f6-8344-daca14fbd81e", "bandwidth_size": 20, "bandwidth_name": "p2c-vpngw-bandwidth-bd61", "bandwidth_billing_info": "CS*********JWT1O:OFFI*************5078:cn-south-1:47190474************98781092d16c", "share_type": "PER" }, "max_connection_number": 10, "current_connection_number": 0, "enterprise_project_id": "0", "tags": [], "order_id": "CS**********JWT1O", "admin_state_up": true, "frozen_effect": 0, "created_at": "2024-06-14T10:24:12.147Z", "updated_at": "2024-06-14T10:24:12.147Z" }, "request_id": "2ddd2f6107a8164ce6f6268bd991e57c" }
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表9 响应Body参数列表 名称 类型 描述 vpn_connections Array of CreateResponseVpnConnection object vpn_connections对象数组。 request_id String 请求ID。 表10 CreateResponseVpnConnection 名称 类型 描述 id String 功能说明:VPN连接ID。 格式:36位UUID。 name String 功能说明:VPN连接名称。 取值范围:1-64个字符,支持数字、英文字母、中文(\u4e00 - \u9fa5)、_(下划线)、-(中划线)。 vgw_id String 功能说明:VPN网关ID。 格式:36位UUID。 vgw_ip String 功能说明: VPN网关EIP的ID或接入私网IP。 格式:36位UUID或点分十进制IPv4地址(如192.168.45.7)。 style String 功能说明:连接模式。 取值范围: POLICY: 策略模式。 STATIC: 静态路由模式。 BGP: bgp路由模式。 POLICY-TEMPLATE: 策略模板模式。 cgw_id String 功能说明:对端网关ID。 格式:36位UUID。 peer_subnets Array of String IPv4对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv6时不返回。 peer_subnets_v6 Array of String IPv6对端子网。当VPN网关的关联模式为ER并且style字段为BGP或POLICY、或VPN网关的IP协议版本号为IPv4时不返回。 tunnel_local_address String 路由模式下配置在VPN网关上的tunnel接口地址。仅当style为STATIC或BGP时有效。 tunnel_peer_address String 路由模式下配置在用户侧设备上的tunnel接口地址。仅当style为STATIC或BGP时有效。 enable_nqa Boolean 功能说明:开启NQA检测。仅当style为STATIC时返回。 取值范围:true,false。 policy_rules Array of PolicyRule objects IPv4策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv4时返回实际的策略规则组。 policy_rules_v6 Array of PolicyRule objects IPv6策略模式的策略规则组。仅当style为POLICY且VPN网关的IP协议版本号为IPv6时返回实际的策略规则组。 ikepolicy IkePolicy object ike策略对象。 ipsecpolicy IpsecPolicy object ipsec策略对象。 created_at String 创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 最后一次更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 enterprise_project_id String 功能说明:企业项目ID。 格式:36位UUID。与vgw_id所标识VPN网关的企业项目ID一致。 ha_role String 功能说明:主备模式VPN网关下的连接时,'master'表示主连接,'slave'表示备连接。双活模式下的连接ha_role都是'master'。 默认值:master。 tags Array of VpnResourceTag objects 标签列表。 表11 PolicyRule 名称 类型 描述 source String 源地址网段。 destination Array of String 目的地址网段。单个IPv4网段格式示例:192.168.52.0/24。单个IPv6网段格式示例:16af:cacc:1097::/48。每个PolicyRule最多返回50个。 表12 IkePolicy 名称 类型 描述 ike_version String 功能说明:IKE版本号。 取值范围:v1, v2。 phase1_negotiation_mode String 功能说明:协商模式。仅当IKE版本为v1时返回。 取值范围: main:主模式,协商过程安全性高。 aggressive:野蛮模式,协商快速且协商成功率高。 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 dh_group String 功能说明:第一阶段密钥交换使用的DH组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21。 authentication_method String 功能说明:ike协商时的认证方法。 取值范围: pre-share:预共享密钥。 digital-envelope-v2:国密数字信封。 lifetime_seconds Integer 功能说明:表示SA的生存周期,当该生存周期超时后IKE SA将自动更新。 取值范围:60-604800,单位:秒。 local_id_type String 功能说明:本端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 local_id String 本端ID。当local_id_type为ip时返回创建或更新VPN连接时指定的本端ID,如果未指定本端ID则返回VPN连接所使用的VPN网关IP;当local_id_type为fqdn时返回创建或更新VPN连接时指定的本端ID。 当VPN网关flavor为GM时不返回。 peer_id_type String 功能说明:对端ID类型,当VPN网关flavor为GM时不返回。 取值范围: ip。 fqdn。 peer_id String 对端ID。当peer_id_type为ip时返回创建或更新VPN连接时指定的对端ID,如果未指定则返回对端网关的IP;当peer_id_type为fqdn时返回创建或更新VPN连接时指定的对端ID。 当VPN网关flavor为GM时不返回。 dpd Dpd object 对等体存活检测对象。 表13 Dpd 名称 类型 描述 timeout Integer 功能说明:对等体存活检测报文重传间隔。 取值范围:2-60,单位:秒。 interval Integer 功能说明:对等体存活检测空闲时间。 取值范围:10-3600,单位:秒。 msg String 功能说明:对等体存活检测报文格式。 取值范围: seq-hash-notify:指定DPD报文中的载荷顺序是hash-notify。 seq-notify-hash:指定DPD报文中的载荷顺序是notify-hash。 表14 IpsecPolicy 名称 类型 描述 authentication_algorithm String 功能说明:认证算法。 取值范围:sha2-512,sha2-384,sha2-256,sha1,md5,sm3。 encryption_algorithm String 功能说明:加密算法。 取值范围:aes-256-gcm-16,aes-128-gcm-16,aes-256,aes-192,aes-128,3des,sm4。 pfs String 功能说明:PFS使用的DH密钥组,当VPN网关flavor为GM时不返回。 取值范围:group1,group2,group5,group14,group15,group16,group19,group20,group21,disable。 transform_protocol String 功能说明:传输协议。 取值范围: esp:封装安全协议。 lifetime_seconds Integer 功能说明:表示配置IPSec连接建立的隧道以时间为基准的生存周期。 取值范围:30-604800,单位:秒。 encapsulation_mode String 功能说明:报文封装模式。 取值范围: tunnel:隧道模式。 表15 VpnResourceTag 名称 类型 描述 key String 功能说明:标签的键。 取值范围:1-128个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 value String 功能说明:标签的值。 取值范围:0-255个字符,支持数字、英文字母、中文、西班牙语、葡语、空格,以及以下字符:_.:=+-@。 响应样例 批量创建静态路由模式连接的响应。 { "vpn_connections": [ { "id": "cf91c03c-9679-495f-a201-3622a1aec817", "name": "vpn-b8fa", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "0d0f4af1-42b9-41eb-97b9-b4d41a0bf9c4", "style": "STATIC", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.12.37/30", "tunnel_peer_address": "169.254.12.38/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.173", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:53:23.557Z", "updated_at": "2025-02-21T03:53:23.557Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "64c09578-a23c-4d9d-9c64-56b2f9a74695", "name": "vpn-ec21", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-d780-4d8b-83bb-6f878f662005", "style": "STATIC", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.60.229/30", "tunnel_peer_address": "169.254.60.230/30", "enable_nqa": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "215.***.***.55", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:53:23.226Z", "updated_at": "2025-02-21T03:53:23.226Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "3c53db019753c69323303c198af58a85" } 批量创建策略模式连接的响应。 { "vpn_connections": [ { "id": "db06a7cb-e3b5-4c8c-b682-40ed54e8eb54", "name": "vpn-ed37", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-d780-4d8b-83bb-6f878f662005", "style": "POLICY", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.44.197/30", "tunnel_peer_address": "169.254.44.198/30", "policy_rules": [ { "rule_index": 1, "source": "192.168.37.0/24", "destination": [ "192.168.2.0/24" ] } ], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "215.***.***.55", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:59:50.341Z", "updated_at": "2025-02-21T03:59:50.341Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "9f5220fd-f674-420c-9df7-6b6420a3ae99", "name": "vpn-d0c2", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "0d0f4af1-42b9-41eb-97b9-b4d41a0bf9c4", "style": "POLICY", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.192.61/30", "tunnel_peer_address": "169.254.192.62/30", "policy_rules": [ { "rule_index": 1, "source": "192.168.37.0/24", "destination": [ "192.168.2.0/24" ] } ], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "dh_group": "group15", "authentication_method": "pre-share", "lifetime_seconds": 86400, "local_id_type": "ip", "local_id": "10.***.***.173", "peer_id_type": "ip", "peer_id": "2.***.***.2", "dpd": { "interval": 30, "timeout": 15, "msg": "seq-hash-notify" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-256", "encryption_algorithm": "aes-128", "pfs": "group15", "transform_protocol": "esp", "lifetime_seconds": 3600, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T03:59:50.651Z", "updated_at": "2025-02-21T03:59:50.651Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "81237dad5e1338b1818cd6582781b610" } 批量创建bgp路由模式连接的响应。 { "vpn_connections": [ { "id": "5ddf5d02-c746-4075-be4b-95e9213e1c3c", "name": "vpn-1655", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "0d0f4af1-42b9-41eb-97b9-b4d41a0bf9c4", "style": "BGP", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_hub": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "dh_group": "group16", "authentication_method": "pre-share", "lifetime_seconds": 172800, "local_id_type": "fqdn", "local_id": "123***", "peer_id_type": "fqdn", "peer_id": "456***", "dpd": { "interval": 60, "timeout": 30, "msg": "seq-notify-hash" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "pfs": "group16", "transform_protocol": "esp", "lifetime_seconds": 7200, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T06:50:25.238Z", "updated_at": "2025-02-21T06:50:25.238Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] }, { "id": "bb3632dd-f517-4e94-96b7-977c70d28966", "name": "vpn-1341", "vgw_id": "8030f6d6-32a8-4d20-a7f8-50a7a826e2f8", "vgw_ip": "1fb97767-d780-4d8b-83bb-6f878f662005", "style": "BGP", "cgw_id": "12f3577a-cbd8-4602-b68c-ecbf792fcec5", "peer_subnets": [ "192.168.2.0/24" ], "tunnel_local_address": "169.254.56.225/30", "tunnel_peer_address": "169.254.56.226/30", "enable_hub": false, "policy_rules": [], "ikepolicy": { "ike_version": "v2", "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "dh_group": "group16", "authentication_method": "pre-share", "lifetime_seconds": 172800, "local_id_type": "fqdn", "local_id": "123***", "peer_id_type": "fqdn", "peer_id": "456***", "dpd": { "interval": 60, "timeout": 30, "msg": "seq-notify-hash" } }, "ipsecpolicy": { "authentication_algorithm": "sha2-512", "encryption_algorithm": "aes-256", "pfs": "group16", "transform_protocol": "esp", "lifetime_seconds": 7200, "encapsulation_mode": "tunnel" }, "created_at": "2025-02-21T06:50:25.5Z", "updated_at": "2025-02-21T06:50:25.5Z", "enterprise_project_id": "0", "ha_role": "master", "tags": [], "policy_rules_v6": [] } ], "request_id": "938ea2bba48836a429c741bd6f7627a4" }
  • 响应消息 响应参数 返回状态码为 200: 查询成功。 表2 响应Body参数列表 名称 类型 描述 log_config log_config object log_config对象。 request_id String 请求ID。 表3 log_config 名称 类型 描述 log_group_id String 功能说明:P2C VPN网关的连接日志所配置的日志组ID。 log_stream_id String 功能说明:P2C VPN网关的连接日志所配置的日志流ID。 响应样例 { "log_config": { "log_group_id": "05c4052d-8d14-488f-aa00-19fea5a25fdd", "log_stream_id": "d9d85143-e1e1-427a-9994-d8b8fd9ebe3f" }, "request_id": "2ddd2f6107a8164ce6f6268bd991e57c" }
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 log_config UpdateVpnLogConfigRequestBodyContent object 是 log_config对象。 表3 UpdateVpnLogConfigRequestBodyContent 名称 类型 必选 描述 log_group_id String 是 功能说明:日志组ID,请在 云日志 服务中获取。 log_stream_id String 是 功能说明:日志流ID,请在云日志服务中获取。 请求样例 PUT https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config { "log_config": { "log_group_id": "05c4052d-8d14-488f-aa00-19fea5a25fdd", "log_stream_id": "d9d85143-e1e1-427a-9994-d8b8fd9ebe3f" } }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表4 响应Body参数列表 名称 类型 描述 log_config ConnectionsLogConfig object log_config对象。 request_id String 请求ID。 表5 ConnectionsLogConfig 名称 类型 描述 log_group_id String 功能说明:日志组ID,请在云日志服务中获取。 log_stream_id String 功能说明:日志流ID,请在云日志服务中获取。 响应样例 { "log_config": { "log_group_id": "05c4052d-8d14-488f-aa00-19fea5a25fdd", "log_stream_id": "d9d85143-e1e1-427a-9994-d8b8fd9ebe3f" }, "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" }
  • 请求消息 请求参数 表2 请求参数 名称 类型 是否必选 描述 users Array of OpVpnUser objects 是 删除VPN用户对象列表。 表3 OpVpnUser 名称 类型 必选 描述 id String 是 功能说明:用户ID。 格式:36位UUID。 请求样例 POST https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-delete { "users": [ { "id": "cc975b1d-ede5-448d-a47d-9dbf11f5d842" }, { "id": "30ad347e-e36e-42bd-a36b-c38f8ecc8bda" } ] }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表2 响应Body参数列表 名称 类型 描述 availability_zones Array of ExtendedAvailabilityZone object 可用区列表。 request_id String 请求ID。 表3 ExtendedAvailabilityZone 名称 类型 描述 name String 可用区名称。 public_border_group String 公共边界组。 available_specs Array of AvailableSpec object 该可用区下可选的VPN网关规格组合。 表4 AvailableSpec 名称 类型 描述 flavor String VPN网关规格。 attachment_type String VPN网关的关联模式。 ip_version String VPN网关的IP协议版本。 响应样例 { "availability_zones": [ { "name": "cn-southwest-242a", "public_border_group": "center", "available_specs": [ { "flavor": "Basic", "attachment_type": "vpc", "ip_version": "ipv4" }, { "flavor": "GM", "attachment_type": "vpc", "ip_version": "ipv4" }, { "flavor": "Professional2", "attachment_type": "vpc", "ip_version": "ipv6" } ] } ], "request_id": "9c114ae240ac4e2afdedc113fadae34c" }
  • VPN标签 权限 对应API接口 授权项(Action) 依赖的授权项 IAM 项目(Project) 企业项目(Enterprise Project) 创建资源标签 POST /v5/{project_id}/{resource_type}/{resource_id}/tags/create vpn:resourceInstanceTags:create - √ x 删除资源标签 POST /v5/{project_id}/{resource_type}/{resource_id}/tags/delete vpn:resourceInstanceTags:delete - √ x 查询资源类型标签列表 GET /v5/{project_id}/{resource_type}/tags vpn:resourceTypeTags:list - √ x 查询资源实例列表 POST /v5/{project_id}/{resource_type}/resource-instances/filter vpn:resourceInstances:list - √ x 查询资源标签列表 GET /v5/{project_id}/{resource_type}/{resource_id}/tags vpn:resourceInstanceTags:list - √ x 查询资源实例数量 POST /v5/{project_id}/{resource_type}/resource-instances/count vpn:resourceInstances:count - √ x 父主题: 服务公共接口授权项列表
  • 访问策略 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建VPN访问策略 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies vpn:p2cVpnGateway:createAccessPolicy - √ x 查询VPN访问策略列表 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies vpn:p2cVpnGateway:listAccessPolicies - √ x 修改VPN访问策略 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} vpn:p2cVpnGateway:updateAccessPolicy - √ x 查询VPN访问策略 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} vpn:p2cVpnGateway:getAccessPolicy - √ x 删除VPN访问策略 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} vpn:p2cVpnGateway:deleteAccessPolicy - √ x 父主题: 终端入云VPN授权项列表
  • 用户管理 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users vpn:p2cVpnUser:create - √ x 批量创建VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-create vpn:p2cVpnUser:batchCreate - √ x 查询VPN用户列表 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users vpn:p2cVpnUser:list - √ x 修改VPN用户 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id} vpn:p2cVpnUser:update - √ x 查询VPN用户 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id} vpn:p2cVpnUser:get - √ x 删除VPN用户 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id} vpn:p2cVpnUser:delete - √ x 批量删除VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/batch-delete vpn:p2cVpnUser:batchDelete - √ x 修改VPN用户密码 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}/password vpn:p2cVpnUser:updatePassword - √ x 重置VPN用户密码 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}/reset-password vpn:p2cVpnUser:resetPassword - √ x 创建VPN用户组 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups vpn:p2cVpnGateway:createUserGroup - √ x 查询VPN用户组列表 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups vpn:p2cVpnGateway:listUserGroup - √ x 修改VPN用户组 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id} vpn:p2cVpnGateway:updateUserGroup - √ x 查询VPN用户组 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id} vpn:p2cVpnGateway:getUserGroup - √ x 删除VPN用户组 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id} vpn:p2cVpnGateway:deleteUserGroup - √ x 添加VPN用户到组 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}/add-users vpn:p2cVpnGateway:addUsers - √ x 删除组内VPN用户 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}/remove-users vpn:p2cVpnGateway:removeUsers - √ x 查询组内VPN用户 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}/users vpn:p2cVpnGateway:listUsersInGroup - √ x 父主题: 终端入云VPN授权项列表
  • 服务端 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建终端入云VPN服务端 POST /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers vpn:p2cVpnGateway:createServer scm:cert:get scm:cert:list scm:cert:download vpc:publicIps:get vpc:routeTables:update vpc:subnets:get √ x 查询一个网关下的服务端信息 GET /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers vpn:p2cVpnGateway:listServers - √ x 更新指定网关的服务端 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id} vpn:p2cVpnGateway:updateServer scm:cert:get scm:cert:list scm:cert:download vpc:publicIps:get vpc:routeTables:update vpc:subnets:get √ x 导出服务端对应的客户端配置信息 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-config/export vpn:p2cVpnGateway:exportClientConfig - √ x 校验CA证书的合法性 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/client-ca-certificates/check vpn:system:checkClientCaCertificate - √ x 导入客户端CA证书 POST /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates vpn:p2cVpnGateway:importClientCa - √ x 修改客户端CA证书 PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates/{client_ca_certificate_id} vpn:p2cVpnGateway:updateClientCa - √ x 查询客户端CA证书 GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates/{client_ca_certificate_id} vpn:p2cVpnGateway:getClientCa - √ x 删除客户端CA证书 DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/client-ca-certificates/{client_ca_certificate_id} vpn:p2cVpnGateway:deleteClientCa - √ x 查询租户下的所有服务端信息 GET /v5/{project_id}/vpn-servers vpn:p2cVpnGateway:listAllServers - √ x 断开终端入云VPN网关连接 POST /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/connections/{connection_id}/disconnect vpn:p2cVpnGateway:disconnectConnection - √ x 更新终端入云VPN连接日志配置 PUT /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config vpn:p2cVpnGateway:updateConnectionsLogConfig - √ × 查询终端入云VPN连接日志配置 GET /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config vpn:p2cVpnGateway:getConnectionsLogConfig - √ × 删除终端入云VPN连接日志配置 DELETE /v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/log-config vpn:p2cVpnGateway:deleteConnectionsLogConfig - √ × 父主题: 终端入云VPN授权项列表
  • VPN连接监控 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建连接监控 POST /v5/{project_id}/connection-monitors vpn:connectionMonitors:create - √ x 查询连接监控列表 GET /v5/{project_id}/connection-monitors vpn:connectionMonitors:list - √ x 删除连接监控 DELETE /v5/{project_id}/connection-monitors/{connection_monitor_id} vpn:connectionMonitors:delete - √ x 查询连接监控 GET /v5/{project_id}/connection-monitors/{connection_monitor_id} vpn:connectionMonitors:get - √ x 父主题: 站点入云VPN授权项列表
  • 对端网关 权限 对应API接口 授权项(Action) 依赖的授权项 IAM项目(Project) 企业项目(Enterprise Project) 创建对端网关 POST /v5/{project_id}/customer-gateways vpn:customerGateways:create - √ x 查询对端网关详情 GET /v5/{project_id}/customer-gateways/{customer_gateway_id} vpn:customerGateways:get - √ x 查询对端网关列表 GET /v5/{project_id}/customer-gateways vpn:customerGateways:list - √ x 更新对端网关 PUT /v5/{project_id}/customer-gateways/{customer_gateway_id} vpn:customerGateways:update - √ x 删除对端网关 DELETE /v5/{project_id}/customer-gateways/{customer_gateway_id} vpn:customerGateways:delete - √ x 父主题: 站点入云VPN授权项列表
  • 操作步骤 创建访问策略 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 { "access_policy": { "name": "policy-001", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "description": "访问策略1", "dest_ip_cidrs": [ "172.16.0.0/24", "172.16.1.0/24" ] } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的用户组ID { "access_policy": { "id": "4f746482-a575-4e1f-9e80-5f6f69ff8588" }, "request_id": "1663cd8cacbb3497ebc88877e5a3ad89" } 查询访问策略 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id}”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。{policy_id}为已创建的访问策略ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 { "access_policy": { "id": "4f746482-a575-4e1f-9e80-5f6f69ff8588", "name": "policy-001", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "user_group_name": "user-group1", "description": "访问策略1", "dest_ip_cidrs": [ "172.16.0.0/24", "172.16.1.0/24" ], "created_at": "2024-06-17T13:32:19.57Z", "updated_at": "2024-06-17T13:32:19.57Z" }, "request_id": "85657002f01c35576606003cc36114ab" }
  • 操作步骤 创建用户组 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 { "user_group": { "name": "user-group1", "description": "用户组1" } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的用户组ID { "user_group": { "id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8" }, "request_id": "94d271493e144135423e7377e40127cf" } 查询用户组 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/groups/{group_id}”,project_id为项目ID。{group_id}为已创建的用户组ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 { "user_group": { "id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "name": "user-group1", "description": "用户组1", "type": "Custom", "user_number": 0, "created_at": "2024-06-17T09:48:27.548Z", "updated_at": "2024-06-17T09:48:27.548Z" }, "request_id": "6735d32bb3e35e9154caba1dbc6c2dc6" } 创建用户 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 { "user": { "name": "user001", "password": "Qwerasdf", "description": "用户1", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8" } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的用户ID { "user": { "id": "41ad472e-d3e4-482b-8f00-7b2c1bfc4b7d" }, "request_id": "b19ba5a0be8f7b7f664b14596f8f35db" } 查询用户 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/users/{user_id}”,project_id为项目ID。{vpn_server_id}为已创建的VPN服务端ID。{user_id}为已创建的用户ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 { "user": { "id": "41ad472e-d3e4-482b-8f00-7b2c1bfc4b7d", "name": "user001", "description": "用户1", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "user_group_name": "user-group1", "created_at": "2024-06-17T06:53:46.302Z", "updated_at": "2024-06-17T06:53:46.302Z" }, "request_id": "926a0edb3bf432943e2399b700173add" }
  • 前提条件 已成功创建包周期终端入云VPN网关。 已在 云证书管理 服务中购买或上传服务端证书,详情请参见购买SSL证书和上传已有SSL证书。 您需要确定调用API的Endpoint。 当您使用Token认证方式完成认证鉴权时,需要获取用户Token并在调用接口时增加“X-Auth-Token”到业务接口请求消息头中。Token认证,具体操作请参考认证鉴权章节。 通过IAM服务获取到的Token有效期为24小时,需要使用同一个Token鉴权时,可以先将Token缓存,避免频繁调用。
  • 操作步骤 创建VPN服务端。 发送“POST https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers”,project_id为项目ID。{p2c_vgw_id}为已创建的终端入云VPN网关ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数。 证书认证方式传入参数如下: { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "100.10.1.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "CERT", "server_certificate": { "id": "scs1717051012106" }, "client_ca_certificates": [ { "content" : "-----BEGIN CERTIFICATE-----******-----END CERTIFICATE-----" } ], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } } 口令认证方式传入参数如下: { "vpn_server": { "tunnel_protocol": "SSL", "client_cidr": "100.10.2.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "LOCAL_PASSWORD", "server_certificate": { "id": "scs1717051012106" }, "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "is_compressed": false } } } 查看请求响应结果。 请求成功时,响应参数如下,id为创建的VPN服务端ID。 { "vpn_server": { "id": "0e325fb6-83b9-4004-a343-8b6fc714a5d9" }, "request_id": "bf23a5884def9be4576cff33e4dd78d5" } 查询VPN服务端 发送“GET https://{endpoint}/v5/{project_id}/p2c-vpn-gateways/{p2c_vgw_id}/vpn-servers”,project_id为项目ID。{p2c_vgw_id}为已创建的终端入云VPN网关ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 服务端的status为“PENDING_CREATE”说明正在创建中,为"ACTIVE"说明创建完成。 证书认证的服务端响应结果为: { "vpn_servers": [ { "id": "b26c9c74-5bb9-4df8-8b98-ecf2051e3482", "p2c_vgw_id": "595210dc-7998-4ba3-aeb9-516fbcf7853c", "client_cidr": "100.10.1.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "CERT", "tunnel_protocol": "SSL", "server_certificate": { "id": "scs1717051012106", "name": "test-05304", "issuer": "C=CN,ST=beijing,L=haidian,O=lesaas,OU=root,CN=www.root.huawei.com", "subject": "C=CN,ST=beijing,L=haidian,O=server,OU=server,CN=www.server.huawei.com", "serial_number": "350612543125953290200975245211283057292471206725", "expiration_time": "2024-06-29T06:39:46Z", "signature_algorithm": "SHA256WITHRSA" }, "client_ca_certificates": [ { "id": "7e971612-f720-4d31-88b5-fc6280b88e36", "name": "ca-cert-123e", "issuer": "C=CN,ST=JS,L=NJ,O=NYS,OU=N10,CN=test.huawei.com", "subject": "C=CN,ST=JS,L=NJ,O=NYS,OU=N10,CN=testCA.huawei.com", "serial_number": "1591942200161", "expiration_time": "2033-11-06T11:39:14Z", "signature_algorithm": "SHA256WITHRSA", "created_at": "2024-06-18T12:19:17.978Z", "updated_at": "2024-06-18T12:19:17.978Z" } ], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "authentication_algorithm": "SHA256", "is_compressed": false }, "status": "ACTIVE", "created_at": "2024-06-18T12:19:17.978Z", "updated_at": "2024-06-18T12:19:17.978Z" } ], "request_id": "68188a14243b1b54d0b45a82d9123b98" } 口令认证的服务端响应结果为: { "vpn_servers": [ { "id": "0e325fb6-83b9-4004-a343-8b6fc714a5d9", "p2c_vgw_id": "dea8c4fb-be5c-4d50-be9a-f9a5f3a9afc6", "client_cidr": "100.10.2.0/24", "local_subnets": [ "192.168.0.0/24", "192.168.1.0/24" ], "client_auth_type": "LOCAL_PASSWORD", "tunnel_protocol": "SSL", "server_certificate": { "id": "scs1717051012106", "name": "test-05304", "issuer": "C=CN,ST=beijing,L=haidian,O=lesaas,OU=root,CN=www.root.huawei.com", "subject": "C=CN,ST=beijing,L=haidian,O=server,OU=server,CN=www.server.huawei.com", "serial_number": "350612543125953290200975245211283057292471206725", "expiration_time": "2024-06-29T06:39:46Z", "signature_algorithm": "SHA256WITHRSA" }, "client_ca_certificates": [], "ssl_options": { "protocol": "TCP", "port": 443, "encryption_algorithm": "AES-128-GCM", "authentication_algorithm": "SHA256", "is_compressed": false }, "status": "ACTIVE", "created_at": "2024-06-18T12:21:54.889Z", "updated_at": "2024-06-18T12:21:54.889Z" } ], "request_id": "f8e64d41466085f06383dc59ffb28230" }
  • 数据准备 VPN服务端支持两种认证方式,分别为证书认证和口令认证。 表1 证书认证方式创建VPN服务端请求关键参数 参数 说明 取值样例 p2c_vgw_id 终端入云网关ID,为预先已创建的网关ID 595210dc-7998-4ba3-aeb9-516fbcf7853c client_cidr 客户端网段 100.10.1.0/24 local_subnets 本端网段列表 192.168.0.0/24,192.168.1.0/24 server_certificate.id 服务端证书ID,为云证书管理服务中的证书ID scs1717051012106 client_ca_certificate.content 客户端CA证书内容 -----BEGIN CERTIFICATE-----******-----END CERTIFICATE----- 表2 口令认证方式创建VPN服务端请求关键参数 参数 说明 取值样例 p2c_vgw_id 终端入云网关ID,为预先已创建的网关ID dea8c4fb-be5c-4d50-be9a-f9a5f3a9afc6 client_cidr 客户端网段 100.10.2.0/24 local_subnets 本端网段列表 192.168.0.0/24,192.168.1.0/24 server_certificate.id 服务端证书ID,为云证书管理服务中的证书ID scs1717051012106
  • URI DELETE /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 vpn_server_id String 是 VPN服务端ID。 policy_id String 是 访问策略ID。
  • URI PUT /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 vpn_server_id String 是 VPN服务端ID。 policy_id String 是 访问策略ID。
  • 请求消息 请求参数 表2 请求参数 名称 类型 必选 描述 access_policy UpdateVpnAccessPolicyRequestBodyContent object 是 更新访问策略请求体对象。 表3 UpdateVpnAccessPolicyRequestBodyContent 名称 类型 必选 描述 name String 否 访问策略名称。 user_group_id String 否 功能描述:关联用户组ID。 格式:36位UUID。 description String 否 访问策略描述。 dest_ip_cidrs Array of strings 否 功能描述:目的IP网段列表。 格式:"点分十进制/掩码"格式,例如192.168.1.0/24。 约束:至少有1个网段,至多10个网段。 请求样例 PUT https://{Endpoint}/v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} { "access_policy": { "name": "policy-001-update", "user_group_id": "efb92c43-c2e9-44c0-b2e5-5b980f0ca90a", "description": "访问策略1-update", "dest_ip_cidrs": [ "192.168.12.0/24", "192.168.1.0/24" ] } }
  • 响应消息 响应参数 返回状态码为 200: successful operation。 表4 响应Body参数列表 名称 类型 描述 access_policy VpnAccessPolicy object VPN访问策略对象。 request_id String 请求ID。 表5 VpnAccessPolicy 名称 类型 描述 id String 功能描述:访问策略ID。 格式:36位UUID。 name String 访问策略名称。 user_group_id String 功能描述:关联用户组ID。 格式:36位UUID。 user_group_name String 关联用户组名称。 description String 访问策略描述。 dest_ip_cidrs Array of String 功能描述:目的IP网段列表。 格式:"点分十进制/掩码"格式,例如192.168.1.0/24。 created_at String 功能说明:创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 功能说明:更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 响应示例 { "access_policy": { "id": "36f3f232-9204-4774-be20-84cc94da8535", "name": "policy-001-update", "user_group_id": "efb92c43-c2e9-44c0-b2e5-5b980f0ca90a", "user_group_name": "用户组A", "description": "访问策略1-update", "dest_ip_cidrs": [ "192.168.12.0/24", "192.168.1.0/24" ], "created_at": "2024-06-14T08:59:45.598Z", "updated_at": "2024-06-14T09:01:59.539Z" }, "request_id": "2e4cc58a4ea5fe69f62d6d8943b5f99b" }
  • URI GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 vpn_server_id String 是 VPN服务端ID。 表2 请求Query参数列表 名称 类型 是否必选 描述 limit Integer 否 分页查询时每页返回的记录数量。 marker String 否 功能说明:查询本页的起始标记位,为空时为查询第一页。查询下一页的marker可以根据上一页响应的page_info对象中的next_marker填写。 约束:必须与limit一起使用。
  • 响应消息 响应参数 返回状态码为 200: 查询成功。 表3 响应Body参数列表 名称 类型 描述 access_policies Array of VpnAccessPolicy objects 访问策略对象列表。 total_count Integer 访问策略总数。 page_info PageInfo object 分页查询页的信息。 request_id String 请求ID。 表4 VpnAccessPolicy 名称 类型 描述 id String 功能描述:访问策略ID。 格式:36位UUID。 name String 访问策略名称。 user_group_id String 功能描述:关联用户组ID。 格式:36位UUID。 user_group_name String 关联用户组名称。 description String 访问策略描述。 dest_ip_cidrs Array of String 功能描述:目的IP网段列表。 格式:"点分十进制/掩码"格式,例如192.168.1.0/24。 created_at String 功能说明:创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 功能说明:更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 表5 PageInfo 名称 类型 描述 next_marker String 下一页的marker,值为上一次查询响应中最后一个资源的创建时间。 current_count Integer 当前列表中资源数量。
  • URI GET /v5/{project_id}/p2c-vpn-gateways/vpn-servers/{vpn_server_id}/access-policies/{policy_id} 表1 参数说明 名称 类型 是否必选 描述 project_id String 是 项目ID,可以通过获取项目ID获取项目ID。 vpn_server_id String 是 VPN服务端ID。 policy_id String 是 访问策略ID。
  • 响应消息 响应参数 返回状态码为 200: 查询成功。 表2 响应Body参数列表 名称 类型 描述 access_policy VpnAccessPolicy object VPN访问策略对象。 request_id String 请求ID。 表3 VpnAccessPolicy 名称 类型 描述 id String 功能描述:访问策略ID。 格式:36位UUID。 name String 访问策略名称。 user_group_id String 功能描述:关联用户组ID。 格式:36位UUID。 user_group_name String 关联用户组名称。 description String 访问策略描述。 dest_ip_cidrs Array of String 功能描述:目的IP网段列表。 格式:"点分十进制/掩码"格式,例如192.168.1.0/24。 created_at String 功能说明:创建时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 updated_at String 功能说明:更新时间。 UTC时间格式:yyyy-MM-ddTHH:mm:ssZ。 响应样例 { "access_policy": { "id": "4f746482-a575-4e1f-9e80-5f6f69ff8588", "name": "policy-001", "user_group_id": "7625fd92-2e20-4e4d-8c56-66f110fbfaa8", "user_group_name": "user-group1", "description": "访问策略1", "dest_ip_cidrs": [ "172.16.0.0/24", "172.16.1.0/24" ], "created_at": "2024-06-17T13:32:19.57Z", "updated_at": "2024-06-17T13:32:19.57Z" }, "request_id": "85657002f01c35576606003cc36114ab" }
  • 响应消息 响应参数 返回状态码为 201: successful operation。 表5 响应Body参数列表 名称 类型 描述 access_policy access_policy object 访问策略对象。 request_id String 请求ID。 表6 access_policy 名称 类型 描述 id String 功能描述:访问策略ID。 格式:36位UUID。 响应样例 { "access_policy": { "id": "4f746482-a575-4e1f-9e80-5f6f69ff8588" }, "request_id": "1663cd8cacbb3497ebc88877e5a3ad89" }
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全