/* * Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ namespace TencentCloud.Bmvpc.V20180625.Models { using Newtonsoft.Json; using System.Collections.Generic; using TencentCloud.Common; public class VpnConnection : AbstractModel { /// /// 通道实例ID。 /// [JsonProperty("VpnConnectionId")] public string VpnConnectionId{ get; set; } /// /// 通道名称。 /// [JsonProperty("VpnConnectionName")] public string VpnConnectionName{ get; set; } /// /// VPC实例ID。 /// [JsonProperty("VpcId")] public string VpcId{ get; set; } /// /// VPN网关实例ID。 /// [JsonProperty("VpnGatewayId")] public string VpnGatewayId{ get; set; } /// /// 对端网关实例ID。 /// [JsonProperty("CustomerGatewayId")] public string CustomerGatewayId{ get; set; } /// /// 预共享密钥。 /// [JsonProperty("PreShareKey")] public string PreShareKey{ get; set; } /// /// 通道传输协议。 /// [JsonProperty("VpnProto")] public string VpnProto{ get; set; } /// /// 创建时间。 /// [JsonProperty("CreateTime")] public string CreateTime{ get; set; } /// /// 通道的生产状态 /// [JsonProperty("State")] public string State{ get; set; } /// /// 通道连接状态 /// [JsonProperty("NetStatus")] public string NetStatus{ get; set; } /// /// SPD。 /// [JsonProperty("SecurityPolicyDatabaseSet")] public SecurityPolicyDatabase[] SecurityPolicyDatabaseSet{ get; set; } /// /// IKE选项。 /// [JsonProperty("IKEOptionsSpecification")] public IKEOptionsSpecification IKEOptionsSpecification{ get; set; } /// /// IPSEC选项。 /// [JsonProperty("IPSECOptionsSpecification")] public IPSECOptionsSpecification IPSECOptionsSpecification{ get; set; } /// /// 可用区 /// [JsonProperty("Zone")] public string Zone{ get; set; } /// /// VPC网段 /// [JsonProperty("VpcCidrBlock")] public string VpcCidrBlock{ get; set; } /// /// VPC名称 /// [JsonProperty("VpcName")] public string VpcName{ get; set; } /// /// VPN网关名称 /// [JsonProperty("VpnGatewayName")] public string VpnGatewayName{ get; set; } /// /// 对端网关名称 /// [JsonProperty("CustomerGatewayName")] public string CustomerGatewayName{ get; set; } /// /// IPSEC VPN通道路由策略目的端地址 /// 注意:此字段可能返回 null,表示取不到有效值。 /// [JsonProperty("DestinationCidr")] public string[] DestinationCidr{ get; set; } /// /// IPSEC VPN通道路由策略源端地址 /// 注意:此字段可能返回 null,表示取不到有效值。 /// [JsonProperty("SourceCidr")] public string[] SourceCidr{ get; set; } /// /// For internal usage only. DO NOT USE IT. /// internal override void ToMap(Dictionary map, string prefix) { this.SetParamSimple(map, prefix + "VpnConnectionId", this.VpnConnectionId); this.SetParamSimple(map, prefix + "VpnConnectionName", this.VpnConnectionName); this.SetParamSimple(map, prefix + "VpcId", this.VpcId); this.SetParamSimple(map, prefix + "VpnGatewayId", this.VpnGatewayId); this.SetParamSimple(map, prefix + "CustomerGatewayId", this.CustomerGatewayId); this.SetParamSimple(map, prefix + "PreShareKey", this.PreShareKey); this.SetParamSimple(map, prefix + "VpnProto", this.VpnProto); this.SetParamSimple(map, prefix + "CreateTime", this.CreateTime); this.SetParamSimple(map, prefix + "State", this.State); this.SetParamSimple(map, prefix + "NetStatus", this.NetStatus); this.SetParamArrayObj(map, prefix + "SecurityPolicyDatabaseSet.", this.SecurityPolicyDatabaseSet); this.SetParamObj(map, prefix + "IKEOptionsSpecification.", this.IKEOptionsSpecification); this.SetParamObj(map, prefix + "IPSECOptionsSpecification.", this.IPSECOptionsSpecification); this.SetParamSimple(map, prefix + "Zone", this.Zone); this.SetParamSimple(map, prefix + "VpcCidrBlock", this.VpcCidrBlock); this.SetParamSimple(map, prefix + "VpcName", this.VpcName); this.SetParamSimple(map, prefix + "VpnGatewayName", this.VpnGatewayName); this.SetParamSimple(map, prefix + "CustomerGatewayName", this.CustomerGatewayName); this.SetParamArraySimple(map, prefix + "DestinationCidr.", this.DestinationCidr); this.SetParamArraySimple(map, prefix + "SourceCidr.", this.SourceCidr); } } }