tencentcloud-sdk-nodejs-intl-en
Version:
1,970 lines (1,661 loc) • 244 kB
JavaScript
/*
* 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.
*/
const AbstractModel = require("../../common/abstract_model");
/**
* DescribeNatFwInstance request structure.
* @class
*/
class DescribeNatFwInstanceRequest extends AbstractModel {
constructor(){
super();
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
}
}
/**
* ModifyNatFwVpcDnsSwitch response structure.
* @class
*/
class ModifyNatFwVpcDnsSwitchResponse extends AbstractModel {
constructor(){
super();
/**
* Modified successfully
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.ReturnMsg = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ReturnMsg = 'ReturnMsg' in params ? params.ReturnMsg : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeNatFwInstanceWithRegion request structure.
* @class
*/
class DescribeNatFwInstanceWithRegionRequest extends AbstractModel {
constructor(){
super();
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
}
}
/**
* ModifyNatAcRule response structure.
* @class
*/
class ModifyNatAcRuleResponse extends AbstractModel {
constructor(){
super();
/**
* ID list of new rules that have been successfully modified.
* @type {Array.<number> || null}
*/
this.RuleUuid = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RuleUuid = 'RuleUuid' in params ? params.RuleUuid : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeRuleOverview response structure.
* @class
*/
class DescribeRuleOverviewResponse extends AbstractModel {
constructor(){
super();
/**
* Total number of rules
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.AllTotal = null;
/**
* Number of blocking rules
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.StrategyNum = null;
/**
* Number of enabled rules
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.StartRuleNum = null;
/**
* Number of disabled rules
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.StopRuleNum = null;
/**
* Remaining quota
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.RemainingNum = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.AllTotal = 'AllTotal' in params ? params.AllTotal : null;
this.StrategyNum = 'StrategyNum' in params ? params.StrategyNum : null;
this.StartRuleNum = 'StartRuleNum' in params ? params.StartRuleNum : null;
this.StopRuleNum = 'StopRuleNum' in params ? params.StopRuleNum : null;
this.RemainingNum = 'RemainingNum' in params ? params.RemainingNum : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* NAT firewall DNAT rules
* @class
*/
class CfwNatDnatRule extends AbstractModel {
constructor(){
super();
/**
* Network protocol. Valid values: TCP or UDP.
* @type {string || null}
*/
this.IpProtocol = null;
/**
* Elastic IP.
* @type {string || null}
*/
this.PublicIpAddress = null;
/**
* Public port.
* @type {number || null}
*/
this.PublicPort = null;
/**
* Private address.
* @type {string || null}
*/
this.PrivateIpAddress = null;
/**
* Private port.
* @type {number || null}
*/
this.PrivatePort = null;
/**
* The description of NAT firewall forwarding rules.
* @type {string || null}
*/
this.Description = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.IpProtocol = 'IpProtocol' in params ? params.IpProtocol : null;
this.PublicIpAddress = 'PublicIpAddress' in params ? params.PublicIpAddress : null;
this.PublicPort = 'PublicPort' in params ? params.PublicPort : null;
this.PrivateIpAddress = 'PrivateIpAddress' in params ? params.PrivateIpAddress : null;
this.PrivatePort = 'PrivatePort' in params ? params.PrivatePort : null;
this.Description = 'Description' in params ? params.Description : null;
}
}
/**
* Firewall IP range information
* @class
*/
class FwCidrInfo extends AbstractModel {
constructor(){
super();
/**
* The IP range type of the firewall. Values: `VpcSelf` (VPC IP range preferred); `Assis` (Secondary IP range preferred); `Custom` (Custom IP range)
* @type {string || null}
*/
this.FwCidrType = null;
/**
* The IP segment assigned for each VPC.
* @type {Array.<FwVpcCidr> || null}
*/
this.FwCidrLst = null;
/**
* The IP segment used by other firewalls. Specify this if you want to assign a dedicated segment for the firewall.
* @type {string || null}
*/
this.ComFwCidr = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FwCidrType = 'FwCidrType' in params ? params.FwCidrType : null;
if (params.FwCidrLst) {
this.FwCidrLst = new Array();
for (let z in params.FwCidrLst) {
let obj = new FwVpcCidr();
obj.deserialize(params.FwCidrLst[z]);
this.FwCidrLst.push(obj);
}
}
this.ComFwCidr = 'ComFwCidr' in params ? params.ComFwCidr : null;
}
}
/**
* Most frequent attacker statistics
* @class
*/
class StaticInfo extends AbstractModel {
constructor(){
super();
/**
* Number
* @type {number || null}
*/
this.Num = null;
/**
* Port
* @type {string || null}
*/
this.Port = null;
/**
* IP
* @type {string || null}
*/
this.Ip = null;
/**
* Address
* @type {string || null}
*/
this.Address = null;
/**
* Asset ID
* @type {string || null}
*/
this.InsID = null;
/**
* Asset name
* @type {string || null}
*/
this.InsName = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Num = 'Num' in params ? params.Num : null;
this.Port = 'Port' in params ? params.Port : null;
this.Ip = 'Ip' in params ? params.Ip : null;
this.Address = 'Address' in params ? params.Address : null;
this.InsID = 'InsID' in params ? params.InsID : null;
this.InsName = 'InsName' in params ? params.InsName : null;
}
}
/**
* DescribeNatAcRule response structure.
* @class
*/
class DescribeNatAcRuleResponse extends AbstractModel {
constructor(){
super();
/**
* Total number of entries.
* @type {number || null}
*/
this.Total = null;
/**
* NAT access control list data.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {Array.<DescAcItem> || null}
*/
this.Data = null;
/**
* Total number of entries returned without filtering.
* @type {number || null}
*/
this.AllTotal = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Total = 'Total' in params ? params.Total : null;
if (params.Data) {
this.Data = new Array();
for (let z in params.Data) {
let obj = new DescAcItem();
obj.deserialize(params.Data[z]);
this.Data.push(obj);
}
}
this.AllTotal = 'AllTotal' in params ? params.AllTotal : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyPublicIPSwitchStatus response structure.
* @class
*/
class ModifyPublicIPSwitchStatusResponse extends AbstractModel {
constructor(){
super();
/**
* Return message
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.ReturnMsg = null;
/**
* Error code. 0: success; non-0: failed
* @type {number || null}
*/
this.ReturnCode = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ReturnMsg = 'ReturnMsg' in params ? params.ReturnMsg : null;
this.ReturnCode = 'ReturnCode' in params ? params.ReturnCode : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyNatAcRule request structure.
* @class
*/
class ModifyNatAcRuleRequest extends AbstractModel {
constructor(){
super();
/**
* Array of rules to be modified.
* @type {Array.<CreateNatRuleItem> || null}
*/
this.Rules = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Rules) {
this.Rules = new Array();
for (let z in params.Rules) {
let obj = new CreateNatRuleItem();
obj.deserialize(params.Rules[z]);
this.Rules.push(obj);
}
}
}
}
/**
* ModifyAcRule response structure.
* @class
*/
class ModifyAcRuleResponse extends AbstractModel {
constructor(){
super();
/**
* Status value. 0: operation successful; non-0: operation failed
* @type {number || null}
*/
this.Status = null;
/**
* Returns redundant information
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.Info = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Status = 'Status' in params ? params.Status : null;
this.Info = 'Info' in params ? params.Info : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyNatSequenceRules request structure.
* @class
*/
class ModifyNatSequenceRulesRequest extends AbstractModel {
constructor(){
super();
/**
* Rule sequence number. Values: `OrderIndex` (Original sequence number), `NewOrderIndex` (New sequence number)
* @type {Array.<RuleChangeItem> || null}
*/
this.RuleChangeItems = null;
/**
* Rule direction. Values: `1` (Inbound) and `0` (Outbound)
* @type {number || null}
*/
this.Direction = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.RuleChangeItems) {
this.RuleChangeItems = new Array();
for (let z in params.RuleChangeItems) {
let obj = new RuleChangeItem();
obj.deserialize(params.RuleChangeItems[z]);
this.RuleChangeItems.push(obj);
}
}
this.Direction = 'Direction' in params ? params.Direction : null;
}
}
/**
* DescribeTableStatus response structure.
* @class
*/
class DescribeTableStatusResponse extends AbstractModel {
constructor(){
super();
/**
* 0: normal; non-0: abnormal
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.Status = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Status = 'Status' in params ? params.Status : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* AddAcRule request structure.
* @class
*/
class AddAcRuleRequest extends AbstractModel {
constructor(){
super();
/**
* -1: lowest priority; 1: highest priority
* @type {string || null}
*/
this.OrderIndex = null;
/**
* The action that Cloud Firewall performs on the traffic. Valid values:
accept: allow
drop: deny
log: observe
* @type {string || null}
*/
this.RuleAction = null;
/**
* The traffic direction for access control rules. Valid values:
in: incoming traffic access control
out: outgoing traffic access control
* @type {string || null}
*/
this.Direction = null;
/**
* The description of access control rules.
* @type {string || null}
*/
this.Description = null;
/**
* The type of source address in access control rules. Valid values:
net: source IP or range (IP or CIDR)
location: source region
template: CFW address template
instance: instance ID
vendor: Cloud vendor
* @type {string || null}
*/
this.SourceType = null;
/**
* The source address in the access control policy.
When `SourceType` is `net`, `SourceContent` is the source IP or CIDR block.
For example: 1.1.1.0/24
When `SourceType` is `template`, `SourceContent` must be the source address template ID.
When `SourceType` is `location`, `SourceContent` is the source region.
For example, ["BJ11", "ZB"]
When `SourceType` is `instance`, `SourceContent` is the public IP of the instance.
For example, ins-xxxxx
When `SourceType` is `vendor`, `SourceContent` is the cloud service provider.
Values: `aws`, `huawei`, `tencent`, `aliyun`, `azure` and `all`.
* @type {string || null}
*/
this.SourceContent = null;
/**
* The type of destination address in access control rules. Valid values:
net: destination IP or range (IP or CIDR)
location: source region
template: CFW address template
instance: instance ID
vendor: Cloud vendor
domain: Domain name or IP.
* @type {string || null}
*/
this.DestType = null;
/**
* The destination address in the access control policy.
When `DestType` is `net`, `DestContent` is the destination IP or CIDR block.
For example: 1.1.1.0/24
When `DestType` is `template`, `DestContent` is the destination address template ID.
When `DestType` is `location`, `DestContent` is the destination region.
For example, ["BJ11", "ZB"]
When `DestType` is `instance`, `DestContent` is the public IP of the instance.
For example, ins-xxxxx
When `DestType` is `domain`, `DestContent` is the domain name associated with the instance.
For example, *.qq.com
When `DestType`, `DestContent` is the selected cloud service provider.
Values: `aws`, `huawei`, `tencent`, `aliyun`, `azure` and `all`.
* @type {string || null}
*/
this.DestContent = null;
/**
* The port to apply access control rules. Valid values:
-1/-1: all ports
80,443: 80 or 443
* @type {string || null}
*/
this.Port = null;
/**
* The protocol type of traffic in access control rules. Valid value: TCP. Only TCP is supported for edge firewall rules. If this parameter is not specified, it defaults to TCP.
* @type {string || null}
*/
this.Protocol = null;
/**
* The Layer 7 protocol. Valid values:
HTTP/HTTPS
TLS/SSL
* @type {string || null}
*/
this.ApplicationName = null;
/**
* Indicates whether to enable the rules. Default: enable. Valid values:
true: enable; false: disable
* @type {string || null}
*/
this.Enable = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.OrderIndex = 'OrderIndex' in params ? params.OrderIndex : null;
this.RuleAction = 'RuleAction' in params ? params.RuleAction : null;
this.Direction = 'Direction' in params ? params.Direction : null;
this.Description = 'Description' in params ? params.Description : null;
this.SourceType = 'SourceType' in params ? params.SourceType : null;
this.SourceContent = 'SourceContent' in params ? params.SourceContent : null;
this.DestType = 'DestType' in params ? params.DestType : null;
this.DestContent = 'DestContent' in params ? params.DestContent : null;
this.Port = 'Port' in params ? params.Port : null;
this.Protocol = 'Protocol' in params ? params.Protocol : null;
this.ApplicationName = 'ApplicationName' in params ? params.ApplicationName : null;
this.Enable = 'Enable' in params ? params.Enable : null;
}
}
/**
* IP protection status
* @class
*/
class IPDefendStatus extends AbstractModel {
constructor(){
super();
/**
* IP address
* @type {string || null}
*/
this.IP = null;
/**
* Protection status. 1: enabled; -1: incorrect address; others: disabled
* @type {number || null}
*/
this.Status = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.IP = 'IP' in params ? params.IP : null;
this.Status = 'Status' in params ? params.Status : null;
}
}
/**
* Allowlist or blocklist for intrusion prevention
* @class
*/
class BlockIgnoreRule extends AbstractModel {
constructor(){
super();
/**
* Domain name.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Domain = null;
/**
* Rule IP.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Ioc = null;
/**
* Threat level.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Level = null;
/**
* Source event name.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.EventName = null;
/**
* Direction. Valid values: 0: outbound; 1: inbound.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Direction = null;
/**
* Protocol.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Protocol = null;
/**
* Address.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Address = null;
/**
* Rule type. Valid values: 1: block; 2: allow.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.Action = null;
/**
* Time when a rule starts to take effect.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.StartTime = null;
/**
* Time when a rule expires.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.EndTime = null;
/**
* Reason for ignoring.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.IgnoreReason = null;
/**
* Security event source.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Source = null;
/**
* Rule ID.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.UniqueId = null;
/**
* Number of rule matching times.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {number || null}
*/
this.MatchTimes = null;
/**
* Country.
Note: This field may return null, indicating that no valid values can be obtained.
* @type {string || null}
*/
this.Country = null;
/**
*
* @type {string || null}
*/
this.Comment = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Domain = 'Domain' in params ? params.Domain : null;
this.Ioc = 'Ioc' in params ? params.Ioc : null;
this.Level = 'Level' in params ? params.Level : null;
this.EventName = 'EventName' in params ? params.EventName : null;
this.Direction = 'Direction' in params ? params.Direction : null;
this.Protocol = 'Protocol' in params ? params.Protocol : null;
this.Address = 'Address' in params ? params.Address : null;
this.Action = 'Action' in params ? params.Action : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.IgnoreReason = 'IgnoreReason' in params ? params.IgnoreReason : null;
this.Source = 'Source' in params ? params.Source : null;
this.UniqueId = 'UniqueId' in params ? params.UniqueId : null;
this.MatchTimes = 'MatchTimes' in params ? params.MatchTimes : null;
this.Country = 'Country' in params ? params.Country : null;
this.Comment = 'Comment' in params ? params.Comment : null;
}
}
/**
* ModifyNatFwVpcDnsSwitch request structure.
* @class
*/
class ModifyNatFwVpcDnsSwitchRequest extends AbstractModel {
constructor(){
super();
/**
* NAT firewall ID
* @type {string || null}
*/
this.NatFwInsId = null;
/**
* DNS toggle list
* @type {Array.<DnsVpcSwitch> || null}
*/
this.DnsVpcSwitchLst = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.NatFwInsId = 'NatFwInsId' in params ? params.NatFwInsId : null;
if (params.DnsVpcSwitchLst) {
this.DnsVpcSwitchLst = new Array();
for (let z in params.DnsVpcSwitchLst) {
let obj = new DnsVpcSwitch();
obj.deserialize(params.DnsVpcSwitchLst[z]);
this.DnsVpcSwitchLst.push(obj);
}
}
}
}
/**
* Unhandled event details
* @class
*/
class UnHandleEvent extends AbstractModel {
constructor(){
super();
/**
* Unhandled event type
* @type {Array.<UnHandleEventDetail> || null}
*/
this.EventTableListStruct = null;
/**
* 1: yes; 0: no
* @type {number || null}
*/
this.BaseLineUser = null;
/**
* 1: on; 0: off
* @type {number || null}
*/
this.BaseLineInSwitch = null;
/**
* 1: on; 0: off
* @type {number || null}
*/
this.BaseLineOutSwitch = null;
/**
* Number of inter-VPC firewall instances
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.VpcFwCount = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.EventTableListStruct) {
this.EventTableListStruct = new Array();
for (let z in params.EventTableListStruct) {
let obj = new UnHandleEventDetail();
obj.deserialize(params.EventTableListStruct[z]);
this.EventTableListStruct.push(obj);
}
}
this.BaseLineUser = 'BaseLineUser' in params ? params.BaseLineUser : null;
this.BaseLineInSwitch = 'BaseLineInSwitch' in params ? params.BaseLineInSwitch : null;
this.BaseLineOutSwitch = 'BaseLineOutSwitch' in params ? params.BaseLineOutSwitch : null;
this.VpcFwCount = 'VpcFwCount' in params ? params.VpcFwCount : null;
}
}
/**
* DeleteAllAccessControlRule request structure.
* @class
*/
class DeleteAllAccessControlRuleRequest extends AbstractModel {
constructor(){
super();
/**
* Direction. 0: outbound; 1: inbound. 0 by default
* @type {number || null}
*/
this.Direction = null;
/**
* Deletes all the access control rules for inter-VPC firewall toggles associated with the EdgeId. It is empty by default. Enter either EdgeId or Area.
* @type {string || null}
*/
this.EdgeId = null;
/**
* Deletes all the access control rules for NAT firewalls of this region. It is empty by default. Enter either EdgeId or Area.
* @type {string || null}
*/
this.Area = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Direction = 'Direction' in params ? params.Direction : null;
this.EdgeId = 'EdgeId' in params ? params.EdgeId : null;
this.Area = 'Area' in params ? params.Area : null;
}
}
/**
* ModifyAllVPCSwitchStatus response structure.
* @class
*/
class ModifyAllVPCSwitchStatusResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* CreateSecurityGroupRules response structure.
* @class
*/
class CreateSecurityGroupRulesResponse extends AbstractModel {
constructor(){
super();
/**
* Status value. 0: added successfully; non-0: failed to add
* @type {number || null}
*/
this.Status = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Status = 'Status' in params ? params.Status : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeNatFwVpcDnsLst request structure.
* @class
*/
class DescribeNatFwVpcDnsLstRequest extends AbstractModel {
constructor(){
super();
/**
* NAT firewall instance ID
* @type {string || null}
*/
this.NatFwInsId = null;
/**
* Content filtered by NAT firewall, separated with ","
* @type {string || null}
*/
this.NatInsIdFilter = null;
/**
* Number of pages
* @type {number || null}
*/
this.Offset = null;
/**
* Maximum entries per page
* @type {number || null}
*/
this.Limit = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.NatFwInsId = 'NatFwInsId' in params ? params.NatFwInsId : null;
this.NatInsIdFilter = 'NatInsIdFilter' in params ? params.NatInsIdFilter : null;
this.Offset = 'Offset' in params ? params.Offset : null;
this.Limit = 'Limit' in params ? params.Limit : null;
}
}
/**
* DescribeTLogInfo response structure.
* @class
*/
class DescribeTLogInfoResponse extends AbstractModel {
constructor(){
super();
/**
* `NetworkNum`: Number of detected network scans
`HandleNum`: Number of pending processing events
"BanNum":
`VulNum`: Number of vulnerability exploits
"OutNum`: Number of compromised servers
"BruteForceNum": 0
* @type {TLogInfo || null}
*/
this.Data = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Data) {
let obj = new TLogInfo();
obj.deserialize(params.Data)
this.Data = obj;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DescribeUnHandleEventTabList request structure.
* @class
*/
class DescribeUnHandleEventTabListRequest extends AbstractModel {
constructor(){
super();
/**
* Start time
* @type {string || null}
*/
this.StartTime = null;
/**
* End time
* @type {string || null}
*/
this.EndTime = null;
/**
* Gets example ID
* @type {string || null}
*/
this.AssetID = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
this.AssetID = 'AssetID' in params ? params.AssetID : null;
}
}
/**
* DescribeAssociatedInstanceList response structure.
* @class
*/
class DescribeAssociatedInstanceListResponse extends AbstractModel {
constructor(){
super();
/**
* Number of instances
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.Total = null;
/**
* Instance list
Note: This field may return `null`, indicating that no valid value was found.
* @type {Array.<AssociatedInstanceInfo> || null}
*/
this.Data = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.Total = 'Total' in params ? params.Total : null;
if (params.Data) {
this.Data = new Array();
for (let z in params.Data) {
let obj = new AssociatedInstanceInfo();
obj.deserialize(params.Data[z]);
this.Data.push(obj);
}
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* Instance associated with an enterprise security group
* @class
*/
class AssociatedInstanceInfo extends AbstractModel {
constructor(){
super();
/**
* Instance ID
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.InstanceId = null;
/**
* Instance name
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.InstanceName = null;
/**
* Instance type. 3: CVM instance; 4: CLB instance; 5: ENI instance; 6: Cloud database
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.Type = null;
/**
* VPC ID
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.VpcId = null;
/**
* VPC name
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.VpcName = null;
/**
* Public IP
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.PublicIp = null;
/**
* Private IP
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.Ip = null;
/**
* The number of associated security groups
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.SecurityGroupCount = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.InstanceId = 'InstanceId' in params ? params.InstanceId : null;
this.InstanceName = 'InstanceName' in params ? params.InstanceName : null;
this.Type = 'Type' in params ? params.Type : null;
this.VpcId = 'VpcId' in params ? params.VpcId : null;
this.VpcName = 'VpcName' in params ? params.VpcName : null;
this.PublicIp = 'PublicIp' in params ? params.PublicIp : null;
this.Ip = 'Ip' in params ? params.Ip : null;
this.SecurityGroupCount = 'SecurityGroupCount' in params ? params.SecurityGroupCount : null;
}
}
/**
* ModifyStorageSetting response structure.
* @class
*/
class ModifyStorageSettingResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* RemoveAcRule response structure.
* @class
*/
class RemoveAcRuleResponse extends AbstractModel {
constructor(){
super();
/**
* Returns the UUID of the deleted policy after the deletion is successful
* @type {number || null}
*/
this.RuleUuid = null;
/**
* 0: operation successful; -1: operation failed
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.ReturnCode = null;
/**
* success: operation successful; failed: operation failed
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.ReturnMsg = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RuleUuid = 'RuleUuid' in params ? params.RuleUuid : null;
this.ReturnCode = 'ReturnCode' in params ? params.ReturnCode : null;
this.ReturnMsg = 'ReturnMsg' in params ? params.ReturnMsg : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* NAT instance type
* @class
*/
class NatFwInstance extends AbstractModel {
constructor(){
super();
/**
* NAT instance ID
* @type {string || null}
*/
this.NatinsId = null;
/**
* NAT instance name
* @type {string || null}
*/
this.NatinsName = null;
/**
* Instance region
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.Region = null;
/**
* 0: create new; 1: use existing
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.FwMode = null;
/**
* 0: normal; 1: creating
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.Status = null;
/**
* NAT public IP
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.NatIp = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.NatinsId = 'NatinsId' in params ? params.NatinsId : null;
this.NatinsName = 'NatinsName' in params ? params.NatinsName : null;
this.Region = 'Region' in params ? params.Region : null;
this.FwMode = 'FwMode' in params ? params.FwMode : null;
this.Status = 'Status' in params ? params.Status : null;
this.NatIp = 'NatIp' in params ? params.NatIp : null;
}
}
/**
* ExpandCfwVertical request structure.
* @class
*/
class ExpandCfwVerticalRequest extends AbstractModel {
constructor(){
super();
/**
* nat: NAT firewall, ew: east-west firewall
* @type {string || null}
*/
this.FwType = null;
/**
* Bandwidth value
* @type {number || null}
*/
this.Width = null;
/**
* Firewall instance ID
* @type {string || null}
*/
this.CfwInstance = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.FwType = 'FwType' in params ? params.FwType : null;
this.Width = 'Width' in params ? params.Width : null;
this.CfwInstance = 'CfwInstance' in params ? params.CfwInstance : null;
}
}
/**
* ModifyAllPublicIPSwitchStatus response structure.
* @class
*/
class ModifyAllPublicIPSwitchStatusResponse extends AbstractModel {
constructor(){
super();
/**
* Return message
Note: This field may return `null`, indicating that no valid value was found.
* @type {string || null}
*/
this.ReturnMsg = null;
/**
* Error code. 0: success; non-0: failed
Note: This field may return `null`, indicating that no valid value was found.
* @type {number || null}
*/
this.ReturnCode = null;
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ReturnMsg = 'ReturnMsg' in params ? params.ReturnMsg : null;
this.ReturnCode = 'ReturnCode' in params ? params.ReturnCode : null;
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* DeleteVpcInstance response structure.
* @class
*/
class DeleteVpcInstanceResponse extends AbstractModel {
constructor(){
super();
/**
* The unique request ID, which is returned for each request. RequestId is required for locating a problem.
* @type {string || null}
*/
this.RequestId = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RequestId = 'RequestId' in params ? params.RequestId : null;
}
}
/**
* ModifyAssetScan request structure.
* @class
*/
class ModifyAssetScanRequest extends AbstractModel {
constructor(){
super();
/**
* Scan range. 1: port; 2: port + vulnerability scan
* @type {number || null}
*/
this.ScanRange = null;
/**
* Scan mode: 'heavy', 'medium', 'light'
* @type {string || null}
*/
this.ScanDeep = null;
/**
* Scan type. 1: scan now; 2: periodic scan
* @type {number || null}
*/
this.RangeType = null;
/**
* Scheduled task time, required when RangeType is 2
* @type {string || null}
*/
this.ScanPeriod = null;
/**
* Scans this field now and passes the filtered IPs
* @type {Array.<string> || null}
*/
this.ScanFilterIp = null;
/**
* 1: all; 2: single
* @type {number || null}
*/
this.ScanType = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.ScanRange = 'ScanRange' in params ? params.ScanRange : null;
this.ScanDeep = 'ScanDeep' in params ? params.ScanDeep : null;
this.RangeType = 'RangeType' in params ? params.RangeType : null;
this.ScanPeriod = 'ScanPeriod' in params ? params.ScanPeriod : null;
this.ScanFilterIp = 'ScanFilterIp' in params ? params.ScanFilterIp : null;
this.ScanType = 'ScanType' in params ? params.ScanType : null;
}
}
/**
* ModifyBlockIgnoreList request structure.
* @class
*/
class ModifyBlockIgnoreListRequest extends AbstractModel {
constructor(){
super();
/**
* Type of the rule. Values: `1` (Blocklist); `2` (Allowlist)
* @type {number || null}
*/
this.RuleType = null;
/**
* Either IP or Domain is required
* @type {Array.<IocListData> || null}
*/
this.IOC = null;
/**
* Optional values: delete, edit, and add
* @type {string || null}
*/
this.IocAction = null;
/**
* Time format: yyyy-MM-dd HH:mm:ss. Required when IocAction is edit or add
* @type {string || null}
*/
this.StartTime = null;
/**
* End time of the period in the format of yyyy-MM-dd HH:mm:ss. It must be later than both the start time and the current time. It’s required when `IocAction` is `edit` or `add`.
* @type {string || null}
*/
this.EndTime = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
this.RuleType = 'RuleType' in params ? params.RuleType : null;
if (params.IOC) {
this.IOC = new Array();
for (let z in params.IOC) {
let obj = new IocListData();
obj.deserialize(params.IOC[z]);
this.IOC.push(obj);
}
}
this.IocAction = 'IocAction' in params ? params.IocAction : null;
this.StartTime = 'StartTime' in params ? params.StartTime : null;
this.EndTime = 'EndTime' in params ? params.EndTime : null;
}
}
/**
* AddEnterpriseSecurityGroupRules request structure.
* @class
*/
class AddEnterpriseSecurityGroupRulesRequest extends AbstractModel {
constructor(){
super();
/**
* Creates rule data
* @type {Array.<SecurityGroupRule> || null}
*/
this.Data = null;
/**
* Adding type. 0: add to the end; 1: add to the front; 2: insert. Default: 0
* @type {number || null}
*/
this.Type = null;
/**
* An identifier to ensure the idempotency of the request. The value of the ClientToken parameter is a unique string that is generated by your client and can contain up to 64 ASCII characters in length.
* @type {string || null}
*/
this.ClientToken = null;
/**
* Indicates whether to delay publishing. 1: delay; other values: do not delay
* @type {number || null}
*/
this.IsDelay = null;
}
/**
* @private
*/
deserialize(params) {
if (!params) {
return;
}
if (params.Data) {
this.Data = new Array();
for (let z in params.Data) {
let obj = new SecurityGroupRule();
obj.deserialize(params.Data[z]);
this.Data.push(obj);
}
}
this.Type = 'Type' in params ? params.Type : null;
this.ClientToken = 'ClientToken' in params ? params.ClientToken : null;
this.IsDelay = 'IsDelay' in params ? params.IsDelay : null;
}
}
/**
* Security group rules
* @class
*/
class SecurityGroupRule extends AbstractModel {
constructor(){
super();
/**
* Source example:
net: IP/CIDR (192.168.0.2)
template: parameter template (ipm-dyodhpby)
instance: asset instance (ins-123456)
resourcegroup: asset group (/all groups/group 1/subgroup 1)
tag: resource tag ({"Key":"tag key","Value":"tag value"})
region: region (ap-gaungzhou)
* @type {string || null}
*/
this.SourceContent = null;
/**
* Access source type. Valid values: net|template|instance|resourcegroup|tag|region
* @type {string || null}
*/
this.SourceType = null;
/**
* Destination example:
net: IP/CIDR (192.168.0.2)
template: parameter template (ipm-dyodhpby)
instance: asset instance (ins-123456)
resourcegroup: asset group (/all groups/group 1/subgroup 1)
tag: resource tag ({"Key":"tag key","Value":"tag value"})
region: region (ap-gaungzhou)
* @type {string || null}
*/
this.DestContent = null;
/**
* Access destination type. Valid values: net|template|instance|resourcegroup|tag|region
* @type {string || null}
*/
this.DestType = null;
/**
* The action that Cloud Firewall performs on the traffic. Valid values:
accept: allow
drop: deny
* @type {string || null}
*/
this.RuleAction = null;
/**
* Description
* @type {string || null}
*/
this.Description = null;
/**
* Rule priority. -1: lowest; 1: highest
* @type {string || null}
*/
this.OrderIndex = null;
/**
* Protocol. TCP/UDP/ICMP/ANY
Note: This field may r