# -*- coding: utf8 -*-
# Copyright (c) 2017-2021 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.
import warnings
from tencentcloud.common.abstract_model import AbstractModel
class AccelerateMainland(AbstractModel):
"""中国大陆加速优化配置。
"""
def __init__(self):
r"""
:param _Switch: 是否开启中国大陆加速优化配置,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""是否开启中国大陆加速优化配置,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AccelerateMainlandParameters(AbstractModel):
"""中国大陆加速优化配置。
"""
def __init__(self):
r"""
:param _Switch: 中国大陆加速优化配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""中国大陆加速优化配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AccelerateType(AbstractModel):
"""加速类型
"""
def __init__(self):
r"""
:param _Switch: 加速开关。取值范围:
<li> on:打开;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""加速开关。取值范围:
<li> on:打开;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AccelerationDomain(AbstractModel):
"""加速域名
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _DomainName: 加速域名名称。
:type DomainName: str
:param _DomainStatus: 加速域名状态,取值有:
<li>online:已生效;</li>
<li>process:部署中;</li>
<li>offline:已停用;</li>
<li>forbidden:已封禁;</li>
<li>init:未生效,待激活站点;</li>
:type DomainStatus: str
:param _OriginDetail: 源站信息。
注意:此字段可能返回 null,表示取不到有效值。
:type OriginDetail: :class:`tencentcloud.teo.v20220901.models.OriginDetail`
:param _OriginProtocol: 回源协议,取值有:
<li>FOLLOW: 协议跟随;</li>
<li>HTTP: HTTP协议回源;</li>
<li>HTTPS: HTTPS协议回源。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type OriginProtocol: str
:param _Certificate: 域名证书信息
注意:此字段可能返回 null,表示取不到有效值。
:type Certificate: :class:`tencentcloud.teo.v20220901.models.AccelerationDomainCertificate`
:param _HttpOriginPort: HTTP回源端口。
注意:此字段可能返回 null,表示取不到有效值。
:type HttpOriginPort: int
:param _HttpsOriginPort: HTTPS回源端口。
注意:此字段可能返回 null,表示取不到有效值。
:type HttpsOriginPort: int
:param _IPv6Status: IPv6状态,取值有:
<li>follow:遵循站点IPv6配置;</li>
<li>on:开启状态;</li>
<li>off:关闭状态。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type IPv6Status: str
:param _Cname: CNAME 地址。
:type Cname: str
:param _IdentificationStatus: 加速域名归属权验证状态,取值有: <li>pending:待验证;</li> <li>finished:已完成验证。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type IdentificationStatus: str
:param _CreatedOn: 创建时间。
:type CreatedOn: str
:param _ModifiedOn: 修改时间。
:type ModifiedOn: str
:param _OwnershipVerification: 当域名需要进行归属权验证才能继续提供服务时,该对象会携带对应验证方式所需要的信息。
注意:此字段可能返回 null,表示取不到有效值。
:type OwnershipVerification: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
"""
self._ZoneId = None
self._DomainName = None
self._DomainStatus = None
self._OriginDetail = None
self._OriginProtocol = None
self._Certificate = None
self._HttpOriginPort = None
self._HttpsOriginPort = None
self._IPv6Status = None
self._Cname = None
self._IdentificationStatus = None
self._CreatedOn = None
self._ModifiedOn = None
self._OwnershipVerification = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def DomainName(self):
"""加速域名名称。
:rtype: str
"""
return self._DomainName
@DomainName.setter
def DomainName(self, DomainName):
self._DomainName = DomainName
@property
def DomainStatus(self):
"""加速域名状态,取值有:
<li>online:已生效;</li>
<li>process:部署中;</li>
<li>offline:已停用;</li>
<li>forbidden:已封禁;</li>
<li>init:未生效,待激活站点;</li>
:rtype: str
"""
return self._DomainStatus
@DomainStatus.setter
def DomainStatus(self, DomainStatus):
self._DomainStatus = DomainStatus
@property
def OriginDetail(self):
"""源站信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OriginDetail`
"""
return self._OriginDetail
@OriginDetail.setter
def OriginDetail(self, OriginDetail):
self._OriginDetail = OriginDetail
@property
def OriginProtocol(self):
"""回源协议,取值有:
<li>FOLLOW: 协议跟随;</li>
<li>HTTP: HTTP协议回源;</li>
<li>HTTPS: HTTPS协议回源。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._OriginProtocol
@OriginProtocol.setter
def OriginProtocol(self, OriginProtocol):
self._OriginProtocol = OriginProtocol
@property
def Certificate(self):
"""域名证书信息
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerationDomainCertificate`
"""
return self._Certificate
@Certificate.setter
def Certificate(self, Certificate):
self._Certificate = Certificate
@property
def HttpOriginPort(self):
"""HTTP回源端口。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._HttpOriginPort
@HttpOriginPort.setter
def HttpOriginPort(self, HttpOriginPort):
self._HttpOriginPort = HttpOriginPort
@property
def HttpsOriginPort(self):
"""HTTPS回源端口。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._HttpsOriginPort
@HttpsOriginPort.setter
def HttpsOriginPort(self, HttpsOriginPort):
self._HttpsOriginPort = HttpsOriginPort
@property
def IPv6Status(self):
"""IPv6状态,取值有:
<li>follow:遵循站点IPv6配置;</li>
<li>on:开启状态;</li>
<li>off:关闭状态。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._IPv6Status
@IPv6Status.setter
def IPv6Status(self, IPv6Status):
self._IPv6Status = IPv6Status
@property
def Cname(self):
"""CNAME 地址。
:rtype: str
"""
return self._Cname
@Cname.setter
def Cname(self, Cname):
self._Cname = Cname
@property
def IdentificationStatus(self):
"""加速域名归属权验证状态,取值有: <li>pending:待验证;</li> <li>finished:已完成验证。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._IdentificationStatus
@IdentificationStatus.setter
def IdentificationStatus(self, IdentificationStatus):
self._IdentificationStatus = IdentificationStatus
@property
def CreatedOn(self):
"""创建时间。
:rtype: str
"""
return self._CreatedOn
@CreatedOn.setter
def CreatedOn(self, CreatedOn):
self._CreatedOn = CreatedOn
@property
def ModifiedOn(self):
"""修改时间。
:rtype: str
"""
return self._ModifiedOn
@ModifiedOn.setter
def ModifiedOn(self, ModifiedOn):
self._ModifiedOn = ModifiedOn
@property
def OwnershipVerification(self):
"""当域名需要进行归属权验证才能继续提供服务时,该对象会携带对应验证方式所需要的信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
"""
return self._OwnershipVerification
@OwnershipVerification.setter
def OwnershipVerification(self, OwnershipVerification):
self._OwnershipVerification = OwnershipVerification
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._DomainName = params.get("DomainName")
self._DomainStatus = params.get("DomainStatus")
if params.get("OriginDetail") is not None:
self._OriginDetail = OriginDetail()
self._OriginDetail._deserialize(params.get("OriginDetail"))
self._OriginProtocol = params.get("OriginProtocol")
if params.get("Certificate") is not None:
self._Certificate = AccelerationDomainCertificate()
self._Certificate._deserialize(params.get("Certificate"))
self._HttpOriginPort = params.get("HttpOriginPort")
self._HttpsOriginPort = params.get("HttpsOriginPort")
self._IPv6Status = params.get("IPv6Status")
self._Cname = params.get("Cname")
self._IdentificationStatus = params.get("IdentificationStatus")
self._CreatedOn = params.get("CreatedOn")
self._ModifiedOn = params.get("ModifiedOn")
if params.get("OwnershipVerification") is not None:
self._OwnershipVerification = OwnershipVerification()
self._OwnershipVerification._deserialize(params.get("OwnershipVerification"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AccelerationDomainCertificate(AbstractModel):
"""加速域名所对应的证书信息。
"""
def __init__(self):
r"""
:param _Mode: 配置证书的模式,取值有: <li>disable:不配置证书;</li> <li>eofreecert:配置 EdgeOne 免费证书;</li> <li>sslcert:配置 SSL 证书。</li>
:type Mode: str
:param _List: 服务端证书列表,相关证书部署在 EO 的入口侧。
注意:此字段可能返回 null,表示取不到有效值。
:type List: list of CertificateInfo
:param _ClientCertInfo: 在边缘双向认证场景下,该字段为客户端的 CA 证书,部署在 EO 节点内,用于 EO 节点认证客户端证书。
:type ClientCertInfo: :class:`tencentcloud.teo.v20220901.models.MutualTLS`
:param _UpstreamCertInfo: 用于 EO 节点回源时携带的证书,源站启用双向认证握手时使用,用于源站认证客户端证书是否有效,确保请求来源于受信任的 EO 节点。
:type UpstreamCertInfo: :class:`tencentcloud.teo.v20220901.models.UpstreamCertInfo`
"""
self._Mode = None
self._List = None
self._ClientCertInfo = None
self._UpstreamCertInfo = None
@property
def Mode(self):
"""配置证书的模式,取值有: <li>disable:不配置证书;</li> <li>eofreecert:配置 EdgeOne 免费证书;</li> <li>sslcert:配置 SSL 证书。</li>
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def List(self):
"""服务端证书列表,相关证书部署在 EO 的入口侧。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of CertificateInfo
"""
return self._List
@List.setter
def List(self, List):
self._List = List
@property
def ClientCertInfo(self):
"""在边缘双向认证场景下,该字段为客户端的 CA 证书,部署在 EO 节点内,用于 EO 节点认证客户端证书。
:rtype: :class:`tencentcloud.teo.v20220901.models.MutualTLS`
"""
return self._ClientCertInfo
@ClientCertInfo.setter
def ClientCertInfo(self, ClientCertInfo):
self._ClientCertInfo = ClientCertInfo
@property
def UpstreamCertInfo(self):
"""用于 EO 节点回源时携带的证书,源站启用双向认证握手时使用,用于源站认证客户端证书是否有效,确保请求来源于受信任的 EO 节点。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamCertInfo`
"""
return self._UpstreamCertInfo
@UpstreamCertInfo.setter
def UpstreamCertInfo(self, UpstreamCertInfo):
self._UpstreamCertInfo = UpstreamCertInfo
def _deserialize(self, params):
self._Mode = params.get("Mode")
if params.get("List") is not None:
self._List = []
for item in params.get("List"):
obj = CertificateInfo()
obj._deserialize(item)
self._List.append(obj)
if params.get("ClientCertInfo") is not None:
self._ClientCertInfo = MutualTLS()
self._ClientCertInfo._deserialize(params.get("ClientCertInfo"))
if params.get("UpstreamCertInfo") is not None:
self._UpstreamCertInfo = UpstreamCertInfo()
self._UpstreamCertInfo._deserialize(params.get("UpstreamCertInfo"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AccessURLRedirectParameters(AbstractModel):
"""访问 URL 重定向 配置参数。
"""
def __init__(self):
r"""
:param _StatusCode: 状态码,取值为 301、302、303、307、308 之一。
:type StatusCode: int
:param _Protocol: 目标请求协议,取值有:
<li>http:目标请求协议 HTTP;</li>
<li>https:目标请求协议 HTTPS;</li>
<li>follow:跟随请求。</li>
:type Protocol: str
:param _HostName: 目标 HostName 。
注意:此字段可能返回 null,表示取不到有效值。
:type HostName: :class:`tencentcloud.teo.v20220901.models.HostName`
:param _URLPath: 目标路径。
注意:此字段可能返回 null,表示取不到有效值。
:type URLPath: :class:`tencentcloud.teo.v20220901.models.URLPath`
:param _QueryString: 携带查询参数。
注意:此字段可能返回 null,表示取不到有效值。
:type QueryString: :class:`tencentcloud.teo.v20220901.models.AccessURLRedirectQueryString`
"""
self._StatusCode = None
self._Protocol = None
self._HostName = None
self._URLPath = None
self._QueryString = None
@property
def StatusCode(self):
"""状态码,取值为 301、302、303、307、308 之一。
:rtype: int
"""
return self._StatusCode
@StatusCode.setter
def StatusCode(self, StatusCode):
self._StatusCode = StatusCode
@property
def Protocol(self):
"""目标请求协议,取值有:
<li>http:目标请求协议 HTTP;</li>
<li>https:目标请求协议 HTTPS;</li>
<li>follow:跟随请求。</li>
:rtype: str
"""
return self._Protocol
@Protocol.setter
def Protocol(self, Protocol):
self._Protocol = Protocol
@property
def HostName(self):
"""目标 HostName 。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HostName`
"""
return self._HostName
@HostName.setter
def HostName(self, HostName):
self._HostName = HostName
@property
def URLPath(self):
"""目标路径。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.URLPath`
"""
return self._URLPath
@URLPath.setter
def URLPath(self, URLPath):
self._URLPath = URLPath
@property
def QueryString(self):
"""携带查询参数。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccessURLRedirectQueryString`
"""
return self._QueryString
@QueryString.setter
def QueryString(self, QueryString):
self._QueryString = QueryString
def _deserialize(self, params):
self._StatusCode = params.get("StatusCode")
self._Protocol = params.get("Protocol")
if params.get("HostName") is not None:
self._HostName = HostName()
self._HostName._deserialize(params.get("HostName"))
if params.get("URLPath") is not None:
self._URLPath = URLPath()
self._URLPath._deserialize(params.get("URLPath"))
if params.get("QueryString") is not None:
self._QueryString = AccessURLRedirectQueryString()
self._QueryString._deserialize(params.get("QueryString"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AccessURLRedirectQueryString(AbstractModel):
"""访问 URL 重定向 配置参数。
"""
def __init__(self):
r"""
:param _Action: 执行动作,取值有:
<li>full:全部保留;</li>
<li>ignore:全部忽略。</li>
:type Action: str
"""
self._Action = None
@property
def Action(self):
"""执行动作,取值有:
<li>full:全部保留;</li>
<li>ignore:全部忽略。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
def _deserialize(self, params):
self._Action = params.get("Action")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AclCondition(AbstractModel):
"""精准防护条件
"""
def __init__(self):
r"""
:param _MatchFrom: 匹配字段,取值有:
<li>host:请求域名;</li>
<li>sip:客户端IP;</li>
<li>ua:User-Agent;</li>
<li>cookie:会话 Cookie;</li>
<li>cgi:CGI 脚本;</li>
<li>xff:XFF 扩展头部;</li>
<li>url:请求 URL;</li>
<li>accept:请求内容类型;</li>
<li>method:请求方式;</li>
<li>header:请求头部;</li>
<li>app_proto:应用层协议;</li>
<li>sip_proto:网络层协议;</li>
<li>uabot:UA 特征规则,仅bot自定义规则可用;</li>
<li>idcid:IDC 规则,仅bot自定义规则可用;</li>
<li>sipbot:搜索引擎规则,仅bot自定义规则可用;</li>
<li>portrait:画像分析,仅bot自定义规则可用;</li>
<li>header_seq:请求头顺序,仅bot自定义规则可用;</li>
<li>hdr:请求正文,仅Web防护自定义规则可用。</li>
:type MatchFrom: str
:param _MatchParam: 匹配字符串。当 MatchFrom 为 header 时,可以填入 header 的 key 作为参数。
:type MatchParam: str
:param _Operator: 匹配关系,取值有:
<li>equal:字符串等于;</li>
<li>not_equal:数值不等于;</li>
<li>include:字符包含;</li>
<li>not_include:字符不包含;</li>
<li>match:ip匹配;</li>
<li>not_match:ip不匹配;</li>
<li>include_area:地域包含;</li>
<li>is_empty:存在字段但值为空;</li>
<li>not_exists:不存在关键字段;</li>
<li>regexp:正则匹配;</li>
<li>len_gt:数值大于;</li>
<li>len_lt:数值小于;</li>
<li>len_eq:数值等于;</li>
<li>match_prefix:前缀匹配;</li>
<li>match_suffix:后缀匹配;</li>
<li>wildcard:通配符。</li>
:type Operator: str
:param _MatchContent: 匹配内容。
:type MatchContent: str
"""
self._MatchFrom = None
self._MatchParam = None
self._Operator = None
self._MatchContent = None
@property
def MatchFrom(self):
"""匹配字段,取值有:
<li>host:请求域名;</li>
<li>sip:客户端IP;</li>
<li>ua:User-Agent;</li>
<li>cookie:会话 Cookie;</li>
<li>cgi:CGI 脚本;</li>
<li>xff:XFF 扩展头部;</li>
<li>url:请求 URL;</li>
<li>accept:请求内容类型;</li>
<li>method:请求方式;</li>
<li>header:请求头部;</li>
<li>app_proto:应用层协议;</li>
<li>sip_proto:网络层协议;</li>
<li>uabot:UA 特征规则,仅bot自定义规则可用;</li>
<li>idcid:IDC 规则,仅bot自定义规则可用;</li>
<li>sipbot:搜索引擎规则,仅bot自定义规则可用;</li>
<li>portrait:画像分析,仅bot自定义规则可用;</li>
<li>header_seq:请求头顺序,仅bot自定义规则可用;</li>
<li>hdr:请求正文,仅Web防护自定义规则可用。</li>
:rtype: str
"""
return self._MatchFrom
@MatchFrom.setter
def MatchFrom(self, MatchFrom):
self._MatchFrom = MatchFrom
@property
def MatchParam(self):
"""匹配字符串。当 MatchFrom 为 header 时,可以填入 header 的 key 作为参数。
:rtype: str
"""
return self._MatchParam
@MatchParam.setter
def MatchParam(self, MatchParam):
self._MatchParam = MatchParam
@property
def Operator(self):
"""匹配关系,取值有:
<li>equal:字符串等于;</li>
<li>not_equal:数值不等于;</li>
<li>include:字符包含;</li>
<li>not_include:字符不包含;</li>
<li>match:ip匹配;</li>
<li>not_match:ip不匹配;</li>
<li>include_area:地域包含;</li>
<li>is_empty:存在字段但值为空;</li>
<li>not_exists:不存在关键字段;</li>
<li>regexp:正则匹配;</li>
<li>len_gt:数值大于;</li>
<li>len_lt:数值小于;</li>
<li>len_eq:数值等于;</li>
<li>match_prefix:前缀匹配;</li>
<li>match_suffix:后缀匹配;</li>
<li>wildcard:通配符。</li>
:rtype: str
"""
return self._Operator
@Operator.setter
def Operator(self, Operator):
self._Operator = Operator
@property
def MatchContent(self):
"""匹配内容。
:rtype: str
"""
return self._MatchContent
@MatchContent.setter
def MatchContent(self, MatchContent):
self._MatchContent = MatchContent
def _deserialize(self, params):
self._MatchFrom = params.get("MatchFrom")
self._MatchParam = params.get("MatchParam")
self._Operator = params.get("Operator")
self._MatchContent = params.get("MatchContent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AclConfig(AbstractModel):
"""ACL配置
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>
:type Switch: str
:param _AclUserRules: 用户自定义规则。
:type AclUserRules: list of AclUserRule
:param _Customizes: 托管定制规则
注意:此字段可能返回 null,表示取不到有效值。
:type Customizes: list of AclUserRule
"""
self._Switch = None
self._AclUserRules = None
self._Customizes = None
@property
def Switch(self):
"""开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def AclUserRules(self):
"""用户自定义规则。
:rtype: list of AclUserRule
"""
return self._AclUserRules
@AclUserRules.setter
def AclUserRules(self, AclUserRules):
self._AclUserRules = AclUserRules
@property
def Customizes(self):
"""托管定制规则
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of AclUserRule
"""
return self._Customizes
@Customizes.setter
def Customizes(self, Customizes):
self._Customizes = Customizes
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("AclUserRules") is not None:
self._AclUserRules = []
for item in params.get("AclUserRules"):
obj = AclUserRule()
obj._deserialize(item)
self._AclUserRules.append(obj)
if params.get("Customizes") is not None:
self._Customizes = []
for item in params.get("Customizes"):
obj = AclUserRule()
obj._deserialize(item)
self._Customizes.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AclUserRule(AbstractModel):
"""用户自定义规则
"""
def __init__(self):
r"""
:param _RuleName: 规则名。
:type RuleName: str
:param _Action: 处罚动作,取值有:
<li>trans:放行;</li>
<li>drop:拦截;</li>
<li>monitor:观察;</li>
<li>ban:IP 封禁;</li>
<li>redirect:重定向;</li>
<li>page:指定页面;</li>
<li>alg:JavaScript 挑战。</li>
:type Action: str
:param _RuleStatus: 规则状态,取值有:
<li>on:生效;</li>
<li>off:失效。</li>
:type RuleStatus: str
:param _AclConditions: 自定义规则。
:type AclConditions: list of AclCondition
:param _RulePriority: 规则优先级,取值范围0-100。
:type RulePriority: int
:param _RuleID: 规则 Id。仅出参使用。
:type RuleID: int
:param _UpdateTime: 更新时间。仅出参使用。
:type UpdateTime: str
:param _PunishTime: ip 封禁的惩罚时间。Action 是 ban 时必填,且不能为空,取值范围0-2天。
:type PunishTime: int
:param _PunishTimeUnit: ip 封禁的惩罚时间单位,取值有:
<li>second:秒;</li>
<li>minutes:分;</li>
<li>hour:小时。</li>默认为 second。
:type PunishTimeUnit: str
:param _Name: 自定义返回页面的名称。Action 是 page 时必填,且不能为空。
:type Name: str
:param _PageId: 自定义返回页面的实例 Id。默认为0,代表使用系统默认拦截页面。该参数已废弃。
:type PageId: int
:param _CustomResponseId: 自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Action 是 page 时必填,且不能为空。
:type CustomResponseId: str
:param _ResponseCode: 自定义返回页面的响应码。Action 是 page 时必填,且不能为空,取值: 100~600,不支持 3xx 响应码。默认值:567。
:type ResponseCode: int
:param _RedirectUrl: 重定向时候的地址。Action 是 redirect 时必填,且不能为空。
:type RedirectUrl: str
"""
self._RuleName = None
self._Action = None
self._RuleStatus = None
self._AclConditions = None
self._RulePriority = None
self._RuleID = None
self._UpdateTime = None
self._PunishTime = None
self._PunishTimeUnit = None
self._Name = None
self._PageId = None
self._CustomResponseId = None
self._ResponseCode = None
self._RedirectUrl = None
@property
def RuleName(self):
"""规则名。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Action(self):
"""处罚动作,取值有:
<li>trans:放行;</li>
<li>drop:拦截;</li>
<li>monitor:观察;</li>
<li>ban:IP 封禁;</li>
<li>redirect:重定向;</li>
<li>page:指定页面;</li>
<li>alg:JavaScript 挑战。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RuleStatus(self):
"""规则状态,取值有:
<li>on:生效;</li>
<li>off:失效。</li>
:rtype: str
"""
return self._RuleStatus
@RuleStatus.setter
def RuleStatus(self, RuleStatus):
self._RuleStatus = RuleStatus
@property
def AclConditions(self):
"""自定义规则。
:rtype: list of AclCondition
"""
return self._AclConditions
@AclConditions.setter
def AclConditions(self, AclConditions):
self._AclConditions = AclConditions
@property
def RulePriority(self):
"""规则优先级,取值范围0-100。
:rtype: int
"""
return self._RulePriority
@RulePriority.setter
def RulePriority(self, RulePriority):
self._RulePriority = RulePriority
@property
def RuleID(self):
"""规则 Id。仅出参使用。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def UpdateTime(self):
"""更新时间。仅出参使用。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def PunishTime(self):
"""ip 封禁的惩罚时间。Action 是 ban 时必填,且不能为空,取值范围0-2天。
:rtype: int
"""
return self._PunishTime
@PunishTime.setter
def PunishTime(self, PunishTime):
self._PunishTime = PunishTime
@property
def PunishTimeUnit(self):
"""ip 封禁的惩罚时间单位,取值有:
<li>second:秒;</li>
<li>minutes:分;</li>
<li>hour:小时。</li>默认为 second。
:rtype: str
"""
return self._PunishTimeUnit
@PunishTimeUnit.setter
def PunishTimeUnit(self, PunishTimeUnit):
self._PunishTimeUnit = PunishTimeUnit
@property
def Name(self):
"""自定义返回页面的名称。Action 是 page 时必填,且不能为空。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def PageId(self):
"""自定义返回页面的实例 Id。默认为0,代表使用系统默认拦截页面。该参数已废弃。
:rtype: int
"""
return self._PageId
@PageId.setter
def PageId(self, PageId):
self._PageId = PageId
@property
def CustomResponseId(self):
"""自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Action 是 page 时必填,且不能为空。
:rtype: str
"""
return self._CustomResponseId
@CustomResponseId.setter
def CustomResponseId(self, CustomResponseId):
self._CustomResponseId = CustomResponseId
@property
def ResponseCode(self):
"""自定义返回页面的响应码。Action 是 page 时必填,且不能为空,取值: 100~600,不支持 3xx 响应码。默认值:567。
:rtype: int
"""
return self._ResponseCode
@ResponseCode.setter
def ResponseCode(self, ResponseCode):
self._ResponseCode = ResponseCode
@property
def RedirectUrl(self):
"""重定向时候的地址。Action 是 redirect 时必填,且不能为空。
:rtype: str
"""
return self._RedirectUrl
@RedirectUrl.setter
def RedirectUrl(self, RedirectUrl):
self._RedirectUrl = RedirectUrl
def _deserialize(self, params):
self._RuleName = params.get("RuleName")
self._Action = params.get("Action")
self._RuleStatus = params.get("RuleStatus")
if params.get("AclConditions") is not None:
self._AclConditions = []
for item in params.get("AclConditions"):
obj = AclCondition()
obj._deserialize(item)
self._AclConditions.append(obj)
self._RulePriority = params.get("RulePriority")
self._RuleID = params.get("RuleID")
self._UpdateTime = params.get("UpdateTime")
self._PunishTime = params.get("PunishTime")
self._PunishTimeUnit = params.get("PunishTimeUnit")
self._Name = params.get("Name")
self._PageId = params.get("PageId")
self._CustomResponseId = params.get("CustomResponseId")
self._ResponseCode = params.get("ResponseCode")
self._RedirectUrl = params.get("RedirectUrl")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Action(AbstractModel):
"""规则引擎功能项操作,对于一种功能只对应下面三种类型的其中一种,RuleAction 数组中的每一项只能是其中一个类型,更多功能项的填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
"""
def __init__(self):
r"""
:param _NormalAction: 常规功能操作,选择该类型的功能项有:
<li> 访问URL 重写(AccessUrlRedirect);</li>
<li> 回源 URL 重写 (UpstreamUrlRedirect);</li>
<li> QUIC(QUIC);</li>
<li> WebSocket (WebSocket);</li>
<li> 视频拖拽(VideoSeek);</li>
<li> Token 鉴权(Authentication);</li>
<li> 自定义CacheKey(CacheKey);</li>
<li> 节点缓存 TTL (Cache);</li>
<li> 浏览器缓存 TTL(MaxAge);</li>
<li> 离线缓存(OfflineCache);</li>
<li> 智能加速(SmartRouting);</li>
<li> 分片回源(RangeOriginPull);</li>
<li> HTTP/2 回源(UpstreamHttp2);</li>
<li> Host Header 重写(HostHeader);</li>
<li> 强制 HTTPS(ForceRedirect);</li>
<li> 回源 HTTPS(OriginPullProtocol);</li>
<li> 单连接下载限速(ResponseSpeedLimit);</li>
<li> 缓存预刷新(CachePrefresh);</li>
<li> 智能压缩(Compression);</li>
<li> Hsts;</li>
<li> ClientIpHeader;</li>
<li> SslTlsSecureConf;</li>
<li> OcspStapling;</li>
<li> HTTP/2 访问(Http2);</li>
<li> 回源跟随重定向(UpstreamFollowRedirect);</li>
<li> 修改源站(Origin)。</li>
<li> 七层回源超时(HTTPUpstreamTimeout)。</li>
<li> Http应答(HttpResponse)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type NormalAction: :class:`tencentcloud.teo.v20220901.models.NormalAction`
:param _RewriteAction: 带有请求头/响应头的功能操作,选择该类型的功能项有:
<li> 修改 HTTP 请求头(RequestHeader);</li>
<li> 修改HTTP响应头(ResponseHeader)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type RewriteAction: :class:`tencentcloud.teo.v20220901.models.RewriteAction`
:param _CodeAction: 带有状态码的功能操作,选择该类型的功能项有:
<li> 自定义错误页面(ErrorPage);</li>
<li> 状态码缓存 TTL(StatusCodeCache)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type CodeAction: :class:`tencentcloud.teo.v20220901.models.CodeAction`
"""
self._NormalAction = None
self._RewriteAction = None
self._CodeAction = None
@property
def NormalAction(self):
"""常规功能操作,选择该类型的功能项有:
<li> 访问URL 重写(AccessUrlRedirect);</li>
<li> 回源 URL 重写 (UpstreamUrlRedirect);</li>
<li> QUIC(QUIC);</li>
<li> WebSocket (WebSocket);</li>
<li> 视频拖拽(VideoSeek);</li>
<li> Token 鉴权(Authentication);</li>
<li> 自定义CacheKey(CacheKey);</li>
<li> 节点缓存 TTL (Cache);</li>
<li> 浏览器缓存 TTL(MaxAge);</li>
<li> 离线缓存(OfflineCache);</li>
<li> 智能加速(SmartRouting);</li>
<li> 分片回源(RangeOriginPull);</li>
<li> HTTP/2 回源(UpstreamHttp2);</li>
<li> Host Header 重写(HostHeader);</li>
<li> 强制 HTTPS(ForceRedirect);</li>
<li> 回源 HTTPS(OriginPullProtocol);</li>
<li> 单连接下载限速(ResponseSpeedLimit);</li>
<li> 缓存预刷新(CachePrefresh);</li>
<li> 智能压缩(Compression);</li>
<li> Hsts;</li>
<li> ClientIpHeader;</li>
<li> SslTlsSecureConf;</li>
<li> OcspStapling;</li>
<li> HTTP/2 访问(Http2);</li>
<li> 回源跟随重定向(UpstreamFollowRedirect);</li>
<li> 修改源站(Origin)。</li>
<li> 七层回源超时(HTTPUpstreamTimeout)。</li>
<li> Http应答(HttpResponse)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.NormalAction`
"""
return self._NormalAction
@NormalAction.setter
def NormalAction(self, NormalAction):
self._NormalAction = NormalAction
@property
def RewriteAction(self):
"""带有请求头/响应头的功能操作,选择该类型的功能项有:
<li> 修改 HTTP 请求头(RequestHeader);</li>
<li> 修改HTTP响应头(ResponseHeader)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.RewriteAction`
"""
return self._RewriteAction
@RewriteAction.setter
def RewriteAction(self, RewriteAction):
self._RewriteAction = RewriteAction
@property
def CodeAction(self):
"""带有状态码的功能操作,选择该类型的功能项有:
<li> 自定义错误页面(ErrorPage);</li>
<li> 状态码缓存 TTL(StatusCodeCache)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CodeAction`
"""
return self._CodeAction
@CodeAction.setter
def CodeAction(self, CodeAction):
self._CodeAction = CodeAction
def _deserialize(self, params):
if params.get("NormalAction") is not None:
self._NormalAction = NormalAction()
self._NormalAction._deserialize(params.get("NormalAction"))
if params.get("RewriteAction") is not None:
self._RewriteAction = RewriteAction()
self._RewriteAction._deserialize(params.get("RewriteAction"))
if params.get("CodeAction") is not None:
self._CodeAction = CodeAction()
self._CodeAction._deserialize(params.get("CodeAction"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AdvancedFilter(AbstractModel):
"""描述键值对过滤器,用于条件过滤查询,支持模糊查询。例如过滤ID、名称、状态等。
若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。
若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。
"""
def __init__(self):
r"""
:param _Name: 需要过滤的字段。
:type Name: str
:param _Values: 字段的过滤值。
:type Values: list of str
:param _Fuzzy: 是否启用模糊查询。
:type Fuzzy: bool
"""
self._Name = None
self._Values = None
self._Fuzzy = None
@property
def Name(self):
"""需要过滤的字段。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Values(self):
"""字段的过滤值。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
@property
def Fuzzy(self):
"""是否启用模糊查询。
:rtype: bool
"""
return self._Fuzzy
@Fuzzy.setter
def Fuzzy(self, Fuzzy):
self._Fuzzy = Fuzzy
def _deserialize(self, params):
self._Name = params.get("Name")
self._Values = params.get("Values")
self._Fuzzy = params.get("Fuzzy")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AiRule(AbstractModel):
"""AI规则引擎防护
"""
def __init__(self):
r"""
:param _Mode: AI规则引擎状态,取值有:
<li> smart_status_close:关闭;</li>
<li> smart_status_open:拦截处置;</li>
<li> smart_status_observe:观察处置。</li>
:type Mode: str
"""
self._Mode = None
@property
def Mode(self):
"""AI规则引擎状态,取值有:
<li> smart_status_close:关闭;</li>
<li> smart_status_open:拦截处置;</li>
<li> smart_status_observe:观察处置。</li>
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
def _deserialize(self, params):
self._Mode = params.get("Mode")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AlgDetectJS(AbstractModel):
"""Bot主动特征识别客户端行为校验。
"""
def __init__(self):
r"""
:param _Name: 操作名称。
:type Name: str
:param _WorkLevel: 工作量证明 (proof_Of-Work)校验强度,默认low,取值有:
<li>low:低;</li>
<li>middle:中;</li>
<li>high:高。</li>
:type WorkLevel: str
:param _ExecuteMode: 执行方式,js延迟执行的时间。单位为ms,默认500,取值:0~1000。
:type ExecuteMode: int
:param _InvalidStatTime: 客户端末启用JS(末完成检测)统计周期。单位为秒,默认10,取值:5~3600。
:type InvalidStatTime: int
:param _InvalidThreshold: 客户端末启用JS(末完成检测)触发阈值。单位为次,默认300,取值:1~100000000。
:type InvalidThreshold: int
:param _AlgDetectResults: Bot主动特征识别客户端行为校验结果。
:type AlgDetectResults: list of AlgDetectResult
"""
self._Name = None
self._WorkLevel = None
self._ExecuteMode = None
self._InvalidStatTime = None
self._InvalidThreshold = None
self._AlgDetectResults = None
@property
def Name(self):
"""操作名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def WorkLevel(self):
"""工作量证明 (proof_Of-Work)校验强度,默认low,取值有:
<li>low:低;</li>
<li>middle:中;</li>
<li>high:高。</li>
:rtype: str
"""
return self._WorkLevel
@WorkLevel.setter
def WorkLevel(self, WorkLevel):
self._WorkLevel = WorkLevel
@property
def ExecuteMode(self):
"""执行方式,js延迟执行的时间。单位为ms,默认500,取值:0~1000。
:rtype: int
"""
return self._ExecuteMode
@ExecuteMode.setter
def ExecuteMode(self, ExecuteMode):
self._ExecuteMode = ExecuteMode
@property
def InvalidStatTime(self):
"""客户端末启用JS(末完成检测)统计周期。单位为秒,默认10,取值:5~3600。
:rtype: int
"""
return self._InvalidStatTime
@InvalidStatTime.setter
def InvalidStatTime(self, InvalidStatTime):
self._InvalidStatTime = InvalidStatTime
@property
def InvalidThreshold(self):
"""客户端末启用JS(末完成检测)触发阈值。单位为次,默认300,取值:1~100000000。
:rtype: int
"""
return self._InvalidThreshold
@InvalidThreshold.setter
def InvalidThreshold(self, InvalidThreshold):
self._InvalidThreshold = InvalidThreshold
@property
def AlgDetectResults(self):
"""Bot主动特征识别客户端行为校验结果。
:rtype: list of AlgDetectResult
"""
return self._AlgDetectResults
@AlgDetectResults.setter
def AlgDetectResults(self, AlgDetectResults):
self._AlgDetectResults = AlgDetectResults
def _deserialize(self, params):
self._Name = params.get("Name")
self._WorkLevel = params.get("WorkLevel")
self._ExecuteMode = params.get("ExecuteMode")
self._InvalidStatTime = params.get("InvalidStatTime")
self._InvalidThreshold = params.get("InvalidThreshold")
if params.get("AlgDetectResults") is not None:
self._AlgDetectResults = []
for item in params.get("AlgDetectResults"):
obj = AlgDetectResult()
obj._deserialize(item)
self._AlgDetectResults.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AlgDetectResult(AbstractModel):
"""Bot主动特征识别校验结果。
"""
def __init__(self):
r"""
:param _Result: 校验结果,取值有:
<li>invalid:不合法Cookie;</li>
<li>cookie_empty:末携带Cookie或Cookie己过期;</li>
<li>js_empty:客户端末启用JS(末完成检测);</li>
<li>low:会话速率和周期特征校验低风险;</li>
<li>middle:会话速率和周期特征校验中风险;</li>
<li>high:会话速率和周期特征校验高风险;</li>
<li>timeout:检测超时时长;</li>
<li>not_browser:不合法浏览器;</li>
<li>is_bot:Bot客户端。</li>
:type Result: str
:param _Action: 处罚动作,取值有:
<li>drop:拦截;</li>
<li>monitor:观察;</li>
<li>silence:静默;</li>
<li>shortdelay:(短时间)等待后响应;</li>
<li>longdelay:(长时间)等待后响应。</li>
:type Action: str
"""
self._Result = None
self._Action = None
@property
def Result(self):
"""校验结果,取值有:
<li>invalid:不合法Cookie;</li>
<li>cookie_empty:末携带Cookie或Cookie己过期;</li>
<li>js_empty:客户端末启用JS(末完成检测);</li>
<li>low:会话速率和周期特征校验低风险;</li>
<li>middle:会话速率和周期特征校验中风险;</li>
<li>high:会话速率和周期特征校验高风险;</li>
<li>timeout:检测超时时长;</li>
<li>not_browser:不合法浏览器;</li>
<li>is_bot:Bot客户端。</li>
:rtype: str
"""
return self._Result
@Result.setter
def Result(self, Result):
self._Result = Result
@property
def Action(self):
"""处罚动作,取值有:
<li>drop:拦截;</li>
<li>monitor:观察;</li>
<li>silence:静默;</li>
<li>shortdelay:(短时间)等待后响应;</li>
<li>longdelay:(长时间)等待后响应。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
def _deserialize(self, params):
self._Result = params.get("Result")
self._Action = params.get("Action")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AlgDetectRule(AbstractModel):
"""Bot主动特征识别规则。
"""
def __init__(self):
r"""
:param _RuleID: 规则id。
:type RuleID: int
:param _RuleName: 规则名。
:type RuleName: str
:param _Switch: 规则开关。
:type Switch: str
:param _AlgConditions: 自定义规则。
:type AlgConditions: list of AclCondition
:param _AlgDetectSession: Cookie校验和会话行为分析。
注意:此字段可能返回 null,表示取不到有效值。
:type AlgDetectSession: :class:`tencentcloud.teo.v20220901.models.AlgDetectSession`
:param _AlgDetectJS: 客户端行为校验。
:type AlgDetectJS: list of AlgDetectJS
:param _UpdateTime: 更新时间。仅出参使用。
:type UpdateTime: str
"""
self._RuleID = None
self._RuleName = None
self._Switch = None
self._AlgConditions = None
self._AlgDetectSession = None
self._AlgDetectJS = None
self._UpdateTime = None
@property
def RuleID(self):
"""规则id。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def RuleName(self):
"""规则名。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Switch(self):
"""规则开关。
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def AlgConditions(self):
"""自定义规则。
:rtype: list of AclCondition
"""
return self._AlgConditions
@AlgConditions.setter
def AlgConditions(self, AlgConditions):
self._AlgConditions = AlgConditions
@property
def AlgDetectSession(self):
"""Cookie校验和会话行为分析。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AlgDetectSession`
"""
return self._AlgDetectSession
@AlgDetectSession.setter
def AlgDetectSession(self, AlgDetectSession):
self._AlgDetectSession = AlgDetectSession
@property
def AlgDetectJS(self):
"""客户端行为校验。
:rtype: list of AlgDetectJS
"""
return self._AlgDetectJS
@AlgDetectJS.setter
def AlgDetectJS(self, AlgDetectJS):
self._AlgDetectJS = AlgDetectJS
@property
def UpdateTime(self):
"""更新时间。仅出参使用。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._RuleID = params.get("RuleID")
self._RuleName = params.get("RuleName")
self._Switch = params.get("Switch")
if params.get("AlgConditions") is not None:
self._AlgConditions = []
for item in params.get("AlgConditions"):
obj = AclCondition()
obj._deserialize(item)
self._AlgConditions.append(obj)
if params.get("AlgDetectSession") is not None:
self._AlgDetectSession = AlgDetectSession()
self._AlgDetectSession._deserialize(params.get("AlgDetectSession"))
if params.get("AlgDetectJS") is not None:
self._AlgDetectJS = []
for item in params.get("AlgDetectJS"):
obj = AlgDetectJS()
obj._deserialize(item)
self._AlgDetectJS.append(obj)
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AlgDetectSession(AbstractModel):
"""Cookie校验与会话跟踪。
"""
def __init__(self):
r"""
:param _Name: 操作名称。
:type Name: str
:param _DetectMode: 校验方式,默认update_detect,取值有:
<li>detect:仅校验;</li>
<li>update_detect:更新Cookie并校验。</li>
:type DetectMode: str
:param _SessionAnalyzeSwitch: 会话速率和周期特征校验开关,默认off,取值有:
<li>off:关闭;</li>
<li>on:打开。</li>
:type SessionAnalyzeSwitch: str
:param _InvalidStatTime: 校验结果为未携带Cookie或Cookie已过期的统计周期。单位为秒,默认10,取值:5~3600。
:type InvalidStatTime: int
:param _InvalidThreshold: 校验结果为未携带Cookie或Cookie已过期的触发阈值。单位为次,默认300,取值:1~100000000。
:type InvalidThreshold: int
:param _AlgDetectResults: Cookie校验校验结果。
:type AlgDetectResults: list of AlgDetectResult
:param _SessionBehaviors: 会话速率和周期特征校验结果。
:type SessionBehaviors: list of AlgDetectResult
"""
self._Name = None
self._DetectMode = None
self._SessionAnalyzeSwitch = None
self._InvalidStatTime = None
self._InvalidThreshold = None
self._AlgDetectResults = None
self._SessionBehaviors = None
@property
def Name(self):
"""操作名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def DetectMode(self):
"""校验方式,默认update_detect,取值有:
<li>detect:仅校验;</li>
<li>update_detect:更新Cookie并校验。</li>
:rtype: str
"""
return self._DetectMode
@DetectMode.setter
def DetectMode(self, DetectMode):
self._DetectMode = DetectMode
@property
def SessionAnalyzeSwitch(self):
"""会话速率和周期特征校验开关,默认off,取值有:
<li>off:关闭;</li>
<li>on:打开。</li>
:rtype: str
"""
return self._SessionAnalyzeSwitch
@SessionAnalyzeSwitch.setter
def SessionAnalyzeSwitch(self, SessionAnalyzeSwitch):
self._SessionAnalyzeSwitch = SessionAnalyzeSwitch
@property
def InvalidStatTime(self):
"""校验结果为未携带Cookie或Cookie已过期的统计周期。单位为秒,默认10,取值:5~3600。
:rtype: int
"""
return self._InvalidStatTime
@InvalidStatTime.setter
def InvalidStatTime(self, InvalidStatTime):
self._InvalidStatTime = InvalidStatTime
@property
def InvalidThreshold(self):
"""校验结果为未携带Cookie或Cookie已过期的触发阈值。单位为次,默认300,取值:1~100000000。
:rtype: int
"""
return self._InvalidThreshold
@InvalidThreshold.setter
def InvalidThreshold(self, InvalidThreshold):
self._InvalidThreshold = InvalidThreshold
@property
def AlgDetectResults(self):
"""Cookie校验校验结果。
:rtype: list of AlgDetectResult
"""
return self._AlgDetectResults
@AlgDetectResults.setter
def AlgDetectResults(self, AlgDetectResults):
self._AlgDetectResults = AlgDetectResults
@property
def SessionBehaviors(self):
"""会话速率和周期特征校验结果。
:rtype: list of AlgDetectResult
"""
return self._SessionBehaviors
@SessionBehaviors.setter
def SessionBehaviors(self, SessionBehaviors):
self._SessionBehaviors = SessionBehaviors
def _deserialize(self, params):
self._Name = params.get("Name")
self._DetectMode = params.get("DetectMode")
self._SessionAnalyzeSwitch = params.get("SessionAnalyzeSwitch")
self._InvalidStatTime = params.get("InvalidStatTime")
self._InvalidThreshold = params.get("InvalidThreshold")
if params.get("AlgDetectResults") is not None:
self._AlgDetectResults = []
for item in params.get("AlgDetectResults"):
obj = AlgDetectResult()
obj._deserialize(item)
self._AlgDetectResults.append(obj)
if params.get("SessionBehaviors") is not None:
self._SessionBehaviors = []
for item in params.get("SessionBehaviors"):
obj = AlgDetectResult()
obj._deserialize(item)
self._SessionBehaviors.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AliasDomain(AbstractModel):
"""别称域名信息。
"""
def __init__(self):
r"""
:param _AliasName: 别称域名名称。
:type AliasName: str
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _TargetName: 目标域名名称。
:type TargetName: str
:param _Status: 别称域名状态,取值有:
<li> active:已生效; </li>
<li> pending:部署中;</li>
<li> conflict:被找回。 </li>
<li> stop:已停用;</li>
:type Status: str
:param _ForbidMode: 封禁模式,取值有:
<li> 0:未封禁; </li>
<li> 11:合规封禁;</li>
<li> 14:未备案封禁。</li>
:type ForbidMode: int
:param _CreatedOn: 别称域名创建时间。
:type CreatedOn: str
:param _ModifiedOn: 别称域名修改时间。
:type ModifiedOn: str
"""
self._AliasName = None
self._ZoneId = None
self._TargetName = None
self._Status = None
self._ForbidMode = None
self._CreatedOn = None
self._ModifiedOn = None
@property
def AliasName(self):
"""别称域名名称。
:rtype: str
"""
return self._AliasName
@AliasName.setter
def AliasName(self, AliasName):
self._AliasName = AliasName
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TargetName(self):
"""目标域名名称。
:rtype: str
"""
return self._TargetName
@TargetName.setter
def TargetName(self, TargetName):
self._TargetName = TargetName
@property
def Status(self):
"""别称域名状态,取值有:
<li> active:已生效; </li>
<li> pending:部署中;</li>
<li> conflict:被找回。 </li>
<li> stop:已停用;</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def ForbidMode(self):
"""封禁模式,取值有:
<li> 0:未封禁; </li>
<li> 11:合规封禁;</li>
<li> 14:未备案封禁。</li>
:rtype: int
"""
return self._ForbidMode
@ForbidMode.setter
def ForbidMode(self, ForbidMode):
self._ForbidMode = ForbidMode
@property
def CreatedOn(self):
"""别称域名创建时间。
:rtype: str
"""
return self._CreatedOn
@CreatedOn.setter
def CreatedOn(self, CreatedOn):
self._CreatedOn = CreatedOn
@property
def ModifiedOn(self):
"""别称域名修改时间。
:rtype: str
"""
return self._ModifiedOn
@ModifiedOn.setter
def ModifiedOn(self, ModifiedOn):
self._ModifiedOn = ModifiedOn
def _deserialize(self, params):
self._AliasName = params.get("AliasName")
self._ZoneId = params.get("ZoneId")
self._TargetName = params.get("TargetName")
self._Status = params.get("Status")
self._ForbidMode = params.get("ForbidMode")
self._CreatedOn = params.get("CreatedOn")
self._ModifiedOn = params.get("ModifiedOn")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ApplicationProxy(AbstractModel):
"""应用代理实例
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _ProxyId: 代理ID。
:type ProxyId: str
:param _ProxyName: 当ProxyType=hostname时,表示域名或子域名;
当ProxyType=instance时,表示代理名称。
:type ProxyName: str
:param _ProxyType: 四层代理模式,取值有:
<li>hostname:表示子域名模式;</li>
<li>instance:表示实例模式。</li>
:type ProxyType: str
:param _PlatType: 调度模式,取值有:
<li>ip:表示Anycast IP调度;</li>
<li>domain:表示CNAME调度。</li>
:type PlatType: str
:param _Area: 加速区域,取值有:
<li>mainland:中国大陆境内;</li>
<li>overseas:全球(不含中国大陆)。</li>
默认值:overseas
:type Area: str
:param _SecurityType: 是否开启安全,取值有:
<li>0:关闭安全;</li>
<li>1:开启安全。</li>
:type SecurityType: int
:param _AccelerateType: 是否开启加速,取值有:
<li>0:关闭加速;</li>
<li>1:开启加速。</li>
:type AccelerateType: int
:param _SessionPersistTime: 会话保持时间。
:type SessionPersistTime: int
:param _Status: 状态,取值有:
<li>online:启用;</li>
<li>offline:停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>fail:部署失败/停用失败。</li>
:type Status: str
:param _BanStatus: 封禁状态,取值有:
<li>banned:已封禁;</li>
<li>banning:封禁中;</li>
<li>recover:已解封;</li>
<li>recovering:解封禁中。</li>
:type BanStatus: str
:param _ScheduleValue: 调度信息。
:type ScheduleValue: list of str
:param _HostId: 当ProxyType=hostname时:
表示代理加速唯一标识。
:type HostId: str
:param _Ipv6: Ipv6访问配置。
:type Ipv6: :class:`tencentcloud.teo.v20220901.models.Ipv6`
:param _UpdateTime: 更新时间。
:type UpdateTime: str
:param _ApplicationProxyRules: 规则列表。
:type ApplicationProxyRules: list of ApplicationProxyRule
:param _AccelerateMainland: 中国大陆加速优化配置。
:type AccelerateMainland: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
self._ZoneId = None
self._ZoneName = None
self._ProxyId = None
self._ProxyName = None
self._ProxyType = None
self._PlatType = None
self._Area = None
self._SecurityType = None
self._AccelerateType = None
self._SessionPersistTime = None
self._Status = None
self._BanStatus = None
self._ScheduleValue = None
self._HostId = None
self._Ipv6 = None
self._UpdateTime = None
self._ApplicationProxyRules = None
self._AccelerateMainland = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def ProxyName(self):
"""当ProxyType=hostname时,表示域名或子域名;
当ProxyType=instance时,表示代理名称。
:rtype: str
"""
return self._ProxyName
@ProxyName.setter
def ProxyName(self, ProxyName):
self._ProxyName = ProxyName
@property
def ProxyType(self):
"""四层代理模式,取值有:
<li>hostname:表示子域名模式;</li>
<li>instance:表示实例模式。</li>
:rtype: str
"""
return self._ProxyType
@ProxyType.setter
def ProxyType(self, ProxyType):
self._ProxyType = ProxyType
@property
def PlatType(self):
"""调度模式,取值有:
<li>ip:表示Anycast IP调度;</li>
<li>domain:表示CNAME调度。</li>
:rtype: str
"""
return self._PlatType
@PlatType.setter
def PlatType(self, PlatType):
self._PlatType = PlatType
@property
def Area(self):
"""加速区域,取值有:
<li>mainland:中国大陆境内;</li>
<li>overseas:全球(不含中国大陆)。</li>
默认值:overseas
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def SecurityType(self):
"""是否开启安全,取值有:
<li>0:关闭安全;</li>
<li>1:开启安全。</li>
:rtype: int
"""
return self._SecurityType
@SecurityType.setter
def SecurityType(self, SecurityType):
self._SecurityType = SecurityType
@property
def AccelerateType(self):
"""是否开启加速,取值有:
<li>0:关闭加速;</li>
<li>1:开启加速。</li>
:rtype: int
"""
return self._AccelerateType
@AccelerateType.setter
def AccelerateType(self, AccelerateType):
self._AccelerateType = AccelerateType
@property
def SessionPersistTime(self):
"""会话保持时间。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def Status(self):
"""状态,取值有:
<li>online:启用;</li>
<li>offline:停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>fail:部署失败/停用失败。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def BanStatus(self):
"""封禁状态,取值有:
<li>banned:已封禁;</li>
<li>banning:封禁中;</li>
<li>recover:已解封;</li>
<li>recovering:解封禁中。</li>
:rtype: str
"""
return self._BanStatus
@BanStatus.setter
def BanStatus(self, BanStatus):
self._BanStatus = BanStatus
@property
def ScheduleValue(self):
"""调度信息。
:rtype: list of str
"""
return self._ScheduleValue
@ScheduleValue.setter
def ScheduleValue(self, ScheduleValue):
self._ScheduleValue = ScheduleValue
@property
def HostId(self):
"""当ProxyType=hostname时:
表示代理加速唯一标识。
:rtype: str
"""
return self._HostId
@HostId.setter
def HostId(self, HostId):
self._HostId = HostId
@property
def Ipv6(self):
"""Ipv6访问配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Ipv6`
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def UpdateTime(self):
"""更新时间。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def ApplicationProxyRules(self):
"""规则列表。
:rtype: list of ApplicationProxyRule
"""
return self._ApplicationProxyRules
@ApplicationProxyRules.setter
def ApplicationProxyRules(self, ApplicationProxyRules):
self._ApplicationProxyRules = ApplicationProxyRules
@property
def AccelerateMainland(self):
"""中国大陆加速优化配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ZoneName = params.get("ZoneName")
self._ProxyId = params.get("ProxyId")
self._ProxyName = params.get("ProxyName")
self._ProxyType = params.get("ProxyType")
self._PlatType = params.get("PlatType")
self._Area = params.get("Area")
self._SecurityType = params.get("SecurityType")
self._AccelerateType = params.get("AccelerateType")
self._SessionPersistTime = params.get("SessionPersistTime")
self._Status = params.get("Status")
self._BanStatus = params.get("BanStatus")
self._ScheduleValue = params.get("ScheduleValue")
self._HostId = params.get("HostId")
if params.get("Ipv6") is not None:
self._Ipv6 = Ipv6()
self._Ipv6._deserialize(params.get("Ipv6"))
self._UpdateTime = params.get("UpdateTime")
if params.get("ApplicationProxyRules") is not None:
self._ApplicationProxyRules = []
for item in params.get("ApplicationProxyRules"):
obj = ApplicationProxyRule()
obj._deserialize(item)
self._ApplicationProxyRules.append(obj)
if params.get("AccelerateMainland") is not None:
self._AccelerateMainland = AccelerateMainland()
self._AccelerateMainland._deserialize(params.get("AccelerateMainland"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ApplicationProxyRule(AbstractModel):
"""应用代理规则
"""
def __init__(self):
r"""
:param _Proto: 协议,取值有:
<li>TCP:TCP协议;</li>
<li>UDP:UDP协议。</li>
:type Proto: str
:param _Port: 端口,支持格式:
<li>单个端口,如:80。</li>
<li>端口段,如:81-82。表示81,82两个端口。</li>
注意:一条规则最多可填写20个端口。
:type Port: list of str
:param _OriginType: 源站类型,取值有:
<li>custom:手动添加;</li>
<li>loadbalancer:负载均衡;</li>
<li>origins:源站组。</li>
:type OriginType: str
:param _OriginValue: 源站信息:
<li>当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;</li>
<li>当 OriginType 为 loadbalancer 时,表示一个负载均衡,如`["lb-xdffsfasdfs"]`;</li>
<li>当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。</li>
:type OriginValue: list of str
:param _RuleId: 规则ID。
:type RuleId: str
:param _Status: 状态,取值有:
<li>online:启用;</li>
<li>offline:停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>fail:部署失败/停用失败。</li>
:type Status: str
:param _ForwardClientIp: 传递客户端IP,取值有:
<li>TOA:TOA(仅Proto=TCP时可选);</li>
<li>PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);</li>
<li>PPV2:Proxy Protocol传递,协议版本V2;</li>
<li>OFF:不传递。</li>默认值:OFF。
:type ForwardClientIp: str
:param _SessionPersist: 是否开启会话保持,取值有:
<li>true:开启;</li>
<li>false:关闭。</li>默认值:false。
:type SessionPersist: bool
:param _SessionPersistTime: 会话保持的时间,只有当SessionPersist为true时,该值才会生效。
注意:此字段可能返回 null,表示取不到有效值。
:type SessionPersistTime: int
:param _OriginPort: 源站端口,支持格式:
<li>单端口,如:80。</li>
<li>端口段:81-82,表示81,82两个端口。</li>
:type OriginPort: str
:param _RuleTag: 规则标签。
注意:此字段可能返回 null,表示取不到有效值。
:type RuleTag: str
"""
self._Proto = None
self._Port = None
self._OriginType = None
self._OriginValue = None
self._RuleId = None
self._Status = None
self._ForwardClientIp = None
self._SessionPersist = None
self._SessionPersistTime = None
self._OriginPort = None
self._RuleTag = None
@property
def Proto(self):
"""协议,取值有:
<li>TCP:TCP协议;</li>
<li>UDP:UDP协议。</li>
:rtype: str
"""
return self._Proto
@Proto.setter
def Proto(self, Proto):
self._Proto = Proto
@property
def Port(self):
"""端口,支持格式:
<li>单个端口,如:80。</li>
<li>端口段,如:81-82。表示81,82两个端口。</li>
注意:一条规则最多可填写20个端口。
:rtype: list of str
"""
return self._Port
@Port.setter
def Port(self, Port):
self._Port = Port
@property
def OriginType(self):
"""源站类型,取值有:
<li>custom:手动添加;</li>
<li>loadbalancer:负载均衡;</li>
<li>origins:源站组。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def OriginValue(self):
"""源站信息:
<li>当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;</li>
<li>当 OriginType 为 loadbalancer 时,表示一个负载均衡,如`["lb-xdffsfasdfs"]`;</li>
<li>当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。</li>
:rtype: list of str
"""
return self._OriginValue
@OriginValue.setter
def OriginValue(self, OriginValue):
self._OriginValue = OriginValue
@property
def RuleId(self):
"""规则ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def Status(self):
"""状态,取值有:
<li>online:启用;</li>
<li>offline:停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>fail:部署失败/停用失败。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def ForwardClientIp(self):
"""传递客户端IP,取值有:
<li>TOA:TOA(仅Proto=TCP时可选);</li>
<li>PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);</li>
<li>PPV2:Proxy Protocol传递,协议版本V2;</li>
<li>OFF:不传递。</li>默认值:OFF。
:rtype: str
"""
return self._ForwardClientIp
@ForwardClientIp.setter
def ForwardClientIp(self, ForwardClientIp):
self._ForwardClientIp = ForwardClientIp
@property
def SessionPersist(self):
"""是否开启会话保持,取值有:
<li>true:开启;</li>
<li>false:关闭。</li>默认值:false。
:rtype: bool
"""
return self._SessionPersist
@SessionPersist.setter
def SessionPersist(self, SessionPersist):
self._SessionPersist = SessionPersist
@property
def SessionPersistTime(self):
"""会话保持的时间,只有当SessionPersist为true时,该值才会生效。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def OriginPort(self):
"""源站端口,支持格式:
<li>单端口,如:80。</li>
<li>端口段:81-82,表示81,82两个端口。</li>
:rtype: str
"""
return self._OriginPort
@OriginPort.setter
def OriginPort(self, OriginPort):
self._OriginPort = OriginPort
@property
def RuleTag(self):
"""规则标签。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._RuleTag
@RuleTag.setter
def RuleTag(self, RuleTag):
self._RuleTag = RuleTag
def _deserialize(self, params):
self._Proto = params.get("Proto")
self._Port = params.get("Port")
self._OriginType = params.get("OriginType")
self._OriginValue = params.get("OriginValue")
self._RuleId = params.get("RuleId")
self._Status = params.get("Status")
self._ForwardClientIp = params.get("ForwardClientIp")
self._SessionPersist = params.get("SessionPersist")
self._SessionPersistTime = params.get("SessionPersistTime")
self._OriginPort = params.get("OriginPort")
self._RuleTag = params.get("RuleTag")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AscriptionInfo(AbstractModel):
"""站点归属信息
"""
def __init__(self):
r"""
:param _Subdomain: 主机记录。
:type Subdomain: str
:param _RecordType: 记录类型。
:type RecordType: str
:param _RecordValue: 记录值。
:type RecordValue: str
"""
self._Subdomain = None
self._RecordType = None
self._RecordValue = None
@property
def Subdomain(self):
"""主机记录。
:rtype: str
"""
return self._Subdomain
@Subdomain.setter
def Subdomain(self, Subdomain):
self._Subdomain = Subdomain
@property
def RecordType(self):
"""记录类型。
:rtype: str
"""
return self._RecordType
@RecordType.setter
def RecordType(self, RecordType):
self._RecordType = RecordType
@property
def RecordValue(self):
"""记录值。
:rtype: str
"""
return self._RecordValue
@RecordValue.setter
def RecordValue(self, RecordValue):
self._RecordValue = RecordValue
def _deserialize(self, params):
self._Subdomain = params.get("Subdomain")
self._RecordType = params.get("RecordType")
self._RecordValue = params.get("RecordValue")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class AuthenticationParameters(AbstractModel):
"""Token 鉴权 配置参数。
"""
def __init__(self):
r"""
:param _AuthType: 鉴权类型。取值有:
<li>TypeA:鉴权方式 A 类型,具体含义请参考 [鉴权方式 A](https://cloud.tencent.com/document/product/1552/109329);</li>
<li>TypeB:鉴权方式 B 类型,具体含义请参考 [鉴权方式 B](https://cloud.tencent.com/document/product/1552/109330);</li>
<li>TypeC:鉴权方式 C 类型,具体含义请参考 [鉴权方式 C](https://cloud.tencent.com/document/product/1552/109331);</li>
<li>TypeD:鉴权方式 D 类型,具体含义请参考 [鉴权方式 D](https://cloud.tencent.com/document/product/1552/109332);</li>
<li>TypeVOD:鉴权方式 V 类型,具体含义请参考 [鉴权方式 V](https://cloud.tencent.com/document/product/1552/109333)。</li>
:type AuthType: str
:param _SecretKey: 主鉴权密钥,由 6~40 位大小写英文字母或数字组成,不能包含 " 和 $。
:type SecretKey: str
:param _Timeout: 鉴权 URL 的有效时长,单位为秒,取值:1~630720000。用于判断客户端访问请求是否过期:
<li>若当前时间超过 “timestamp + 有效时长” 时间,则为过期请求,直接返回 403。</li>
<li>若当前时间未超过 “timestamp + 有效时长” 时间,则请求未过期,继续校验 md5 字符串。</li>注意:当 AuthType 为 TypeA、TypeB、TypeC、TypeD 之一时,此字段必填。
:type Timeout: int
:param _BackupSecretKey: 备鉴权密钥,由 6~40 位大小写英文字母或数字组成,不能包含 " 和 $。
:type BackupSecretKey: str
:param _AuthParam: 鉴权参数名称,节点将校验此参数名对应的值。由 1~100 位大小写字母、数字或下划线组成。<br>注意:当 AuthType 为 TypeA、TypeD 之一时,此字段必填。
:type AuthParam: str
:param _TimeParam: 鉴权时间戳,和 AuthParam 字段的值不能相同。<br>注意:当 AuthType 为 TypeD 时,此字段必填。
:type TimeParam: str
:param _TimeFormat: 鉴权时间格式,取值有:
<li>dec:十进制;</li>
<li>hex:十六进制。</li>注意:当 AuthType 为 TypeD 时,此字段必填。默认为 hex。
:type TimeFormat: str
"""
self._AuthType = None
self._SecretKey = None
self._Timeout = None
self._BackupSecretKey = None
self._AuthParam = None
self._TimeParam = None
self._TimeFormat = None
@property
def AuthType(self):
"""鉴权类型。取值有:
<li>TypeA:鉴权方式 A 类型,具体含义请参考 [鉴权方式 A](https://cloud.tencent.com/document/product/1552/109329);</li>
<li>TypeB:鉴权方式 B 类型,具体含义请参考 [鉴权方式 B](https://cloud.tencent.com/document/product/1552/109330);</li>
<li>TypeC:鉴权方式 C 类型,具体含义请参考 [鉴权方式 C](https://cloud.tencent.com/document/product/1552/109331);</li>
<li>TypeD:鉴权方式 D 类型,具体含义请参考 [鉴权方式 D](https://cloud.tencent.com/document/product/1552/109332);</li>
<li>TypeVOD:鉴权方式 V 类型,具体含义请参考 [鉴权方式 V](https://cloud.tencent.com/document/product/1552/109333)。</li>
:rtype: str
"""
return self._AuthType
@AuthType.setter
def AuthType(self, AuthType):
self._AuthType = AuthType
@property
def SecretKey(self):
"""主鉴权密钥,由 6~40 位大小写英文字母或数字组成,不能包含 " 和 $。
:rtype: str
"""
return self._SecretKey
@SecretKey.setter
def SecretKey(self, SecretKey):
self._SecretKey = SecretKey
@property
def Timeout(self):
"""鉴权 URL 的有效时长,单位为秒,取值:1~630720000。用于判断客户端访问请求是否过期:
<li>若当前时间超过 “timestamp + 有效时长” 时间,则为过期请求,直接返回 403。</li>
<li>若当前时间未超过 “timestamp + 有效时长” 时间,则请求未过期,继续校验 md5 字符串。</li>注意:当 AuthType 为 TypeA、TypeB、TypeC、TypeD 之一时,此字段必填。
:rtype: int
"""
return self._Timeout
@Timeout.setter
def Timeout(self, Timeout):
self._Timeout = Timeout
@property
def BackupSecretKey(self):
"""备鉴权密钥,由 6~40 位大小写英文字母或数字组成,不能包含 " 和 $。
:rtype: str
"""
return self._BackupSecretKey
@BackupSecretKey.setter
def BackupSecretKey(self, BackupSecretKey):
self._BackupSecretKey = BackupSecretKey
@property
def AuthParam(self):
"""鉴权参数名称,节点将校验此参数名对应的值。由 1~100 位大小写字母、数字或下划线组成。<br>注意:当 AuthType 为 TypeA、TypeD 之一时,此字段必填。
:rtype: str
"""
return self._AuthParam
@AuthParam.setter
def AuthParam(self, AuthParam):
self._AuthParam = AuthParam
@property
def TimeParam(self):
"""鉴权时间戳,和 AuthParam 字段的值不能相同。<br>注意:当 AuthType 为 TypeD 时,此字段必填。
:rtype: str
"""
return self._TimeParam
@TimeParam.setter
def TimeParam(self, TimeParam):
self._TimeParam = TimeParam
@property
def TimeFormat(self):
"""鉴权时间格式,取值有:
<li>dec:十进制;</li>
<li>hex:十六进制。</li>注意:当 AuthType 为 TypeD 时,此字段必填。默认为 hex。
:rtype: str
"""
return self._TimeFormat
@TimeFormat.setter
def TimeFormat(self, TimeFormat):
self._TimeFormat = TimeFormat
def _deserialize(self, params):
self._AuthType = params.get("AuthType")
self._SecretKey = params.get("SecretKey")
self._Timeout = params.get("Timeout")
self._BackupSecretKey = params.get("BackupSecretKey")
self._AuthParam = params.get("AuthParam")
self._TimeParam = params.get("TimeParam")
self._TimeFormat = params.get("TimeFormat")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BillingData(AbstractModel):
"""计费数据项
"""
def __init__(self):
r"""
:param _Time: 时间。
:type Time: str
:param _Value: 数值。
:type Value: int
"""
self._Time = None
self._Value = None
@property
def Time(self):
"""时间。
:rtype: str
"""
return self._Time
@Time.setter
def Time(self, Time):
self._Time = Time
@property
def Value(self):
"""数值。
:rtype: int
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Time = params.get("Time")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BillingDataFilter(AbstractModel):
"""计费数据过滤条件。
"""
def __init__(self):
r"""
:param _Type: 参数名称。
:type Type: str
:param _Value: 参数值。
:type Value: str
"""
self._Type = None
self._Value = None
@property
def Type(self):
"""参数名称。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Value(self):
"""参数值。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Type = params.get("Type")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BindSecurityTemplateToEntityRequest(AbstractModel):
"""BindSecurityTemplateToEntity请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 需要绑定或解绑的策略模板所属站点 ID。
:type ZoneId: str
:param _Entities: 绑定至策略模板(或者从策略模板解绑)的域名列表。
:type Entities: list of str
:param _Operate: 绑定或解绑操作选项,取值有:
<li>bind:绑定域名至策略模板。</li>
<li>unbind-keep-policy:将域名从策略模板解绑,解绑时保留当前策略。</li>
<li>unbind-use-default:将域名从策略模板解绑,并使用默认空白策略。</li>注意:解绑操作当前仅支持单个域名解绑。即:当 Operate 参数取值为 unbind-keep-policy 或 unbind-use-default 时,Entities 参数列表仅支持填写一个域名。
:type Operate: str
:param _TemplateId: 指定绑定或解绑的策略模板 ID 或站点全局策略
<li>如需绑定至策略模板,或从策略模板解绑,请指定策略模板 ID。</li>
<li>如需绑定至站点全局策略,或从站点全局策略解绑,请使用 @ZoneLevel@domain 参数值。</li>
注意:解绑后,域名将使用独立策略,并单独计算规则配额,请确保解绑前套餐规则配额充足。
:type TemplateId: str
:param _OverWrite: 传入域名如果已经绑定了策略模板(含站点级防护策略),通过设置该参数表示是否替换该模板,默认值为 true。支持下列取值:<li>true: 替换域名当前绑定的模板。</li><li>false:不替换域名当前绑定的模板。</li>注意:当设置为 false 时,若传入域名已经绑定策略模板,API 将返回错误;站点级防护策略也为一种策略模板。
:type OverWrite: bool
"""
self._ZoneId = None
self._Entities = None
self._Operate = None
self._TemplateId = None
self._OverWrite = None
@property
def ZoneId(self):
"""需要绑定或解绑的策略模板所属站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Entities(self):
"""绑定至策略模板(或者从策略模板解绑)的域名列表。
:rtype: list of str
"""
return self._Entities
@Entities.setter
def Entities(self, Entities):
self._Entities = Entities
@property
def Operate(self):
"""绑定或解绑操作选项,取值有:
<li>bind:绑定域名至策略模板。</li>
<li>unbind-keep-policy:将域名从策略模板解绑,解绑时保留当前策略。</li>
<li>unbind-use-default:将域名从策略模板解绑,并使用默认空白策略。</li>注意:解绑操作当前仅支持单个域名解绑。即:当 Operate 参数取值为 unbind-keep-policy 或 unbind-use-default 时,Entities 参数列表仅支持填写一个域名。
:rtype: str
"""
return self._Operate
@Operate.setter
def Operate(self, Operate):
self._Operate = Operate
@property
def TemplateId(self):
"""指定绑定或解绑的策略模板 ID 或站点全局策略
<li>如需绑定至策略模板,或从策略模板解绑,请指定策略模板 ID。</li>
<li>如需绑定至站点全局策略,或从站点全局策略解绑,请使用 @ZoneLevel@domain 参数值。</li>
注意:解绑后,域名将使用独立策略,并单独计算规则配额,请确保解绑前套餐规则配额充足。
:rtype: str
"""
return self._TemplateId
@TemplateId.setter
def TemplateId(self, TemplateId):
self._TemplateId = TemplateId
@property
def OverWrite(self):
"""传入域名如果已经绑定了策略模板(含站点级防护策略),通过设置该参数表示是否替换该模板,默认值为 true。支持下列取值:<li>true: 替换域名当前绑定的模板。</li><li>false:不替换域名当前绑定的模板。</li>注意:当设置为 false 时,若传入域名已经绑定策略模板,API 将返回错误;站点级防护策略也为一种策略模板。
:rtype: bool
"""
return self._OverWrite
@OverWrite.setter
def OverWrite(self, OverWrite):
self._OverWrite = OverWrite
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Entities = params.get("Entities")
self._Operate = params.get("Operate")
self._TemplateId = params.get("TemplateId")
self._OverWrite = params.get("OverWrite")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BindSecurityTemplateToEntityResponse(AbstractModel):
"""BindSecurityTemplateToEntity返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class BindSharedCNAMEMap(AbstractModel):
"""共享 CNAME 和接入域名的绑定关系
"""
def __init__(self):
r"""
:param _SharedCNAME: 需要绑定或解绑的共享 CNAME。
:type SharedCNAME: str
:param _DomainNames: 加速域名,可传递多个,最多20个。
:type DomainNames: list of str
"""
self._SharedCNAME = None
self._DomainNames = None
@property
def SharedCNAME(self):
"""需要绑定或解绑的共享 CNAME。
:rtype: str
"""
return self._SharedCNAME
@SharedCNAME.setter
def SharedCNAME(self, SharedCNAME):
self._SharedCNAME = SharedCNAME
@property
def DomainNames(self):
"""加速域名,可传递多个,最多20个。
:rtype: list of str
"""
return self._DomainNames
@DomainNames.setter
def DomainNames(self, DomainNames):
self._DomainNames = DomainNames
def _deserialize(self, params):
self._SharedCNAME = params.get("SharedCNAME")
self._DomainNames = params.get("DomainNames")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BindSharedCNAMERequest(AbstractModel):
"""BindSharedCNAME请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 加速域名所属站点 ID。
:type ZoneId: str
:param _BindType: 绑定类型,取值有:
<li>bind:绑定;</li>
<li>unbind:解绑。</li>
:type BindType: str
:param _BindSharedCNAMEMaps: 接入域名与共享 CNAME 的绑定关系。
:type BindSharedCNAMEMaps: list of BindSharedCNAMEMap
"""
self._ZoneId = None
self._BindType = None
self._BindSharedCNAMEMaps = None
@property
def ZoneId(self):
"""加速域名所属站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def BindType(self):
"""绑定类型,取值有:
<li>bind:绑定;</li>
<li>unbind:解绑。</li>
:rtype: str
"""
return self._BindType
@BindType.setter
def BindType(self, BindType):
self._BindType = BindType
@property
def BindSharedCNAMEMaps(self):
"""接入域名与共享 CNAME 的绑定关系。
:rtype: list of BindSharedCNAMEMap
"""
return self._BindSharedCNAMEMaps
@BindSharedCNAMEMaps.setter
def BindSharedCNAMEMaps(self, BindSharedCNAMEMaps):
self._BindSharedCNAMEMaps = BindSharedCNAMEMaps
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._BindType = params.get("BindType")
if params.get("BindSharedCNAMEMaps") is not None:
self._BindSharedCNAMEMaps = []
for item in params.get("BindSharedCNAMEMaps"):
obj = BindSharedCNAMEMap()
obj._deserialize(item)
self._BindSharedCNAMEMaps.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BindSharedCNAMEResponse(AbstractModel):
"""BindSharedCNAME返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class BindZoneToPlanRequest(AbstractModel):
"""BindZoneToPlan请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 未绑定套餐的站点ID。
:type ZoneId: str
:param _PlanId: 待绑定的目标套餐ID。
:type PlanId: str
"""
self._ZoneId = None
self._PlanId = None
@property
def ZoneId(self):
"""未绑定套餐的站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def PlanId(self):
"""待绑定的目标套餐ID。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._PlanId = params.get("PlanId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BindZoneToPlanResponse(AbstractModel):
"""BindZoneToPlan返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class BotConfig(AbstractModel):
"""安全Bot配置
"""
def __init__(self):
r"""
:param _Switch: bot开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _BotManagedRule: 通用详细基础规则。如果为null,默认使用历史配置。
:type BotManagedRule: :class:`tencentcloud.teo.v20220901.models.BotManagedRule`
:param _BotPortraitRule: 用户画像规则。如果为null,默认使用历史配置。
:type BotPortraitRule: :class:`tencentcloud.teo.v20220901.models.BotPortraitRule`
:param _IntelligenceRule: Bot智能分析。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type IntelligenceRule: :class:`tencentcloud.teo.v20220901.models.IntelligenceRule`
:param _BotUserRules: Bot自定义规则。如果为null,默认使用历史配置。
:type BotUserRules: list of BotUserRule
:param _AlgDetectRule: Bot主动特征识别规则。
:type AlgDetectRule: list of AlgDetectRule
:param _Customizes: Bot托管定制策略,入参可不填,仅出参使用。
注意:此字段可能返回 null,表示取不到有效值。
:type Customizes: list of BotUserRule
"""
self._Switch = None
self._BotManagedRule = None
self._BotPortraitRule = None
self._IntelligenceRule = None
self._BotUserRules = None
self._AlgDetectRule = None
self._Customizes = None
@property
def Switch(self):
"""bot开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def BotManagedRule(self):
"""通用详细基础规则。如果为null,默认使用历史配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.BotManagedRule`
"""
return self._BotManagedRule
@BotManagedRule.setter
def BotManagedRule(self, BotManagedRule):
self._BotManagedRule = BotManagedRule
@property
def BotPortraitRule(self):
"""用户画像规则。如果为null,默认使用历史配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.BotPortraitRule`
"""
return self._BotPortraitRule
@BotPortraitRule.setter
def BotPortraitRule(self, BotPortraitRule):
self._BotPortraitRule = BotPortraitRule
@property
def IntelligenceRule(self):
"""Bot智能分析。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.IntelligenceRule`
"""
return self._IntelligenceRule
@IntelligenceRule.setter
def IntelligenceRule(self, IntelligenceRule):
self._IntelligenceRule = IntelligenceRule
@property
def BotUserRules(self):
"""Bot自定义规则。如果为null,默认使用历史配置。
:rtype: list of BotUserRule
"""
return self._BotUserRules
@BotUserRules.setter
def BotUserRules(self, BotUserRules):
self._BotUserRules = BotUserRules
@property
def AlgDetectRule(self):
"""Bot主动特征识别规则。
:rtype: list of AlgDetectRule
"""
return self._AlgDetectRule
@AlgDetectRule.setter
def AlgDetectRule(self, AlgDetectRule):
self._AlgDetectRule = AlgDetectRule
@property
def Customizes(self):
"""Bot托管定制策略,入参可不填,仅出参使用。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of BotUserRule
"""
return self._Customizes
@Customizes.setter
def Customizes(self, Customizes):
self._Customizes = Customizes
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("BotManagedRule") is not None:
self._BotManagedRule = BotManagedRule()
self._BotManagedRule._deserialize(params.get("BotManagedRule"))
if params.get("BotPortraitRule") is not None:
self._BotPortraitRule = BotPortraitRule()
self._BotPortraitRule._deserialize(params.get("BotPortraitRule"))
if params.get("IntelligenceRule") is not None:
self._IntelligenceRule = IntelligenceRule()
self._IntelligenceRule._deserialize(params.get("IntelligenceRule"))
if params.get("BotUserRules") is not None:
self._BotUserRules = []
for item in params.get("BotUserRules"):
obj = BotUserRule()
obj._deserialize(item)
self._BotUserRules.append(obj)
if params.get("AlgDetectRule") is not None:
self._AlgDetectRule = []
for item in params.get("AlgDetectRule"):
obj = AlgDetectRule()
obj._deserialize(item)
self._AlgDetectRule.append(obj)
if params.get("Customizes") is not None:
self._Customizes = []
for item in params.get("Customizes"):
obj = BotUserRule()
obj._deserialize(item)
self._Customizes.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BotExtendAction(AbstractModel):
"""Bot扩展处置方式,多处置动作组合。
"""
def __init__(self):
r"""
:param _Action: 处置动作,取值有:
<li>monitor:观察;</li>
<li>alg:JavaScript挑战;</li>
<li>captcha:托管挑战;</li>
<li>random:随机,按照ExtendActions分配处置动作和比例;</li>
<li>silence:静默;</li>
<li>shortdelay:短时响应;</li>
<li>longdelay:长时响应。</li>
:type Action: str
:param _Percent: 处置方式的触发概率,范围0-100。
注意:此字段可能返回 null,表示取不到有效值。
:type Percent: int
"""
self._Action = None
self._Percent = None
@property
def Action(self):
"""处置动作,取值有:
<li>monitor:观察;</li>
<li>alg:JavaScript挑战;</li>
<li>captcha:托管挑战;</li>
<li>random:随机,按照ExtendActions分配处置动作和比例;</li>
<li>silence:静默;</li>
<li>shortdelay:短时响应;</li>
<li>longdelay:长时响应。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Percent(self):
"""处置方式的触发概率,范围0-100。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._Percent
@Percent.setter
def Percent(self, Percent):
self._Percent = Percent
def _deserialize(self, params):
self._Action = params.get("Action")
self._Percent = params.get("Percent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BotManagedRule(AbstractModel):
"""Bot 规则,下列规则ID可参考接口 DescribeBotManagedRules返回的ID信息
"""
def __init__(self):
r"""
:param _Action: 触发规则后的处置方式,取值有:
<li>drop:拦截;</li>
<li>trans:放行;</li>
<li>alg:Javascript挑战;</li>
<li>monitor:观察。</li>
:type Action: str
:param _RuleID: 本规则的ID。仅出参使用。
:type RuleID: int
:param _TransManagedIds: 放行的规则ID。默认所有规则不配置放行。
注意:此字段可能返回 null,表示取不到有效值。
:type TransManagedIds: list of int
:param _AlgManagedIds: JS挑战的规则ID。默认所有规则不配置JS挑战。
注意:此字段可能返回 null,表示取不到有效值。
:type AlgManagedIds: list of int
:param _CapManagedIds: 数字验证码的规则ID。默认所有规则不配置数字验证码。
注意:此字段可能返回 null,表示取不到有效值。
:type CapManagedIds: list of int
:param _MonManagedIds: 观察的规则ID。默认所有规则不配置观察。
注意:此字段可能返回 null,表示取不到有效值。
:type MonManagedIds: list of int
:param _DropManagedIds: 拦截的规则ID。默认所有规则不配置拦截。
注意:此字段可能返回 null,表示取不到有效值。
:type DropManagedIds: list of int
"""
self._Action = None
self._RuleID = None
self._TransManagedIds = None
self._AlgManagedIds = None
self._CapManagedIds = None
self._MonManagedIds = None
self._DropManagedIds = None
@property
def Action(self):
"""触发规则后的处置方式,取值有:
<li>drop:拦截;</li>
<li>trans:放行;</li>
<li>alg:Javascript挑战;</li>
<li>monitor:观察。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RuleID(self):
"""本规则的ID。仅出参使用。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def TransManagedIds(self):
"""放行的规则ID。默认所有规则不配置放行。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._TransManagedIds
@TransManagedIds.setter
def TransManagedIds(self, TransManagedIds):
self._TransManagedIds = TransManagedIds
@property
def AlgManagedIds(self):
"""JS挑战的规则ID。默认所有规则不配置JS挑战。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._AlgManagedIds
@AlgManagedIds.setter
def AlgManagedIds(self, AlgManagedIds):
self._AlgManagedIds = AlgManagedIds
@property
def CapManagedIds(self):
"""数字验证码的规则ID。默认所有规则不配置数字验证码。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._CapManagedIds
@CapManagedIds.setter
def CapManagedIds(self, CapManagedIds):
self._CapManagedIds = CapManagedIds
@property
def MonManagedIds(self):
"""观察的规则ID。默认所有规则不配置观察。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._MonManagedIds
@MonManagedIds.setter
def MonManagedIds(self, MonManagedIds):
self._MonManagedIds = MonManagedIds
@property
def DropManagedIds(self):
"""拦截的规则ID。默认所有规则不配置拦截。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._DropManagedIds
@DropManagedIds.setter
def DropManagedIds(self, DropManagedIds):
self._DropManagedIds = DropManagedIds
def _deserialize(self, params):
self._Action = params.get("Action")
self._RuleID = params.get("RuleID")
self._TransManagedIds = params.get("TransManagedIds")
self._AlgManagedIds = params.get("AlgManagedIds")
self._CapManagedIds = params.get("CapManagedIds")
self._MonManagedIds = params.get("MonManagedIds")
self._DropManagedIds = params.get("DropManagedIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BotPortraitRule(AbstractModel):
"""bot 用户画像规则
"""
def __init__(self):
r"""
:param _Switch: 本功能的开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _RuleID: 本规则的ID。仅出参使用。
:type RuleID: int
:param _AlgManagedIds: JS挑战的规则ID。默认所有规则不配置JS挑战。
注意:此字段可能返回 null,表示取不到有效值。
:type AlgManagedIds: list of int
:param _CapManagedIds: 数字验证码的规则ID。默认所有规则不配置数字验证码。
注意:此字段可能返回 null,表示取不到有效值。
:type CapManagedIds: list of int
:param _MonManagedIds: 观察的规则ID。默认所有规则不配置观察。
注意:此字段可能返回 null,表示取不到有效值。
:type MonManagedIds: list of int
:param _DropManagedIds: 拦截的规则ID。默认所有规则不配置拦截。
注意:此字段可能返回 null,表示取不到有效值。
:type DropManagedIds: list of int
"""
self._Switch = None
self._RuleID = None
self._AlgManagedIds = None
self._CapManagedIds = None
self._MonManagedIds = None
self._DropManagedIds = None
@property
def Switch(self):
"""本功能的开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def RuleID(self):
"""本规则的ID。仅出参使用。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def AlgManagedIds(self):
"""JS挑战的规则ID。默认所有规则不配置JS挑战。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._AlgManagedIds
@AlgManagedIds.setter
def AlgManagedIds(self, AlgManagedIds):
self._AlgManagedIds = AlgManagedIds
@property
def CapManagedIds(self):
"""数字验证码的规则ID。默认所有规则不配置数字验证码。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._CapManagedIds
@CapManagedIds.setter
def CapManagedIds(self, CapManagedIds):
self._CapManagedIds = CapManagedIds
@property
def MonManagedIds(self):
"""观察的规则ID。默认所有规则不配置观察。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._MonManagedIds
@MonManagedIds.setter
def MonManagedIds(self, MonManagedIds):
self._MonManagedIds = MonManagedIds
@property
def DropManagedIds(self):
"""拦截的规则ID。默认所有规则不配置拦截。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._DropManagedIds
@DropManagedIds.setter
def DropManagedIds(self, DropManagedIds):
self._DropManagedIds = DropManagedIds
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._RuleID = params.get("RuleID")
self._AlgManagedIds = params.get("AlgManagedIds")
self._CapManagedIds = params.get("CapManagedIds")
self._MonManagedIds = params.get("MonManagedIds")
self._DropManagedIds = params.get("DropManagedIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class BotUserRule(AbstractModel):
"""Bot自定义规则
"""
def __init__(self):
r"""
:param _RuleName: 规则名,只能以英文字符,数字,下划线组合,且不能以下划线开头。
:type RuleName: str
:param _Action: 处置动作,取值有:
<li>drop:拦截;</li>
<li>monitor:观察;</li>
<li>trans:放行;</li>
<li>redirect:重定向;</li>
<li>page:指定页面;</li>
<li>alg:JavaScript 挑战;</li>
<li>captcha:托管挑战;</li>
<li>random:随机处置;</li>
<li>silence:静默;</li>
<li>shortdelay:短时响应;</li>
<li>longdelay:长时响应。</li>
:type Action: str
:param _RuleStatus: 规则状态,取值有:
<li>on:生效;</li>
<li>off:不生效。</li>默认 on 生效。
:type RuleStatus: str
:param _AclConditions: 规则详情。
:type AclConditions: list of AclCondition
:param _RulePriority: 规则权重,取值范围0-100。
:type RulePriority: int
:param _RuleID: 规则 Id。仅出参使用。
:type RuleID: int
:param _ExtendActions: 随机处置的处置方式及占比,非随机处置可不填暂不支持。
:type ExtendActions: list of BotExtendAction
:param _FreqFields: 过滤词,取值有:
<li>sip:客户端 ip。</li>
默认为空字符串。
:type FreqFields: list of str
:param _UpdateTime: 更新时间。仅出参使用。
:type UpdateTime: str
:param _FreqScope: 统计范围。取值有:
<li>source_to_eo:(响应)源站到 EdgeOne;</li>
<li>client_to_eo:(请求)客户端到 EdgeOne。</li>
默认为 source_to_eo。
:type FreqScope: list of str
:param _Name: 自定义返回页面的名称。Action 是 page 时必填,且不能为空。
:type Name: str
:param _CustomResponseId: 自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Action 是 page 时必填,且不能为空。
:type CustomResponseId: str
:param _ResponseCode: 自定义返回页面的响应码。Action 是 page 时必填,且不能为空,取值: 100~600,不支持 3xx 响应码。默认值:567。
:type ResponseCode: int
:param _RedirectUrl: 重定向时候的地址。Action 是 redirect 时必填,且不能为空。
:type RedirectUrl: str
"""
self._RuleName = None
self._Action = None
self._RuleStatus = None
self._AclConditions = None
self._RulePriority = None
self._RuleID = None
self._ExtendActions = None
self._FreqFields = None
self._UpdateTime = None
self._FreqScope = None
self._Name = None
self._CustomResponseId = None
self._ResponseCode = None
self._RedirectUrl = None
@property
def RuleName(self):
"""规则名,只能以英文字符,数字,下划线组合,且不能以下划线开头。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Action(self):
"""处置动作,取值有:
<li>drop:拦截;</li>
<li>monitor:观察;</li>
<li>trans:放行;</li>
<li>redirect:重定向;</li>
<li>page:指定页面;</li>
<li>alg:JavaScript 挑战;</li>
<li>captcha:托管挑战;</li>
<li>random:随机处置;</li>
<li>silence:静默;</li>
<li>shortdelay:短时响应;</li>
<li>longdelay:长时响应。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RuleStatus(self):
"""规则状态,取值有:
<li>on:生效;</li>
<li>off:不生效。</li>默认 on 生效。
:rtype: str
"""
return self._RuleStatus
@RuleStatus.setter
def RuleStatus(self, RuleStatus):
self._RuleStatus = RuleStatus
@property
def AclConditions(self):
"""规则详情。
:rtype: list of AclCondition
"""
return self._AclConditions
@AclConditions.setter
def AclConditions(self, AclConditions):
self._AclConditions = AclConditions
@property
def RulePriority(self):
"""规则权重,取值范围0-100。
:rtype: int
"""
return self._RulePriority
@RulePriority.setter
def RulePriority(self, RulePriority):
self._RulePriority = RulePriority
@property
def RuleID(self):
"""规则 Id。仅出参使用。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def ExtendActions(self):
"""随机处置的处置方式及占比,非随机处置可不填暂不支持。
:rtype: list of BotExtendAction
"""
return self._ExtendActions
@ExtendActions.setter
def ExtendActions(self, ExtendActions):
self._ExtendActions = ExtendActions
@property
def FreqFields(self):
"""过滤词,取值有:
<li>sip:客户端 ip。</li>
默认为空字符串。
:rtype: list of str
"""
return self._FreqFields
@FreqFields.setter
def FreqFields(self, FreqFields):
self._FreqFields = FreqFields
@property
def UpdateTime(self):
"""更新时间。仅出参使用。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def FreqScope(self):
"""统计范围。取值有:
<li>source_to_eo:(响应)源站到 EdgeOne;</li>
<li>client_to_eo:(请求)客户端到 EdgeOne。</li>
默认为 source_to_eo。
:rtype: list of str
"""
return self._FreqScope
@FreqScope.setter
def FreqScope(self, FreqScope):
self._FreqScope = FreqScope
@property
def Name(self):
"""自定义返回页面的名称。Action 是 page 时必填,且不能为空。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def CustomResponseId(self):
"""自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Action 是 page 时必填,且不能为空。
:rtype: str
"""
return self._CustomResponseId
@CustomResponseId.setter
def CustomResponseId(self, CustomResponseId):
self._CustomResponseId = CustomResponseId
@property
def ResponseCode(self):
"""自定义返回页面的响应码。Action 是 page 时必填,且不能为空,取值: 100~600,不支持 3xx 响应码。默认值:567。
:rtype: int
"""
return self._ResponseCode
@ResponseCode.setter
def ResponseCode(self, ResponseCode):
self._ResponseCode = ResponseCode
@property
def RedirectUrl(self):
"""重定向时候的地址。Action 是 redirect 时必填,且不能为空。
:rtype: str
"""
return self._RedirectUrl
@RedirectUrl.setter
def RedirectUrl(self, RedirectUrl):
self._RedirectUrl = RedirectUrl
def _deserialize(self, params):
self._RuleName = params.get("RuleName")
self._Action = params.get("Action")
self._RuleStatus = params.get("RuleStatus")
if params.get("AclConditions") is not None:
self._AclConditions = []
for item in params.get("AclConditions"):
obj = AclCondition()
obj._deserialize(item)
self._AclConditions.append(obj)
self._RulePriority = params.get("RulePriority")
self._RuleID = params.get("RuleID")
if params.get("ExtendActions") is not None:
self._ExtendActions = []
for item in params.get("ExtendActions"):
obj = BotExtendAction()
obj._deserialize(item)
self._ExtendActions.append(obj)
self._FreqFields = params.get("FreqFields")
self._UpdateTime = params.get("UpdateTime")
self._FreqScope = params.get("FreqScope")
self._Name = params.get("Name")
self._CustomResponseId = params.get("CustomResponseId")
self._ResponseCode = params.get("ResponseCode")
self._RedirectUrl = params.get("RedirectUrl")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CC(AbstractModel):
"""cc配置项。
"""
def __init__(self):
r"""
:param _Switch: Waf开关,取值为:
<li> on:开启;</li>
<li> off:关闭。</li>
:type Switch: str
:param _PolicyId: 策略ID。
:type PolicyId: int
"""
self._Switch = None
self._PolicyId = None
@property
def Switch(self):
"""Waf开关,取值为:
<li> on:开启;</li>
<li> off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def PolicyId(self):
"""策略ID。
:rtype: int
"""
return self._PolicyId
@PolicyId.setter
def PolicyId(self, PolicyId):
self._PolicyId = PolicyId
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._PolicyId = params.get("PolicyId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CLSTopic(AbstractModel):
"""实时日志投递到腾讯云 CLS 的配置信息。
"""
def __init__(self):
r"""
:param _LogSetId: 腾讯云 CLS 日志集 ID。
:type LogSetId: str
:param _TopicId: 腾讯云 CLS 日志主题 ID。
:type TopicId: str
:param _LogSetRegion: 腾讯云 CLS 日志集所在的地域。
:type LogSetRegion: str
"""
self._LogSetId = None
self._TopicId = None
self._LogSetRegion = None
@property
def LogSetId(self):
"""腾讯云 CLS 日志集 ID。
:rtype: str
"""
return self._LogSetId
@LogSetId.setter
def LogSetId(self, LogSetId):
self._LogSetId = LogSetId
@property
def TopicId(self):
"""腾讯云 CLS 日志主题 ID。
:rtype: str
"""
return self._TopicId
@TopicId.setter
def TopicId(self, TopicId):
self._TopicId = TopicId
@property
def LogSetRegion(self):
"""腾讯云 CLS 日志集所在的地域。
:rtype: str
"""
return self._LogSetRegion
@LogSetRegion.setter
def LogSetRegion(self, LogSetRegion):
self._LogSetRegion = LogSetRegion
def _deserialize(self, params):
self._LogSetId = params.get("LogSetId")
self._TopicId = params.get("TopicId")
self._LogSetRegion = params.get("LogSetRegion")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Cache(AbstractModel):
"""缓存时间设置
"""
def __init__(self):
r"""
:param _Switch: 缓存配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _CacheTime: 缓存过期时间设置。
单位为秒,最大可设置为 365 天。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheTime: int
:param _IgnoreCacheControl: 是否开启强制缓存,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type IgnoreCacheControl: str
"""
self._Switch = None
self._CacheTime = None
self._IgnoreCacheControl = None
@property
def Switch(self):
"""缓存配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def CacheTime(self):
"""缓存过期时间设置。
单位为秒,最大可设置为 365 天。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._CacheTime
@CacheTime.setter
def CacheTime(self, CacheTime):
self._CacheTime = CacheTime
@property
def IgnoreCacheControl(self):
warnings.warn("parameter `IgnoreCacheControl` is deprecated", DeprecationWarning)
"""是否开启强制缓存,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._IgnoreCacheControl
@IgnoreCacheControl.setter
def IgnoreCacheControl(self, IgnoreCacheControl):
warnings.warn("parameter `IgnoreCacheControl` is deprecated", DeprecationWarning)
self._IgnoreCacheControl = IgnoreCacheControl
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._CacheTime = params.get("CacheTime")
self._IgnoreCacheControl = params.get("IgnoreCacheControl")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheConfig(AbstractModel):
"""缓存规则配置。
"""
def __init__(self):
r"""
:param _Cache: 缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Cache: :class:`tencentcloud.teo.v20220901.models.Cache`
:param _NoCache: 不缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:type NoCache: :class:`tencentcloud.teo.v20220901.models.NoCache`
:param _FollowOrigin: 遵循源站配置。
注意:此字段可能返回 null,表示取不到有效值。
:type FollowOrigin: :class:`tencentcloud.teo.v20220901.models.FollowOrigin`
"""
self._Cache = None
self._NoCache = None
self._FollowOrigin = None
@property
def Cache(self):
"""缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Cache`
"""
return self._Cache
@Cache.setter
def Cache(self, Cache):
self._Cache = Cache
@property
def NoCache(self):
"""不缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.NoCache`
"""
return self._NoCache
@NoCache.setter
def NoCache(self, NoCache):
self._NoCache = NoCache
@property
def FollowOrigin(self):
"""遵循源站配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.FollowOrigin`
"""
return self._FollowOrigin
@FollowOrigin.setter
def FollowOrigin(self, FollowOrigin):
self._FollowOrigin = FollowOrigin
def _deserialize(self, params):
if params.get("Cache") is not None:
self._Cache = Cache()
self._Cache._deserialize(params.get("Cache"))
if params.get("NoCache") is not None:
self._NoCache = NoCache()
self._NoCache._deserialize(params.get("NoCache"))
if params.get("FollowOrigin") is not None:
self._FollowOrigin = FollowOrigin()
self._FollowOrigin._deserialize(params.get("FollowOrigin"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheConfigCustomTime(AbstractModel):
"""节点缓存 TTL 自定义缓存时间配置参数。
"""
def __init__(self):
r"""
:param _Switch: 自定义缓存时间开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _CacheTime: 自定义缓存时间数值,单位为秒,取值:0-315360000。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type CacheTime: int
"""
self._Switch = None
self._CacheTime = None
@property
def Switch(self):
"""自定义缓存时间开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def CacheTime(self):
"""自定义缓存时间数值,单位为秒,取值:0-315360000。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: int
"""
return self._CacheTime
@CacheTime.setter
def CacheTime(self, CacheTime):
self._CacheTime = CacheTime
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._CacheTime = params.get("CacheTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheConfigParameters(AbstractModel):
"""节点缓存 TTL 配置参数。
"""
def __init__(self):
r"""
:param _FollowOrigin: 遵循源站缓存配置。FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type FollowOrigin: :class:`tencentcloud.teo.v20220901.models.FollowOrigin`
:param _NoCache: 不缓存配置。FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type NoCache: :class:`tencentcloud.teo.v20220901.models.NoCache`
:param _CustomTime: 自定义缓存时间配置。FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type CustomTime: :class:`tencentcloud.teo.v20220901.models.CacheConfigCustomTime`
"""
self._FollowOrigin = None
self._NoCache = None
self._CustomTime = None
@property
def FollowOrigin(self):
"""遵循源站缓存配置。FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.FollowOrigin`
"""
return self._FollowOrigin
@FollowOrigin.setter
def FollowOrigin(self, FollowOrigin):
self._FollowOrigin = FollowOrigin
@property
def NoCache(self):
"""不缓存配置。FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.NoCache`
"""
return self._NoCache
@NoCache.setter
def NoCache(self, NoCache):
self._NoCache = NoCache
@property
def CustomTime(self):
"""自定义缓存时间配置。FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheConfigCustomTime`
"""
return self._CustomTime
@CustomTime.setter
def CustomTime(self, CustomTime):
self._CustomTime = CustomTime
def _deserialize(self, params):
if params.get("FollowOrigin") is not None:
self._FollowOrigin = FollowOrigin()
self._FollowOrigin._deserialize(params.get("FollowOrigin"))
if params.get("NoCache") is not None:
self._NoCache = NoCache()
self._NoCache._deserialize(params.get("NoCache"))
if params.get("CustomTime") is not None:
self._CustomTime = CacheConfigCustomTime()
self._CustomTime._deserialize(params.get("CustomTime"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheKey(AbstractModel):
"""缓存键配置。
"""
def __init__(self):
r"""
:param _FullUrlCache: 是否开启全路径缓存,取值有:
<li>on:开启全路径缓存(即关闭参数忽略);</li>
<li>off:关闭全路径缓存(即开启参数忽略)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type FullUrlCache: str
:param _IgnoreCase: 是否忽略大小写缓存,取值有:
<li>on:忽略;</li>
<li>off:不忽略。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type IgnoreCase: str
:param _QueryString: CacheKey 中包含请求参数。
注意:此字段可能返回 null,表示取不到有效值。
:type QueryString: :class:`tencentcloud.teo.v20220901.models.QueryString`
"""
self._FullUrlCache = None
self._IgnoreCase = None
self._QueryString = None
@property
def FullUrlCache(self):
"""是否开启全路径缓存,取值有:
<li>on:开启全路径缓存(即关闭参数忽略);</li>
<li>off:关闭全路径缓存(即开启参数忽略)。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._FullUrlCache
@FullUrlCache.setter
def FullUrlCache(self, FullUrlCache):
self._FullUrlCache = FullUrlCache
@property
def IgnoreCase(self):
"""是否忽略大小写缓存,取值有:
<li>on:忽略;</li>
<li>off:不忽略。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._IgnoreCase
@IgnoreCase.setter
def IgnoreCase(self, IgnoreCase):
self._IgnoreCase = IgnoreCase
@property
def QueryString(self):
"""CacheKey 中包含请求参数。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.QueryString`
"""
return self._QueryString
@QueryString.setter
def QueryString(self, QueryString):
self._QueryString = QueryString
def _deserialize(self, params):
self._FullUrlCache = params.get("FullUrlCache")
self._IgnoreCase = params.get("IgnoreCase")
if params.get("QueryString") is not None:
self._QueryString = QueryString()
self._QueryString._deserialize(params.get("QueryString"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheKeyConfigParameters(AbstractModel):
"""缓存键配置。
"""
def __init__(self):
r"""
:param _FullURLCache: 是否开启全路径缓存,取值有:
<li>on:开启全路径缓存(即关闭参数忽略);</li>
<li>off:关闭全路径缓存(即开启参数忽略)。</li>
:type FullURLCache: str
:param _IgnoreCase: 是否忽略大小写缓存,取值有:
<li>on:忽略;</li>
<li>off:不忽略。</li>
:type IgnoreCase: str
:param _QueryString: 查询字符串保留配置参数。此字段和 FullURLCache 必须同时设置,但不能同为 on。
:type QueryString: :class:`tencentcloud.teo.v20220901.models.CacheKeyQueryString`
"""
self._FullURLCache = None
self._IgnoreCase = None
self._QueryString = None
@property
def FullURLCache(self):
"""是否开启全路径缓存,取值有:
<li>on:开启全路径缓存(即关闭参数忽略);</li>
<li>off:关闭全路径缓存(即开启参数忽略)。</li>
:rtype: str
"""
return self._FullURLCache
@FullURLCache.setter
def FullURLCache(self, FullURLCache):
self._FullURLCache = FullURLCache
@property
def IgnoreCase(self):
"""是否忽略大小写缓存,取值有:
<li>on:忽略;</li>
<li>off:不忽略。</li>
:rtype: str
"""
return self._IgnoreCase
@IgnoreCase.setter
def IgnoreCase(self, IgnoreCase):
self._IgnoreCase = IgnoreCase
@property
def QueryString(self):
"""查询字符串保留配置参数。此字段和 FullURLCache 必须同时设置,但不能同为 on。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKeyQueryString`
"""
return self._QueryString
@QueryString.setter
def QueryString(self, QueryString):
self._QueryString = QueryString
def _deserialize(self, params):
self._FullURLCache = params.get("FullURLCache")
self._IgnoreCase = params.get("IgnoreCase")
if params.get("QueryString") is not None:
self._QueryString = CacheKeyQueryString()
self._QueryString._deserialize(params.get("QueryString"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheKeyCookie(AbstractModel):
"""自定义 Cache Key Cookie 配置参数。
"""
def __init__(self):
r"""
:param _Switch: 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Action: 缓存动作,取值有:
<li>full:全部保留;</li>
<li> ignore:全部忽略;</li>
<li> includeCustom:保留指定参数;</li>
<li>excludeCustom:忽略指定参数。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Action: str
:param _Values: 自定义 Cache Key Cookie 名称列表。<br>注意:当 Action 为 includeCustom 或 excludeCustom 时,此字段必填;当 Action 为 full 或 ignore 时,无需填写此字段,若填写则不生效。
:type Values: list of str
"""
self._Switch = None
self._Action = None
self._Values = None
@property
def Switch(self):
"""功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Action(self):
"""缓存动作,取值有:
<li>full:全部保留;</li>
<li> ignore:全部忽略;</li>
<li> includeCustom:保留指定参数;</li>
<li>excludeCustom:忽略指定参数。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Values(self):
"""自定义 Cache Key Cookie 名称列表。<br>注意:当 Action 为 includeCustom 或 excludeCustom 时,此字段必填;当 Action 为 full 或 ignore 时,无需填写此字段,若填写则不生效。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Action = params.get("Action")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheKeyHeader(AbstractModel):
"""自定义 Cache Key HTTP 请求头配置参数。
"""
def __init__(self):
r"""
:param _Switch: 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Values: 自定义 Cache Key HTTP 请求头列表。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Values: list of str
"""
self._Switch = None
self._Values = None
@property
def Switch(self):
"""功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Values(self):
"""自定义 Cache Key HTTP 请求头列表。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheKeyParameters(AbstractModel):
"""自定义 Cache Key 配置参数。该配置参数的 FullURLCache 和 QueryString 采用组合表达,具体示例可以参考:
- 查询字符串全部保留。开启忽略大小写。
```
{
"CacheKey": {
"FullURLCache": "on",
"QueryString": {
"Switch": "off"
},
"IgnoreCase": "on"
}
}
```
- 查询字符串全部忽略。开启忽略大小写。
```
{
"CacheKey": {
"FullURLCache": "off",
"QueryString": {
"Switch": "off"
},
"IgnoreCase": "on"
}
}
```
- 查询字符串保留指定参数。关闭忽略大小写。
```
{
"CacheKey": {
"FullURLCache": "off",
"QueryString": {
"Switch": "on",
"Action": "includeCustom",
"Values": ["name1","name2","name3"]
},
"IgnoreCase": "off"
}
}
```
- 查询字符串忽略指定参数。关闭忽略大小写。
```
{
"CacheKey": {
"FullURLCache": "off",
"QueryString": {
"Switch": "on",
"Action": "excludeCustom",
"Values": ["name1","name2","name3"]
},
"IgnoreCase": "off"
}
}
```
"""
def __init__(self):
r"""
:param _FullURLCache: 查询字符串全部保留开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。此字段和 QueryString.Switch 必须同时设置,但不能同为 on。
:type FullURLCache: str
:param _QueryString: 查询字符串保留配置参数。此字段和 FullURLCache 必须同时设置,但不能同为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type QueryString: :class:`tencentcloud.teo.v20220901.models.CacheKeyQueryString`
:param _IgnoreCase: 忽略大小写开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
:type IgnoreCase: str
:param _Header: HTTP 请求头配置参数。FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Header: :class:`tencentcloud.teo.v20220901.models.CacheKeyHeader`
:param _Scheme: 请求协议开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
:type Scheme: str
:param _Cookie: Cookie 配置参数。FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Cookie: :class:`tencentcloud.teo.v20220901.models.CacheKeyCookie`
"""
self._FullURLCache = None
self._QueryString = None
self._IgnoreCase = None
self._Header = None
self._Scheme = None
self._Cookie = None
@property
def FullURLCache(self):
"""查询字符串全部保留开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。此字段和 QueryString.Switch 必须同时设置,但不能同为 on。
:rtype: str
"""
return self._FullURLCache
@FullURLCache.setter
def FullURLCache(self, FullURLCache):
self._FullURLCache = FullURLCache
@property
def QueryString(self):
"""查询字符串保留配置参数。此字段和 FullURLCache 必须同时设置,但不能同为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKeyQueryString`
"""
return self._QueryString
@QueryString.setter
def QueryString(self, QueryString):
self._QueryString = QueryString
@property
def IgnoreCase(self):
"""忽略大小写开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
:rtype: str
"""
return self._IgnoreCase
@IgnoreCase.setter
def IgnoreCase(self, IgnoreCase):
self._IgnoreCase = IgnoreCase
@property
def Header(self):
"""HTTP 请求头配置参数。FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKeyHeader`
"""
return self._Header
@Header.setter
def Header(self, Header):
self._Header = Header
@property
def Scheme(self):
"""请求协议开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
:rtype: str
"""
return self._Scheme
@Scheme.setter
def Scheme(self, Scheme):
self._Scheme = Scheme
@property
def Cookie(self):
"""Cookie 配置参数。FullURLCache、IgnoreCase、Header、Scheme、Cookie 至少设置一个配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKeyCookie`
"""
return self._Cookie
@Cookie.setter
def Cookie(self, Cookie):
self._Cookie = Cookie
def _deserialize(self, params):
self._FullURLCache = params.get("FullURLCache")
if params.get("QueryString") is not None:
self._QueryString = CacheKeyQueryString()
self._QueryString._deserialize(params.get("QueryString"))
self._IgnoreCase = params.get("IgnoreCase")
if params.get("Header") is not None:
self._Header = CacheKeyHeader()
self._Header._deserialize(params.get("Header"))
self._Scheme = params.get("Scheme")
if params.get("Cookie") is not None:
self._Cookie = CacheKeyCookie()
self._Cookie._deserialize(params.get("Cookie"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheKeyQueryString(AbstractModel):
"""自定义 Cache Key 查询字符串配置参数。
"""
def __init__(self):
r"""
:param _Switch: 查询字符串保留/忽略指定参数开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Action: 查询字符串保留/忽略指定参数动作。取值有:
<li>includeCustom:表示保留部分参数;</li>
<li>excludeCustom:表示忽略部分参数。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Action: str
:param _Values: 查询字符串中需保留/忽略的参数名列表。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Values: list of str
"""
self._Switch = None
self._Action = None
self._Values = None
@property
def Switch(self):
"""查询字符串保留/忽略指定参数开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Action(self):
"""查询字符串保留/忽略指定参数动作。取值有:
<li>includeCustom:表示保留部分参数;</li>
<li>excludeCustom:表示忽略部分参数。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Values(self):
"""查询字符串中需保留/忽略的参数名列表。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Action = params.get("Action")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheParameters(AbstractModel):
"""节点缓存 TTL 配置参数。
"""
def __init__(self):
r"""
:param _FollowOrigin: 缓存遵循源站。不填表示不设置该配置,FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type FollowOrigin: :class:`tencentcloud.teo.v20220901.models.FollowOrigin`
:param _NoCache: 不缓存。不填表示不设置该配置,FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type NoCache: :class:`tencentcloud.teo.v20220901.models.NoCache`
:param _CustomTime: 自定义缓存时间。不填表示不设置该配置,FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:type CustomTime: :class:`tencentcloud.teo.v20220901.models.CustomTime`
"""
self._FollowOrigin = None
self._NoCache = None
self._CustomTime = None
@property
def FollowOrigin(self):
"""缓存遵循源站。不填表示不设置该配置,FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.FollowOrigin`
"""
return self._FollowOrigin
@FollowOrigin.setter
def FollowOrigin(self, FollowOrigin):
self._FollowOrigin = FollowOrigin
@property
def NoCache(self):
"""不缓存。不填表示不设置该配置,FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.NoCache`
"""
return self._NoCache
@NoCache.setter
def NoCache(self, NoCache):
self._NoCache = NoCache
@property
def CustomTime(self):
"""自定义缓存时间。不填表示不设置该配置,FollowOrigin、NoCache、CustomTime 最多只能配置一个 Switch 为 on。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CustomTime`
"""
return self._CustomTime
@CustomTime.setter
def CustomTime(self, CustomTime):
self._CustomTime = CustomTime
def _deserialize(self, params):
if params.get("FollowOrigin") is not None:
self._FollowOrigin = FollowOrigin()
self._FollowOrigin._deserialize(params.get("FollowOrigin"))
if params.get("NoCache") is not None:
self._NoCache = NoCache()
self._NoCache._deserialize(params.get("NoCache"))
if params.get("CustomTime") is not None:
self._CustomTime = CustomTime()
self._CustomTime._deserialize(params.get("CustomTime"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CachePrefresh(AbstractModel):
"""缓存预刷新
"""
def __init__(self):
r"""
:param _Switch: 缓存预刷新配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Percent: 缓存预刷新百分比,取值范围:1-99。
注意:此字段可能返回 null,表示取不到有效值。
:type Percent: int
"""
self._Switch = None
self._Percent = None
@property
def Switch(self):
"""缓存预刷新配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Percent(self):
"""缓存预刷新百分比,取值范围:1-99。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._Percent
@Percent.setter
def Percent(self, Percent):
self._Percent = Percent
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Percent = params.get("Percent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CachePrefreshParameters(AbstractModel):
"""缓存预刷新 配置参数。
"""
def __init__(self):
r"""
:param _Switch: 缓存预刷新开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _CacheTimePercent: 预刷新时间设置为节点缓存时间的百分比数值,取值:1~99。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type CacheTimePercent: int
"""
self._Switch = None
self._CacheTimePercent = None
@property
def Switch(self):
"""缓存预刷新开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def CacheTimePercent(self):
"""预刷新时间设置为节点缓存时间的百分比数值,取值:1~99。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: int
"""
return self._CacheTimePercent
@CacheTimePercent.setter
def CacheTimePercent(self, CacheTimePercent):
self._CacheTimePercent = CacheTimePercent
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._CacheTimePercent = params.get("CacheTimePercent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CacheTag(AbstractModel):
"""节点缓存清除类型取值为 purge_cache_tag 时附带的信息。
"""
def __init__(self):
r"""
:param _Domains: 待清除缓存的域名列表。
:type Domains: list of str
"""
self._Domains = None
@property
def Domains(self):
"""待清除缓存的域名列表。
:rtype: list of str
"""
return self._Domains
@Domains.setter
def Domains(self, Domains):
self._Domains = Domains
def _deserialize(self, params):
self._Domains = params.get("Domains")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CertificateInfo(AbstractModel):
"""https 证书配置。
"""
def __init__(self):
r"""
:param _CertId: 证书 ID。来源于 SSL 侧,您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
:type CertId: str
:param _Alias: 证书备注名。
:type Alias: str
:param _Type: 证书类型,取值有:
<li>default:默认证书;</li>
<li>upload:用户上传;</li>
<li>managed:腾讯云托管。</li>
:type Type: str
:param _ExpireTime: 证书过期时间。
:type ExpireTime: str
:param _DeployTime: 证书部署时间。
:type DeployTime: str
:param _SignAlgo: 签名算法。
:type SignAlgo: str
:param _Status: 证书状态,取值有:
<li>deployed:已部署;</li>
<li>processing:部署中;</li>
<li>applying:申请中;</li>
<li>failed:申请失败;</li>
<li>issued:绑定失败。</li>
:type Status: str
"""
self._CertId = None
self._Alias = None
self._Type = None
self._ExpireTime = None
self._DeployTime = None
self._SignAlgo = None
self._Status = None
@property
def CertId(self):
"""证书 ID。来源于 SSL 侧,您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
:rtype: str
"""
return self._CertId
@CertId.setter
def CertId(self, CertId):
self._CertId = CertId
@property
def Alias(self):
"""证书备注名。
:rtype: str
"""
return self._Alias
@Alias.setter
def Alias(self, Alias):
self._Alias = Alias
@property
def Type(self):
"""证书类型,取值有:
<li>default:默认证书;</li>
<li>upload:用户上传;</li>
<li>managed:腾讯云托管。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def ExpireTime(self):
"""证书过期时间。
:rtype: str
"""
return self._ExpireTime
@ExpireTime.setter
def ExpireTime(self, ExpireTime):
self._ExpireTime = ExpireTime
@property
def DeployTime(self):
"""证书部署时间。
:rtype: str
"""
return self._DeployTime
@DeployTime.setter
def DeployTime(self, DeployTime):
self._DeployTime = DeployTime
@property
def SignAlgo(self):
"""签名算法。
:rtype: str
"""
return self._SignAlgo
@SignAlgo.setter
def SignAlgo(self, SignAlgo):
self._SignAlgo = SignAlgo
@property
def Status(self):
"""证书状态,取值有:
<li>deployed:已部署;</li>
<li>processing:部署中;</li>
<li>applying:申请中;</li>
<li>failed:申请失败;</li>
<li>issued:绑定失败。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
def _deserialize(self, params):
self._CertId = params.get("CertId")
self._Alias = params.get("Alias")
self._Type = params.get("Type")
self._ExpireTime = params.get("ExpireTime")
self._DeployTime = params.get("DeployTime")
self._SignAlgo = params.get("SignAlgo")
self._Status = params.get("Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CheckCnameStatusRequest(AbstractModel):
"""CheckCnameStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RecordNames: 加速域名列表。
:type RecordNames: list of str
"""
self._ZoneId = None
self._RecordNames = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RecordNames(self):
"""加速域名列表。
:rtype: list of str
"""
return self._RecordNames
@RecordNames.setter
def RecordNames(self, RecordNames):
self._RecordNames = RecordNames
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RecordNames = params.get("RecordNames")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CheckCnameStatusResponse(AbstractModel):
"""CheckCnameStatus返回参数结构体
"""
def __init__(self):
r"""
:param _CnameStatus: 加速域名 CNAME 状态信息列表。
:type CnameStatus: list of CnameStatus
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._CnameStatus = None
self._RequestId = None
@property
def CnameStatus(self):
"""加速域名 CNAME 状态信息列表。
:rtype: list of CnameStatus
"""
return self._CnameStatus
@CnameStatus.setter
def CnameStatus(self, CnameStatus):
self._CnameStatus = CnameStatus
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("CnameStatus") is not None:
self._CnameStatus = []
for item in params.get("CnameStatus"):
obj = CnameStatus()
obj._deserialize(item)
self._CnameStatus.append(obj)
self._RequestId = params.get("RequestId")
class CheckRegionHealthStatus(AbstractModel):
"""各个健康检查区域下源站的健康状态。
"""
def __init__(self):
r"""
:param _Region: 健康检查区域,ISO-3166-1 两位字母代码。
:type Region: str
:param _Healthy: 单健康检查区域下探测源站的健康状态,取值有:
<li>Healthy:健康;</li>
<li>Unhealthy:不健康;</li>
<li> Undetected:未探测到数据。</li>说明:单健康检查区域下所有源站为健康,则状态为健康,否则为不健康。
:type Healthy: str
:param _OriginHealthStatus: 源站健康状态。
:type OriginHealthStatus: list of OriginHealthStatus
"""
self._Region = None
self._Healthy = None
self._OriginHealthStatus = None
@property
def Region(self):
"""健康检查区域,ISO-3166-1 两位字母代码。
:rtype: str
"""
return self._Region
@Region.setter
def Region(self, Region):
self._Region = Region
@property
def Healthy(self):
"""单健康检查区域下探测源站的健康状态,取值有:
<li>Healthy:健康;</li>
<li>Unhealthy:不健康;</li>
<li> Undetected:未探测到数据。</li>说明:单健康检查区域下所有源站为健康,则状态为健康,否则为不健康。
:rtype: str
"""
return self._Healthy
@Healthy.setter
def Healthy(self, Healthy):
self._Healthy = Healthy
@property
def OriginHealthStatus(self):
"""源站健康状态。
:rtype: list of OriginHealthStatus
"""
return self._OriginHealthStatus
@OriginHealthStatus.setter
def OriginHealthStatus(self, OriginHealthStatus):
self._OriginHealthStatus = OriginHealthStatus
def _deserialize(self, params):
self._Region = params.get("Region")
self._Healthy = params.get("Healthy")
if params.get("OriginHealthStatus") is not None:
self._OriginHealthStatus = []
for item in params.get("OriginHealthStatus"):
obj = OriginHealthStatus()
obj._deserialize(item)
self._OriginHealthStatus.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ClientIPCountryParameters(AbstractModel):
"""回源时携带客户端 IP 所属地域信息,值的格式为 ISO-3166-1 两位字母代码。
"""
def __init__(self):
r"""
:param _Switch: 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _HeaderName: 存放客户端 IP 所属地域信息的请求头名称,当 Switch=on 时有效。为空则使用默认值:EO-Client-IPCountry。
:type HeaderName: str
"""
self._Switch = None
self._HeaderName = None
@property
def Switch(self):
"""配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def HeaderName(self):
"""存放客户端 IP 所属地域信息的请求头名称,当 Switch=on 时有效。为空则使用默认值:EO-Client-IPCountry。
:rtype: str
"""
return self._HeaderName
@HeaderName.setter
def HeaderName(self, HeaderName):
self._HeaderName = HeaderName
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._HeaderName = params.get("HeaderName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ClientIPHeaderParameters(AbstractModel):
"""存储客户端请求IP的头部信息配置。
"""
def __init__(self):
r"""
:param _Switch: 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _HeaderName: 回源时,存放客户端 IP 的请求头名称。当 Switch 为 on 时,该参数必填。该参数不允许填写 X-Forwarded-For。
:type HeaderName: str
"""
self._Switch = None
self._HeaderName = None
@property
def Switch(self):
"""配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def HeaderName(self):
"""回源时,存放客户端 IP 的请求头名称。当 Switch 为 on 时,该参数必填。该参数不允许填写 X-Forwarded-For。
:rtype: str
"""
return self._HeaderName
@HeaderName.setter
def HeaderName(self, HeaderName):
self._HeaderName = HeaderName
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._HeaderName = params.get("HeaderName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ClientIpCountry(AbstractModel):
"""回源时携带客户端IP所属地域信息,值的格式为ISO-3166-1两位字母代码。
"""
def __init__(self):
r"""
:param _Switch: 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _HeaderName: 存放客户端 IP 所属地域信息的请求头名称,当 Switch=on 时有效。
为空则使用默认值:EO-Client-IPCountry。
:type HeaderName: str
"""
self._Switch = None
self._HeaderName = None
@property
def Switch(self):
"""配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def HeaderName(self):
"""存放客户端 IP 所属地域信息的请求头名称,当 Switch=on 时有效。
为空则使用默认值:EO-Client-IPCountry。
:rtype: str
"""
return self._HeaderName
@HeaderName.setter
def HeaderName(self, HeaderName):
self._HeaderName = HeaderName
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._HeaderName = params.get("HeaderName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ClientIpHeader(AbstractModel):
"""存储客户端请求IP的头部信息配置
"""
def __init__(self):
r"""
:param _Switch: 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _HeaderName: 回源时,存放客户端 IP 的请求头名称。当 Switch 为 on 时,该参数必填。该参数不允许填写 X-Forwarded-For。
注意:此字段可能返回 null,表示取不到有效值。
:type HeaderName: str
"""
self._Switch = None
self._HeaderName = None
@property
def Switch(self):
"""配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def HeaderName(self):
"""回源时,存放客户端 IP 的请求头名称。当 Switch 为 on 时,该参数必填。该参数不允许填写 X-Forwarded-For。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._HeaderName
@HeaderName.setter
def HeaderName(self, HeaderName):
self._HeaderName = HeaderName
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._HeaderName = params.get("HeaderName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CnameStatus(AbstractModel):
"""CNAME 状态
"""
def __init__(self):
r"""
:param _RecordName: 记录名称。
:type RecordName: str
:param _Cname: CNAME 地址。
注意:此字段可能返回 null,表示取不到有效值。
:type Cname: str
:param _Status: Cname状态信息,取值有:
<li>active:生效;</li>
<li>moved:不生效。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Status: str
"""
self._RecordName = None
self._Cname = None
self._Status = None
@property
def RecordName(self):
"""记录名称。
:rtype: str
"""
return self._RecordName
@RecordName.setter
def RecordName(self, RecordName):
self._RecordName = RecordName
@property
def Cname(self):
"""CNAME 地址。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Cname
@Cname.setter
def Cname(self, Cname):
self._Cname = Cname
@property
def Status(self):
"""Cname状态信息,取值有:
<li>active:生效;</li>
<li>moved:不生效。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
def _deserialize(self, params):
self._RecordName = params.get("RecordName")
self._Cname = params.get("Cname")
self._Status = params.get("Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CodeAction(AbstractModel):
"""规则引擎带有状态码的动作
"""
def __init__(self):
r"""
:param _Action: 功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:type Action: str
:param _Parameters: 操作参数。
:type Parameters: list of RuleCodeActionParams
"""
self._Action = None
self._Parameters = None
@property
def Action(self):
"""功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Parameters(self):
"""操作参数。
:rtype: list of RuleCodeActionParams
"""
return self._Parameters
@Parameters.setter
def Parameters(self, Parameters):
self._Parameters = Parameters
def _deserialize(self, params):
self._Action = params.get("Action")
if params.get("Parameters") is not None:
self._Parameters = []
for item in params.get("Parameters"):
obj = RuleCodeActionParams()
obj._deserialize(item)
self._Parameters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Compression(AbstractModel):
"""智能压缩配置。
"""
def __init__(self):
r"""
:param _Switch: 智能压缩配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Algorithms: 支持的压缩算法列表,取值有:
<li>brotli:brotli算法;</li>
<li>gzip:gzip算法。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Algorithms: list of str
"""
self._Switch = None
self._Algorithms = None
@property
def Switch(self):
"""智能压缩配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Algorithms(self):
"""支持的压缩算法列表,取值有:
<li>brotli:brotli算法;</li>
<li>gzip:gzip算法。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._Algorithms
@Algorithms.setter
def Algorithms(self, Algorithms):
self._Algorithms = Algorithms
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Algorithms = params.get("Algorithms")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CompressionParameters(AbstractModel):
"""智能压缩配置。
"""
def __init__(self):
r"""
:param _Switch: 智能压缩配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Algorithms: 支持的压缩算法列表。当 Switch 为 on 时,此字段必填,否则此字段不生效。取值有:
<li>brotli:brotli 算法;</li>
<li>gzip:gzip 算法。</li>
:type Algorithms: list of str
"""
self._Switch = None
self._Algorithms = None
@property
def Switch(self):
"""智能压缩配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Algorithms(self):
"""支持的压缩算法列表。当 Switch 为 on 时,此字段必填,否则此字段不生效。取值有:
<li>brotli:brotli 算法;</li>
<li>gzip:gzip 算法。</li>
:rtype: list of str
"""
return self._Algorithms
@Algorithms.setter
def Algorithms(self, Algorithms):
self._Algorithms = Algorithms
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Algorithms = params.get("Algorithms")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ConfigGroupVersionInfo(AbstractModel):
"""配置组版本信息。
"""
def __init__(self):
r"""
:param _VersionId: 版本 ID。
:type VersionId: str
:param _VersionNumber: 版本号。
:type VersionNumber: str
:param _GroupId: 配置组 ID。
:type GroupId: str
:param _GroupType: 配置组类型。取值有:
<li>l7_acceleration :七层加速配置组。</li>
<li>edge_functions :边缘函数配置组。</li>
:type GroupType: str
:param _Description: 版本描述。
:type Description: str
:param _Status: 版本状态,取值有:
<li>creating:创建中;</li>
<li>inactive:未生效;</li>
<li>active:已生效。</li>
:type Status: str
:param _CreateTime: 版本创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type CreateTime: str
"""
self._VersionId = None
self._VersionNumber = None
self._GroupId = None
self._GroupType = None
self._Description = None
self._Status = None
self._CreateTime = None
@property
def VersionId(self):
"""版本 ID。
:rtype: str
"""
return self._VersionId
@VersionId.setter
def VersionId(self, VersionId):
self._VersionId = VersionId
@property
def VersionNumber(self):
"""版本号。
:rtype: str
"""
return self._VersionNumber
@VersionNumber.setter
def VersionNumber(self, VersionNumber):
self._VersionNumber = VersionNumber
@property
def GroupId(self):
"""配置组 ID。
:rtype: str
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def GroupType(self):
"""配置组类型。取值有:
<li>l7_acceleration :七层加速配置组。</li>
<li>edge_functions :边缘函数配置组。</li>
:rtype: str
"""
return self._GroupType
@GroupType.setter
def GroupType(self, GroupType):
self._GroupType = GroupType
@property
def Description(self):
"""版本描述。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def Status(self):
"""版本状态,取值有:
<li>creating:创建中;</li>
<li>inactive:未生效;</li>
<li>active:已生效。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def CreateTime(self):
"""版本创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
def _deserialize(self, params):
self._VersionId = params.get("VersionId")
self._VersionNumber = params.get("VersionNumber")
self._GroupId = params.get("GroupId")
self._GroupType = params.get("GroupType")
self._Description = params.get("Description")
self._Status = params.get("Status")
self._CreateTime = params.get("CreateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ContentIdentifier(AbstractModel):
"""内容标识符。该功能仅白名单开放。
"""
def __init__(self):
r"""
:param _ContentId: 内容标识符 ID。
:type ContentId: str
:param _Description: 内容标识符描述。
:type Description: str
:param _ReferenceCount: 被规则引擎引用的次数。
:type ReferenceCount: int
:param _PlanId: 绑定的套餐 ID。
:type PlanId: str
:param _Tags: 绑定的标签。
:type Tags: list of Tag
:param _Status: 内容标识符状态,取值有:
<li> active:已生效; </li>
<li> deleted:已删除。</li>
:type Status: str
:param _CreatedOn: 创建时间,时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type CreatedOn: str
:param _ModifiedOn: 最新一次更新时间,时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type ModifiedOn: str
:param _DeletedOn: 删除时间,状态非 deleted 时候为空;时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
注意:此字段可能返回 null,表示取不到有效值。
:type DeletedOn: str
"""
self._ContentId = None
self._Description = None
self._ReferenceCount = None
self._PlanId = None
self._Tags = None
self._Status = None
self._CreatedOn = None
self._ModifiedOn = None
self._DeletedOn = None
@property
def ContentId(self):
"""内容标识符 ID。
:rtype: str
"""
return self._ContentId
@ContentId.setter
def ContentId(self, ContentId):
self._ContentId = ContentId
@property
def Description(self):
"""内容标识符描述。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def ReferenceCount(self):
"""被规则引擎引用的次数。
:rtype: int
"""
return self._ReferenceCount
@ReferenceCount.setter
def ReferenceCount(self, ReferenceCount):
self._ReferenceCount = ReferenceCount
@property
def PlanId(self):
"""绑定的套餐 ID。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def Tags(self):
"""绑定的标签。
:rtype: list of Tag
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
@property
def Status(self):
"""内容标识符状态,取值有:
<li> active:已生效; </li>
<li> deleted:已删除。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def CreatedOn(self):
"""创建时间,时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._CreatedOn
@CreatedOn.setter
def CreatedOn(self, CreatedOn):
self._CreatedOn = CreatedOn
@property
def ModifiedOn(self):
"""最新一次更新时间,时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._ModifiedOn
@ModifiedOn.setter
def ModifiedOn(self, ModifiedOn):
self._ModifiedOn = ModifiedOn
@property
def DeletedOn(self):
"""删除时间,状态非 deleted 时候为空;时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._DeletedOn
@DeletedOn.setter
def DeletedOn(self, DeletedOn):
self._DeletedOn = DeletedOn
def _deserialize(self, params):
self._ContentId = params.get("ContentId")
self._Description = params.get("Description")
self._ReferenceCount = params.get("ReferenceCount")
self._PlanId = params.get("PlanId")
if params.get("Tags") is not None:
self._Tags = []
for item in params.get("Tags"):
obj = Tag()
obj._deserialize(item)
self._Tags.append(obj)
self._Status = params.get("Status")
self._CreatedOn = params.get("CreatedOn")
self._ModifiedOn = params.get("ModifiedOn")
self._DeletedOn = params.get("DeletedOn")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateAccelerationDomainRequest(AbstractModel):
"""CreateAccelerationDomain请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 加速域名所属站点 ID。
:type ZoneId: str
:param _DomainName: 加速域名。
:type DomainName: str
:param _OriginInfo: 源站信息。
:type OriginInfo: :class:`tencentcloud.teo.v20220901.models.OriginInfo`
:param _OriginProtocol: 回源协议,取值有:
<li>FOLLOW: 协议跟随;</li>
<li>HTTP: HTTP协议回源;</li>
<li>HTTPS: HTTPS协议回源。</li>
<li>不填默认为: FOLLOW。</li>
:type OriginProtocol: str
:param _HttpOriginPort: HTTP回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTP时生效, 不填默认为80。
:type HttpOriginPort: int
:param _HttpsOriginPort: HTTPS回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTPS时生效,不填默认为443。
:type HttpsOriginPort: int
:param _IPv6Status: IPv6状态,取值有:
<li>follow:遵循站点IPv6配置;</li>
<li>on:开启状态;</li>
<li>off:关闭状态。</li>
<li>不填默认为:follow。</li>
:type IPv6Status: str
"""
self._ZoneId = None
self._DomainName = None
self._OriginInfo = None
self._OriginProtocol = None
self._HttpOriginPort = None
self._HttpsOriginPort = None
self._IPv6Status = None
@property
def ZoneId(self):
"""加速域名所属站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def DomainName(self):
"""加速域名。
:rtype: str
"""
return self._DomainName
@DomainName.setter
def DomainName(self, DomainName):
self._DomainName = DomainName
@property
def OriginInfo(self):
"""源站信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.OriginInfo`
"""
return self._OriginInfo
@OriginInfo.setter
def OriginInfo(self, OriginInfo):
self._OriginInfo = OriginInfo
@property
def OriginProtocol(self):
"""回源协议,取值有:
<li>FOLLOW: 协议跟随;</li>
<li>HTTP: HTTP协议回源;</li>
<li>HTTPS: HTTPS协议回源。</li>
<li>不填默认为: FOLLOW。</li>
:rtype: str
"""
return self._OriginProtocol
@OriginProtocol.setter
def OriginProtocol(self, OriginProtocol):
self._OriginProtocol = OriginProtocol
@property
def HttpOriginPort(self):
"""HTTP回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTP时生效, 不填默认为80。
:rtype: int
"""
return self._HttpOriginPort
@HttpOriginPort.setter
def HttpOriginPort(self, HttpOriginPort):
self._HttpOriginPort = HttpOriginPort
@property
def HttpsOriginPort(self):
"""HTTPS回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTPS时生效,不填默认为443。
:rtype: int
"""
return self._HttpsOriginPort
@HttpsOriginPort.setter
def HttpsOriginPort(self, HttpsOriginPort):
self._HttpsOriginPort = HttpsOriginPort
@property
def IPv6Status(self):
"""IPv6状态,取值有:
<li>follow:遵循站点IPv6配置;</li>
<li>on:开启状态;</li>
<li>off:关闭状态。</li>
<li>不填默认为:follow。</li>
:rtype: str
"""
return self._IPv6Status
@IPv6Status.setter
def IPv6Status(self, IPv6Status):
self._IPv6Status = IPv6Status
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._DomainName = params.get("DomainName")
if params.get("OriginInfo") is not None:
self._OriginInfo = OriginInfo()
self._OriginInfo._deserialize(params.get("OriginInfo"))
self._OriginProtocol = params.get("OriginProtocol")
self._HttpOriginPort = params.get("HttpOriginPort")
self._HttpsOriginPort = params.get("HttpsOriginPort")
self._IPv6Status = params.get("IPv6Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateAccelerationDomainResponse(AbstractModel):
"""CreateAccelerationDomain返回参数结构体
"""
def __init__(self):
r"""
:param _OwnershipVerification: 当您的站点未进行归属权验证时,您可通过该参数返回的信息单独对域名进行归属权校验。详情参考 [站点/域名归属权验证](https://cloud.tencent.com/document/product/1552/70789)。
注意:此字段可能返回 null,表示取不到有效值。
:type OwnershipVerification: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._OwnershipVerification = None
self._RequestId = None
@property
def OwnershipVerification(self):
"""当您的站点未进行归属权验证时,您可通过该参数返回的信息单独对域名进行归属权校验。详情参考 [站点/域名归属权验证](https://cloud.tencent.com/document/product/1552/70789)。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
"""
return self._OwnershipVerification
@OwnershipVerification.setter
def OwnershipVerification(self, OwnershipVerification):
self._OwnershipVerification = OwnershipVerification
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("OwnershipVerification") is not None:
self._OwnershipVerification = OwnershipVerification()
self._OwnershipVerification._deserialize(params.get("OwnershipVerification"))
self._RequestId = params.get("RequestId")
class CreateAliasDomainRequest(AbstractModel):
"""CreateAliasDomain请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _AliasName: 别称域名名称。
:type AliasName: str
:param _TargetName: 目标域名名称。
:type TargetName: str
:param _CertType: 证书配置,取值有:
<li> none:不配置;</li>
<li> hosting:SSL托管证书。</li>默认取值为 none。
:type CertType: str
:param _CertId: 当 CertType 取值为 hosting 时需填入相应证书 ID。
:type CertId: list of str
"""
self._ZoneId = None
self._AliasName = None
self._TargetName = None
self._CertType = None
self._CertId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def AliasName(self):
"""别称域名名称。
:rtype: str
"""
return self._AliasName
@AliasName.setter
def AliasName(self, AliasName):
self._AliasName = AliasName
@property
def TargetName(self):
"""目标域名名称。
:rtype: str
"""
return self._TargetName
@TargetName.setter
def TargetName(self, TargetName):
self._TargetName = TargetName
@property
def CertType(self):
"""证书配置,取值有:
<li> none:不配置;</li>
<li> hosting:SSL托管证书。</li>默认取值为 none。
:rtype: str
"""
return self._CertType
@CertType.setter
def CertType(self, CertType):
self._CertType = CertType
@property
def CertId(self):
"""当 CertType 取值为 hosting 时需填入相应证书 ID。
:rtype: list of str
"""
return self._CertId
@CertId.setter
def CertId(self, CertId):
self._CertId = CertId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._AliasName = params.get("AliasName")
self._TargetName = params.get("TargetName")
self._CertType = params.get("CertType")
self._CertId = params.get("CertId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateAliasDomainResponse(AbstractModel):
"""CreateAliasDomain返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class CreateApplicationProxyRequest(AbstractModel):
"""CreateApplicationProxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyName: 当 ProxyType=hostname 时,表示域名或子域名;
当 ProxyType=instance 时,表示代理名称。
:type ProxyName: str
:param _PlatType: 调度模式,取值有:
<li>ip:表示Anycast IP调度;</li>
<li>domain:表示CNAME调度。</li>
:type PlatType: str
:param _SecurityType: 是否开启安全,取值有:
<li>0:关闭安全;</li>
<li>1:开启安全。</li>
:type SecurityType: int
:param _AccelerateType: 是否开启加速,取值有:
<li>0:关闭加速;</li>
<li>1:开启加速。</li>
:type AccelerateType: int
:param _ProxyType: 四层代理模式,取值有: <li>instance:表示实例模式。</li>不填写使用默认值instance。
:type ProxyType: str
:param _SessionPersistTime: 会话保持时间,取值范围:30-3600,单位:秒。
不填写使用默认值600。
:type SessionPersistTime: int
:param _Ipv6: Ipv6 访问配置。
不填写表示关闭 Ipv6 访问。
:type Ipv6: :class:`tencentcloud.teo.v20220901.models.Ipv6`
:param _ApplicationProxyRules: 规则详细信息。
不填写则不创建规则。
:type ApplicationProxyRules: list of ApplicationProxyRule
:param _AccelerateMainland: 中国大陆加速优化配置。不填写表示关闭中国大陆加速优化。
:type AccelerateMainland: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
self._ZoneId = None
self._ProxyName = None
self._PlatType = None
self._SecurityType = None
self._AccelerateType = None
self._ProxyType = None
self._SessionPersistTime = None
self._Ipv6 = None
self._ApplicationProxyRules = None
self._AccelerateMainland = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyName(self):
"""当 ProxyType=hostname 时,表示域名或子域名;
当 ProxyType=instance 时,表示代理名称。
:rtype: str
"""
return self._ProxyName
@ProxyName.setter
def ProxyName(self, ProxyName):
self._ProxyName = ProxyName
@property
def PlatType(self):
"""调度模式,取值有:
<li>ip:表示Anycast IP调度;</li>
<li>domain:表示CNAME调度。</li>
:rtype: str
"""
return self._PlatType
@PlatType.setter
def PlatType(self, PlatType):
self._PlatType = PlatType
@property
def SecurityType(self):
"""是否开启安全,取值有:
<li>0:关闭安全;</li>
<li>1:开启安全。</li>
:rtype: int
"""
return self._SecurityType
@SecurityType.setter
def SecurityType(self, SecurityType):
self._SecurityType = SecurityType
@property
def AccelerateType(self):
"""是否开启加速,取值有:
<li>0:关闭加速;</li>
<li>1:开启加速。</li>
:rtype: int
"""
return self._AccelerateType
@AccelerateType.setter
def AccelerateType(self, AccelerateType):
self._AccelerateType = AccelerateType
@property
def ProxyType(self):
"""四层代理模式,取值有: <li>instance:表示实例模式。</li>不填写使用默认值instance。
:rtype: str
"""
return self._ProxyType
@ProxyType.setter
def ProxyType(self, ProxyType):
self._ProxyType = ProxyType
@property
def SessionPersistTime(self):
"""会话保持时间,取值范围:30-3600,单位:秒。
不填写使用默认值600。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def Ipv6(self):
"""Ipv6 访问配置。
不填写表示关闭 Ipv6 访问。
:rtype: :class:`tencentcloud.teo.v20220901.models.Ipv6`
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def ApplicationProxyRules(self):
"""规则详细信息。
不填写则不创建规则。
:rtype: list of ApplicationProxyRule
"""
return self._ApplicationProxyRules
@ApplicationProxyRules.setter
def ApplicationProxyRules(self, ApplicationProxyRules):
self._ApplicationProxyRules = ApplicationProxyRules
@property
def AccelerateMainland(self):
"""中国大陆加速优化配置。不填写表示关闭中国大陆加速优化。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyName = params.get("ProxyName")
self._PlatType = params.get("PlatType")
self._SecurityType = params.get("SecurityType")
self._AccelerateType = params.get("AccelerateType")
self._ProxyType = params.get("ProxyType")
self._SessionPersistTime = params.get("SessionPersistTime")
if params.get("Ipv6") is not None:
self._Ipv6 = Ipv6()
self._Ipv6._deserialize(params.get("Ipv6"))
if params.get("ApplicationProxyRules") is not None:
self._ApplicationProxyRules = []
for item in params.get("ApplicationProxyRules"):
obj = ApplicationProxyRule()
obj._deserialize(item)
self._ApplicationProxyRules.append(obj)
if params.get("AccelerateMainland") is not None:
self._AccelerateMainland = AccelerateMainland()
self._AccelerateMainland._deserialize(params.get("AccelerateMainland"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateApplicationProxyResponse(AbstractModel):
"""CreateApplicationProxy返回参数结构体
"""
def __init__(self):
r"""
:param _ProxyId: 新增的四层代理应用ID。
:type ProxyId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ProxyId = None
self._RequestId = None
@property
def ProxyId(self):
"""新增的四层代理应用ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._ProxyId = params.get("ProxyId")
self._RequestId = params.get("RequestId")
class CreateApplicationProxyRuleRequest(AbstractModel):
"""CreateApplicationProxyRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ProxyId: 代理ID。
:type ProxyId: str
:param _Proto: 协议,取值有:
<li>TCP:TCP协议;</li>
<li>UDP:UDP协议。</li>
:type Proto: str
:param _Port: 端口,支持格式:
<li>80:80端口;</li>
<li>81-90:81至90端口。</li>
:type Port: list of str
:param _OriginType: 源站类型,取值有:
<li>custom:手动添加;</li>
<li>loadbalancer:负载均衡;</li>
<li>origins:源站组。</li>
:type OriginType: str
:param _OriginValue: 源站信息:
<li>当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;</li>
<li>当 OriginType 为 loadbalancer 时,表示一个负载均衡,如`["lb-xdffsfasdfs"]`;</li>
<li>当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。</li>
:type OriginValue: list of str
:param _ForwardClientIp: 传递客户端IP,取值有:
<li>TOA:TOA(仅Proto=TCP时可选);</li>
<li>PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);</li>
<li>PPV2:Proxy Protocol传递,协议版本V2;</li>
<li>OFF:不传递。</li>默认值:OFF。
:type ForwardClientIp: str
:param _SessionPersist: 是否开启会话保持,取值有:
<li>true:开启;</li>
<li>false:关闭。</li>默认值:false。
:type SessionPersist: bool
:param _SessionPersistTime: 会话保持的时间,只有当SessionPersist为true时,该值才会生效。
:type SessionPersistTime: int
:param _OriginPort: 源站端口,支持格式:
<li>单端口:80;</li>
<li>端口段:81-90,81至90端口。</li>
:type OriginPort: str
:param _RuleTag: 规则标签。默认值为空字符串。
:type RuleTag: str
"""
self._ZoneId = None
self._ProxyId = None
self._Proto = None
self._Port = None
self._OriginType = None
self._OriginValue = None
self._ForwardClientIp = None
self._SessionPersist = None
self._SessionPersistTime = None
self._OriginPort = None
self._RuleTag = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def Proto(self):
"""协议,取值有:
<li>TCP:TCP协议;</li>
<li>UDP:UDP协议。</li>
:rtype: str
"""
return self._Proto
@Proto.setter
def Proto(self, Proto):
self._Proto = Proto
@property
def Port(self):
"""端口,支持格式:
<li>80:80端口;</li>
<li>81-90:81至90端口。</li>
:rtype: list of str
"""
return self._Port
@Port.setter
def Port(self, Port):
self._Port = Port
@property
def OriginType(self):
"""源站类型,取值有:
<li>custom:手动添加;</li>
<li>loadbalancer:负载均衡;</li>
<li>origins:源站组。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def OriginValue(self):
"""源站信息:
<li>当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;</li>
<li>当 OriginType 为 loadbalancer 时,表示一个负载均衡,如`["lb-xdffsfasdfs"]`;</li>
<li>当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。</li>
:rtype: list of str
"""
return self._OriginValue
@OriginValue.setter
def OriginValue(self, OriginValue):
self._OriginValue = OriginValue
@property
def ForwardClientIp(self):
"""传递客户端IP,取值有:
<li>TOA:TOA(仅Proto=TCP时可选);</li>
<li>PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);</li>
<li>PPV2:Proxy Protocol传递,协议版本V2;</li>
<li>OFF:不传递。</li>默认值:OFF。
:rtype: str
"""
return self._ForwardClientIp
@ForwardClientIp.setter
def ForwardClientIp(self, ForwardClientIp):
self._ForwardClientIp = ForwardClientIp
@property
def SessionPersist(self):
"""是否开启会话保持,取值有:
<li>true:开启;</li>
<li>false:关闭。</li>默认值:false。
:rtype: bool
"""
return self._SessionPersist
@SessionPersist.setter
def SessionPersist(self, SessionPersist):
self._SessionPersist = SessionPersist
@property
def SessionPersistTime(self):
"""会话保持的时间,只有当SessionPersist为true时,该值才会生效。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def OriginPort(self):
"""源站端口,支持格式:
<li>单端口:80;</li>
<li>端口段:81-90,81至90端口。</li>
:rtype: str
"""
return self._OriginPort
@OriginPort.setter
def OriginPort(self, OriginPort):
self._OriginPort = OriginPort
@property
def RuleTag(self):
"""规则标签。默认值为空字符串。
:rtype: str
"""
return self._RuleTag
@RuleTag.setter
def RuleTag(self, RuleTag):
self._RuleTag = RuleTag
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._Proto = params.get("Proto")
self._Port = params.get("Port")
self._OriginType = params.get("OriginType")
self._OriginValue = params.get("OriginValue")
self._ForwardClientIp = params.get("ForwardClientIp")
self._SessionPersist = params.get("SessionPersist")
self._SessionPersistTime = params.get("SessionPersistTime")
self._OriginPort = params.get("OriginPort")
self._RuleTag = params.get("RuleTag")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateApplicationProxyRuleResponse(AbstractModel):
"""CreateApplicationProxyRule返回参数结构体
"""
def __init__(self):
r"""
:param _RuleId: 规则ID
:type RuleId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RuleId = None
self._RequestId = None
@property
def RuleId(self):
"""规则ID
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
self._RequestId = params.get("RequestId")
class CreateCLSIndexRequest(AbstractModel):
"""CreateCLSIndex请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _TaskId: 实时日志投递任务 ID。
:type TaskId: str
"""
self._ZoneId = None
self._TaskId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TaskId(self):
"""实时日志投递任务 ID。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._TaskId = params.get("TaskId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateCLSIndexResponse(AbstractModel):
"""CreateCLSIndex返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class CreateConfigGroupVersionRequest(AbstractModel):
"""CreateConfigGroupVersion请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _GroupId: 待新建版本的配置组 ID。
:type GroupId: str
:param _Content: 待导入的配置内容。要求采用 JSON 格式,按照 UTF-8 方式进行编码。配置文件内容可参考下方示例。
:type Content: str
:param _Description: 版本描述,可输入最大长度为 50 个字符,可以通过本字段填写该版本的使用场景等。
:type Description: str
"""
self._ZoneId = None
self._GroupId = None
self._Content = None
self._Description = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def GroupId(self):
"""待新建版本的配置组 ID。
:rtype: str
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def Content(self):
"""待导入的配置内容。要求采用 JSON 格式,按照 UTF-8 方式进行编码。配置文件内容可参考下方示例。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def Description(self):
"""版本描述,可输入最大长度为 50 个字符,可以通过本字段填写该版本的使用场景等。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._GroupId = params.get("GroupId")
self._Content = params.get("Content")
self._Description = params.get("Description")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateConfigGroupVersionResponse(AbstractModel):
"""CreateConfigGroupVersion返回参数结构体
"""
def __init__(self):
r"""
:param _VersionId: 版本 ID。
:type VersionId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._VersionId = None
self._RequestId = None
@property
def VersionId(self):
"""版本 ID。
:rtype: str
"""
return self._VersionId
@VersionId.setter
def VersionId(self, VersionId):
self._VersionId = VersionId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._VersionId = params.get("VersionId")
self._RequestId = params.get("RequestId")
class CreateContentIdentifierRequest(AbstractModel):
"""CreateContentIdentifier请求参数结构体
"""
def __init__(self):
r"""
:param _Description: 内容标识符的描述,长度限制不超过 20 个字符。
:type Description: str
:param _PlanId: 待绑定的目标套餐 ID,仅限企业版可用。<li>当您账号下已存在套餐时,需要先前往 [套餐管理](https://console.cloud.tencent.com/edgeone/package) 获取套餐 ID,直接将内容标识符绑定至该套餐;</li><li>若您当前没有可绑定的套餐时,请先购买企业版套餐。</li>
:type PlanId: str
:param _Tags: 标签。该参数用于对内容标识符进行分权限管控。您需要先前往 [标签控制台](https://console.cloud.tencent.com/tag/taglist) 创建标签才可以在此处传入对应的标签键和标签值。
:type Tags: list of Tag
"""
self._Description = None
self._PlanId = None
self._Tags = None
@property
def Description(self):
"""内容标识符的描述,长度限制不超过 20 个字符。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def PlanId(self):
"""待绑定的目标套餐 ID,仅限企业版可用。<li>当您账号下已存在套餐时,需要先前往 [套餐管理](https://console.cloud.tencent.com/edgeone/package) 获取套餐 ID,直接将内容标识符绑定至该套餐;</li><li>若您当前没有可绑定的套餐时,请先购买企业版套餐。</li>
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def Tags(self):
"""标签。该参数用于对内容标识符进行分权限管控。您需要先前往 [标签控制台](https://console.cloud.tencent.com/tag/taglist) 创建标签才可以在此处传入对应的标签键和标签值。
:rtype: list of Tag
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
def _deserialize(self, params):
self._Description = params.get("Description")
self._PlanId = params.get("PlanId")
if params.get("Tags") is not None:
self._Tags = []
for item in params.get("Tags"):
obj = Tag()
obj._deserialize(item)
self._Tags.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateContentIdentifierResponse(AbstractModel):
"""CreateContentIdentifier返回参数结构体
"""
def __init__(self):
r"""
:param _ContentId: 生成的内容标识符 ID。创建完成之后您可以前往规则引擎在一定匹配条件下「设置内容标识符」。
:type ContentId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ContentId = None
self._RequestId = None
@property
def ContentId(self):
"""生成的内容标识符 ID。创建完成之后您可以前往规则引擎在一定匹配条件下「设置内容标识符」。
:rtype: str
"""
return self._ContentId
@ContentId.setter
def ContentId(self, ContentId):
self._ContentId = ContentId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._ContentId = params.get("ContentId")
self._RequestId = params.get("RequestId")
class CreateCustomizeErrorPageRequest(AbstractModel):
"""CreateCustomizeErrorPage请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: 自定义错误页名称,名称为 2-30 个字符。
:type Name: str
:param _ContentType: 自定义错误页面类型,取值有:<li>text/html; </li><li>application/json;</li><li>text/plain;</li><li>text/xml。</li>
:type ContentType: str
:param _Description: 自定义错误页面描述,描述不超过 60 个字符。
:type Description: str
:param _Content: 自定义错误页面内容,内容不超过 2KB。
:type Content: str
"""
self._ZoneId = None
self._Name = None
self._ContentType = None
self._Description = None
self._Content = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""自定义错误页名称,名称为 2-30 个字符。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def ContentType(self):
"""自定义错误页面类型,取值有:<li>text/html; </li><li>application/json;</li><li>text/plain;</li><li>text/xml。</li>
:rtype: str
"""
return self._ContentType
@ContentType.setter
def ContentType(self, ContentType):
self._ContentType = ContentType
@property
def Description(self):
"""自定义错误页面描述,描述不超过 60 个字符。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def Content(self):
"""自定义错误页面内容,内容不超过 2KB。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._ContentType = params.get("ContentType")
self._Description = params.get("Description")
self._Content = params.get("Content")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateCustomizeErrorPageResponse(AbstractModel):
"""CreateCustomizeErrorPage返回参数结构体
"""
def __init__(self):
r"""
:param _PageId: 页面 ID。
:type PageId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._PageId = None
self._RequestId = None
@property
def PageId(self):
"""页面 ID。
:rtype: str
"""
return self._PageId
@PageId.setter
def PageId(self, PageId):
self._PageId = PageId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._PageId = params.get("PageId")
self._RequestId = params.get("RequestId")
class CreateDnsRecordRequest(AbstractModel):
"""CreateDnsRecord请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: DNS 记录名,如果是中文、韩文、日文域名,需要转换为 punycode 后输入。
:type Name: str
:param _Type: DNS 记录类型,取值有:<li>A:将域名指向一个外网 IPv4 地址,如 8.8.8.8;</li><li>AAAA:将域名指向一个外网 IPv6 地址;</li><li>MX:用于邮箱服务器。存在多条 MX 记录时,优先级越低越优先;</li><li>CNAME:将域名指向另一个域名,再由该域名解析出最终 IP 地址;</li><li>TXT:对域名进行标识和说明,常用于域名验证和 SPF 记录(反垃圾邮件);</li><li>NS:如果需要将子域名交给其他 DNS 服务商解析,则需要添加 NS 记录。根域名无法添加 NS 记录;</li><li>CAA:指定可为本站点颁发证书的 CA;</li><li>SRV:标识某台服务器使用了某个服务,常见于微软系统的目录管理。</li>
不同的记录类型呢例如 SRV、CAA 记录对主机记录名称、记录值格式有不同的要求,各记录类型的详细说明介绍和格式示例请参考:[解析记录类型介绍](https://cloud.tencent.com/document/product/1552/90453#2f681022-91ab-4a9e-ac3d-0a6c454d954e)。
:type Type: str
:param _Content: DNS 记录内容,根据 Type 值填入与之相对应的内容,如果是中文、韩文、日文域名,需要转换为 punycode 后输入。
:type Content: str
:param _Location: DNS 记录解析线路,不指定默认为 Default,表示默认解析线路,代表全部地域生效。
- 解析线路配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。
- 解析线路配置仅适用于标准版、企业版套餐使用,取值请参考:[解析线路及对应代码枚举](https://cloud.tencent.com/document/product/1552/112542)。
:type Location: str
:param _TTL: 缓存时间,用户可指定值范围 60~86400,数值越小,修改记录各地生效时间越快,默认为 300,单位:秒。
:type TTL: int
:param _Weight: DNS 记录权重,用户可指定值范围 -1~100,设置为 0 时表示不解析,不指定默认为 -1,表示不设置权重。权重配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。<br>注意:同一个子域名下,相同解析线路的不同 DNS 记录,应保持同时设置权重或者同时都不设置权重。
:type Weight: int
:param _Priority: MX 记录优先级,该参数仅在当 Type(DNS 记录类型)为 MX 时生效,值越小优先级越高,用户可指定值范围0~50,不指定默认为0。
:type Priority: int
"""
self._ZoneId = None
self._Name = None
self._Type = None
self._Content = None
self._Location = None
self._TTL = None
self._Weight = None
self._Priority = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""DNS 记录名,如果是中文、韩文、日文域名,需要转换为 punycode 后输入。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""DNS 记录类型,取值有:<li>A:将域名指向一个外网 IPv4 地址,如 8.8.8.8;</li><li>AAAA:将域名指向一个外网 IPv6 地址;</li><li>MX:用于邮箱服务器。存在多条 MX 记录时,优先级越低越优先;</li><li>CNAME:将域名指向另一个域名,再由该域名解析出最终 IP 地址;</li><li>TXT:对域名进行标识和说明,常用于域名验证和 SPF 记录(反垃圾邮件);</li><li>NS:如果需要将子域名交给其他 DNS 服务商解析,则需要添加 NS 记录。根域名无法添加 NS 记录;</li><li>CAA:指定可为本站点颁发证书的 CA;</li><li>SRV:标识某台服务器使用了某个服务,常见于微软系统的目录管理。</li>
不同的记录类型呢例如 SRV、CAA 记录对主机记录名称、记录值格式有不同的要求,各记录类型的详细说明介绍和格式示例请参考:[解析记录类型介绍](https://cloud.tencent.com/document/product/1552/90453#2f681022-91ab-4a9e-ac3d-0a6c454d954e)。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Content(self):
"""DNS 记录内容,根据 Type 值填入与之相对应的内容,如果是中文、韩文、日文域名,需要转换为 punycode 后输入。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def Location(self):
"""DNS 记录解析线路,不指定默认为 Default,表示默认解析线路,代表全部地域生效。
- 解析线路配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。
- 解析线路配置仅适用于标准版、企业版套餐使用,取值请参考:[解析线路及对应代码枚举](https://cloud.tencent.com/document/product/1552/112542)。
:rtype: str
"""
return self._Location
@Location.setter
def Location(self, Location):
self._Location = Location
@property
def TTL(self):
"""缓存时间,用户可指定值范围 60~86400,数值越小,修改记录各地生效时间越快,默认为 300,单位:秒。
:rtype: int
"""
return self._TTL
@TTL.setter
def TTL(self, TTL):
self._TTL = TTL
@property
def Weight(self):
"""DNS 记录权重,用户可指定值范围 -1~100,设置为 0 时表示不解析,不指定默认为 -1,表示不设置权重。权重配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。<br>注意:同一个子域名下,相同解析线路的不同 DNS 记录,应保持同时设置权重或者同时都不设置权重。
:rtype: int
"""
return self._Weight
@Weight.setter
def Weight(self, Weight):
self._Weight = Weight
@property
def Priority(self):
"""MX 记录优先级,该参数仅在当 Type(DNS 记录类型)为 MX 时生效,值越小优先级越高,用户可指定值范围0~50,不指定默认为0。
:rtype: int
"""
return self._Priority
@Priority.setter
def Priority(self, Priority):
self._Priority = Priority
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._Type = params.get("Type")
self._Content = params.get("Content")
self._Location = params.get("Location")
self._TTL = params.get("TTL")
self._Weight = params.get("Weight")
self._Priority = params.get("Priority")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateDnsRecordResponse(AbstractModel):
"""CreateDnsRecord返回参数结构体
"""
def __init__(self):
r"""
:param _RecordId: DNS 记录 ID。
:type RecordId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RecordId = None
self._RequestId = None
@property
def RecordId(self):
"""DNS 记录 ID。
:rtype: str
"""
return self._RecordId
@RecordId.setter
def RecordId(self, RecordId):
self._RecordId = RecordId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RecordId = params.get("RecordId")
self._RequestId = params.get("RequestId")
class CreateFunctionRequest(AbstractModel):
"""CreateFunction请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: 函数名称,只能包含小写字母、数字、连字符,以数字或字母开头,以数字或字母结尾,最大支持 30 个字符。
:type Name: str
:param _Content: 函数内容,当前仅支持 JavaScript 代码,最大支持 5MB 大小。
:type Content: str
:param _Remark: 函数描述,最大支持 60 个字符。
:type Remark: str
"""
self._ZoneId = None
self._Name = None
self._Content = None
self._Remark = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""函数名称,只能包含小写字母、数字、连字符,以数字或字母开头,以数字或字母结尾,最大支持 30 个字符。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Content(self):
"""函数内容,当前仅支持 JavaScript 代码,最大支持 5MB 大小。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def Remark(self):
"""函数描述,最大支持 60 个字符。
:rtype: str
"""
return self._Remark
@Remark.setter
def Remark(self, Remark):
self._Remark = Remark
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._Content = params.get("Content")
self._Remark = params.get("Remark")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateFunctionResponse(AbstractModel):
"""CreateFunction返回参数结构体
"""
def __init__(self):
r"""
:param _FunctionId: 函数 ID。
:type FunctionId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._FunctionId = None
self._RequestId = None
@property
def FunctionId(self):
"""函数 ID。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._FunctionId = params.get("FunctionId")
self._RequestId = params.get("RequestId")
class CreateFunctionRuleRequest(AbstractModel):
"""CreateFunctionRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _FunctionRuleConditions: 规则条件列表,相同触发规则的不同条件匹配项之间为或关系。
:type FunctionRuleConditions: list of FunctionRuleCondition
:param _FunctionId: 函数 ID,命中触发规则条件后执行的函数。
:type FunctionId: str
:param _Remark: 规则描述,最大支持 60 个字符。
:type Remark: str
"""
self._ZoneId = None
self._FunctionRuleConditions = None
self._FunctionId = None
self._Remark = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def FunctionRuleConditions(self):
"""规则条件列表,相同触发规则的不同条件匹配项之间为或关系。
:rtype: list of FunctionRuleCondition
"""
return self._FunctionRuleConditions
@FunctionRuleConditions.setter
def FunctionRuleConditions(self, FunctionRuleConditions):
self._FunctionRuleConditions = FunctionRuleConditions
@property
def FunctionId(self):
"""函数 ID,命中触发规则条件后执行的函数。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def Remark(self):
"""规则描述,最大支持 60 个字符。
:rtype: str
"""
return self._Remark
@Remark.setter
def Remark(self, Remark):
self._Remark = Remark
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("FunctionRuleConditions") is not None:
self._FunctionRuleConditions = []
for item in params.get("FunctionRuleConditions"):
obj = FunctionRuleCondition()
obj._deserialize(item)
self._FunctionRuleConditions.append(obj)
self._FunctionId = params.get("FunctionId")
self._Remark = params.get("Remark")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateFunctionRuleResponse(AbstractModel):
"""CreateFunctionRule返回参数结构体
"""
def __init__(self):
r"""
:param _RuleId: 规则 ID。
:type RuleId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RuleId = None
self._RequestId = None
@property
def RuleId(self):
"""规则 ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
self._RequestId = params.get("RequestId")
class CreateL4ProxyRequest(AbstractModel):
"""CreateL4Proxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyName: 四层代理实例名称,可输入 1-50 个字符,允许的字符为 a-z、0-9、-,且 - 不能单独注册或连续使用,不能放在开头或结尾。创建完成后不支持修改。
:type ProxyName: str
:param _Area: 四层代理实例加速区域。
<li>mainland:中国大陆可用区;</li>
<li>overseas:全球可用区(不含中国大陆);</li>
<li>global:全球可用区。</li>
:type Area: str
:param _Ipv6: 是否开启 IPv6 访问,不填写时默认为 off。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Ipv6: str
:param _StaticIp: 是否开启固定 IP,不填写时默认为 off。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:type StaticIp: str
:param _AccelerateMainland: 是否开启中国大陆网络优化,不填写时默认为 off。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:type AccelerateMainland: str
:param _DDosProtectionConfig: L3/L4 DDoS 防护配置,不填写时默认使用平台默认防护选项。详情参考 [独立 DDoS 防护](https://cloud.tencent.com/document/product/1552/95994)。
:type DDosProtectionConfig: :class:`tencentcloud.teo.v20220901.models.DDosProtectionConfig`
"""
self._ZoneId = None
self._ProxyName = None
self._Area = None
self._Ipv6 = None
self._StaticIp = None
self._AccelerateMainland = None
self._DDosProtectionConfig = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyName(self):
"""四层代理实例名称,可输入 1-50 个字符,允许的字符为 a-z、0-9、-,且 - 不能单独注册或连续使用,不能放在开头或结尾。创建完成后不支持修改。
:rtype: str
"""
return self._ProxyName
@ProxyName.setter
def ProxyName(self, ProxyName):
self._ProxyName = ProxyName
@property
def Area(self):
"""四层代理实例加速区域。
<li>mainland:中国大陆可用区;</li>
<li>overseas:全球可用区(不含中国大陆);</li>
<li>global:全球可用区。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def Ipv6(self):
"""是否开启 IPv6 访问,不填写时默认为 off。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def StaticIp(self):
"""是否开启固定 IP,不填写时默认为 off。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._StaticIp
@StaticIp.setter
def StaticIp(self, StaticIp):
self._StaticIp = StaticIp
@property
def AccelerateMainland(self):
"""是否开启中国大陆网络优化,不填写时默认为 off。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
@property
def DDosProtectionConfig(self):
"""L3/L4 DDoS 防护配置,不填写时默认使用平台默认防护选项。详情参考 [独立 DDoS 防护](https://cloud.tencent.com/document/product/1552/95994)。
:rtype: :class:`tencentcloud.teo.v20220901.models.DDosProtectionConfig`
"""
return self._DDosProtectionConfig
@DDosProtectionConfig.setter
def DDosProtectionConfig(self, DDosProtectionConfig):
self._DDosProtectionConfig = DDosProtectionConfig
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyName = params.get("ProxyName")
self._Area = params.get("Area")
self._Ipv6 = params.get("Ipv6")
self._StaticIp = params.get("StaticIp")
self._AccelerateMainland = params.get("AccelerateMainland")
if params.get("DDosProtectionConfig") is not None:
self._DDosProtectionConfig = DDosProtectionConfig()
self._DDosProtectionConfig._deserialize(params.get("DDosProtectionConfig"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateL4ProxyResponse(AbstractModel):
"""CreateL4Proxy返回参数结构体
"""
def __init__(self):
r"""
:param _ProxyId: 四层实例 ID。
:type ProxyId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ProxyId = None
self._RequestId = None
@property
def ProxyId(self):
"""四层实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._ProxyId = params.get("ProxyId")
self._RequestId = params.get("RequestId")
class CreateL4ProxyRulesRequest(AbstractModel):
"""CreateL4ProxyRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _L4ProxyRules: 转发规则列表。单次最多支持 200 条转发规则。
注意:L4ProxyRule 在此处使用时,Protocol、PortRange、OriginType、OriginValue、OriginPortRange 为必填字段;ClientIPPassThroughMode、SessionPersist、SessionPersistTime、RuleTag 均为选填字段;RuleId、Status 请勿填写。
:type L4ProxyRules: list of L4ProxyRule
"""
self._ZoneId = None
self._ProxyId = None
self._L4ProxyRules = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def L4ProxyRules(self):
"""转发规则列表。单次最多支持 200 条转发规则。
注意:L4ProxyRule 在此处使用时,Protocol、PortRange、OriginType、OriginValue、OriginPortRange 为必填字段;ClientIPPassThroughMode、SessionPersist、SessionPersistTime、RuleTag 均为选填字段;RuleId、Status 请勿填写。
:rtype: list of L4ProxyRule
"""
return self._L4ProxyRules
@L4ProxyRules.setter
def L4ProxyRules(self, L4ProxyRules):
self._L4ProxyRules = L4ProxyRules
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
if params.get("L4ProxyRules") is not None:
self._L4ProxyRules = []
for item in params.get("L4ProxyRules"):
obj = L4ProxyRule()
obj._deserialize(item)
self._L4ProxyRules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateL4ProxyRulesResponse(AbstractModel):
"""CreateL4ProxyRules返回参数结构体
"""
def __init__(self):
r"""
:param _L4ProxyRuleIds: 新增转发规则的 ID,以数组的形式返回。
:type L4ProxyRuleIds: list of str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._L4ProxyRuleIds = None
self._RequestId = None
@property
def L4ProxyRuleIds(self):
"""新增转发规则的 ID,以数组的形式返回。
:rtype: list of str
"""
return self._L4ProxyRuleIds
@L4ProxyRuleIds.setter
def L4ProxyRuleIds(self, L4ProxyRuleIds):
self._L4ProxyRuleIds = L4ProxyRuleIds
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._L4ProxyRuleIds = params.get("L4ProxyRuleIds")
self._RequestId = params.get("RequestId")
class CreateL7AccRulesRequest(AbstractModel):
"""CreateL7AccRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Rules: 规则内容。
:type Rules: list of RuleEngineItem
"""
self._ZoneId = None
self._Rules = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Rules(self):
"""规则内容。
:rtype: list of RuleEngineItem
"""
return self._Rules
@Rules.setter
def Rules(self, Rules):
self._Rules = Rules
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Rules") is not None:
self._Rules = []
for item in params.get("Rules"):
obj = RuleEngineItem()
obj._deserialize(item)
self._Rules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateL7AccRulesResponse(AbstractModel):
"""CreateL7AccRules返回参数结构体
"""
def __init__(self):
r"""
:param _RuleIds: 规则 ID 列表。
:type RuleIds: list of str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RuleIds = None
self._RequestId = None
@property
def RuleIds(self):
"""规则 ID 列表。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RuleIds = params.get("RuleIds")
self._RequestId = params.get("RequestId")
class CreateLoadBalancerRequest(AbstractModel):
"""CreateLoadBalancer请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: 实例名称,可输入 1-200 个字符,允许字符为 a-z,A-Z,0-9,_,-。
:type Name: str
:param _Type: 实例类型,取值有:
<li>HTTP:HTTP 专用型,支持添加 HTTP 专用型和通用型源站组,仅支持被站点加速相关服务引用(如域名服务和规则引擎);</li>
<li>GENERAL:通用型,仅支持添加通用型源站组,能被站点加速服务(如域名服务和规则引擎)和四层代理引用。</li>
:type Type: str
:param _OriginGroups: 源站组列表及其对应的容灾调度优先级。详情请参考 [快速创建负载均衡实例](https://cloud.tencent.com/document/product/1552/104223) 中的示例场景。
:type OriginGroups: list of OriginGroupInLoadBalancer
:param _HealthChecker: 健康检查策略。详情请参考 [健康检查策略介绍](https://cloud.tencent.com/document/product/1552/104228)。不填写时,默认为不启用健康检查。
:type HealthChecker: :class:`tencentcloud.teo.v20220901.models.HealthChecker`
:param _SteeringPolicy: 源站组间的流量调度策略,取值有:
<li>Pritory:按优先级顺序进行故障转移。</li>默认值为 Pritory。
:type SteeringPolicy: str
:param _FailoverPolicy: 实际访问某源站失败时的请求重试策略,详情请参考 [请求重试策略介绍](https://cloud.tencent.com/document/product/1552/104227),取值有:
<li>OtherOriginGroup:单次请求失败后,请求优先重试下一优先级源站组;</li>
<li>OtherRecordInOriginGroup:单次请求失败后,请求优先重试同源站组内的其他源站。</li>默认值为 OtherRecordInOriginGroup。
:type FailoverPolicy: str
"""
self._ZoneId = None
self._Name = None
self._Type = None
self._OriginGroups = None
self._HealthChecker = None
self._SteeringPolicy = None
self._FailoverPolicy = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""实例名称,可输入 1-200 个字符,允许字符为 a-z,A-Z,0-9,_,-。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""实例类型,取值有:
<li>HTTP:HTTP 专用型,支持添加 HTTP 专用型和通用型源站组,仅支持被站点加速相关服务引用(如域名服务和规则引擎);</li>
<li>GENERAL:通用型,仅支持添加通用型源站组,能被站点加速服务(如域名服务和规则引擎)和四层代理引用。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def OriginGroups(self):
"""源站组列表及其对应的容灾调度优先级。详情请参考 [快速创建负载均衡实例](https://cloud.tencent.com/document/product/1552/104223) 中的示例场景。
:rtype: list of OriginGroupInLoadBalancer
"""
return self._OriginGroups
@OriginGroups.setter
def OriginGroups(self, OriginGroups):
self._OriginGroups = OriginGroups
@property
def HealthChecker(self):
"""健康检查策略。详情请参考 [健康检查策略介绍](https://cloud.tencent.com/document/product/1552/104228)。不填写时,默认为不启用健康检查。
:rtype: :class:`tencentcloud.teo.v20220901.models.HealthChecker`
"""
return self._HealthChecker
@HealthChecker.setter
def HealthChecker(self, HealthChecker):
self._HealthChecker = HealthChecker
@property
def SteeringPolicy(self):
"""源站组间的流量调度策略,取值有:
<li>Pritory:按优先级顺序进行故障转移。</li>默认值为 Pritory。
:rtype: str
"""
return self._SteeringPolicy
@SteeringPolicy.setter
def SteeringPolicy(self, SteeringPolicy):
self._SteeringPolicy = SteeringPolicy
@property
def FailoverPolicy(self):
"""实际访问某源站失败时的请求重试策略,详情请参考 [请求重试策略介绍](https://cloud.tencent.com/document/product/1552/104227),取值有:
<li>OtherOriginGroup:单次请求失败后,请求优先重试下一优先级源站组;</li>
<li>OtherRecordInOriginGroup:单次请求失败后,请求优先重试同源站组内的其他源站。</li>默认值为 OtherRecordInOriginGroup。
:rtype: str
"""
return self._FailoverPolicy
@FailoverPolicy.setter
def FailoverPolicy(self, FailoverPolicy):
self._FailoverPolicy = FailoverPolicy
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._Type = params.get("Type")
if params.get("OriginGroups") is not None:
self._OriginGroups = []
for item in params.get("OriginGroups"):
obj = OriginGroupInLoadBalancer()
obj._deserialize(item)
self._OriginGroups.append(obj)
if params.get("HealthChecker") is not None:
self._HealthChecker = HealthChecker()
self._HealthChecker._deserialize(params.get("HealthChecker"))
self._SteeringPolicy = params.get("SteeringPolicy")
self._FailoverPolicy = params.get("FailoverPolicy")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateLoadBalancerResponse(AbstractModel):
"""CreateLoadBalancer返回参数结构体
"""
def __init__(self):
r"""
:param _InstanceId: 负载均衡实例 ID。
:type InstanceId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._InstanceId = None
self._RequestId = None
@property
def InstanceId(self):
"""负载均衡实例 ID。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._InstanceId = params.get("InstanceId")
self._RequestId = params.get("RequestId")
class CreateOriginGroupRequest(AbstractModel):
"""CreateOriginGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID
:type ZoneId: str
:param _Name: 源站组名称,可输入1 - 200个字符,允许的字符为 a - z, A - Z, 0 - 9, _, - 。
:type Name: str
:param _Type: 源站组类型,此参数必填,取值有:
<li>GENERAL:通用型源站组,仅支持添加 IP/域名 源站,可以被域名服务、规则引擎、四层代理、通用型负载均衡、HTTP 专用型负载均衡引用;</li>
<li>HTTP: HTTP 专用型源站组,支持添加 IP/域名、对象存储源站作为源站,无法被四层代理引用,仅支持被添加加速域名、规则引擎-修改源站、HTTP 专用型负载均衡引用。</li>
:type Type: str
:param _Records: 源站记录信息,此参数必填。
:type Records: list of OriginRecord
:param _HostHeader: 回源 Host Header,仅 Type = HTTP 时传入生效,规则引擎修改 Host Header 配置优先级高于源站组的 Host Header。
:type HostHeader: str
"""
self._ZoneId = None
self._Name = None
self._Type = None
self._Records = None
self._HostHeader = None
@property
def ZoneId(self):
"""站点 ID
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""源站组名称,可输入1 - 200个字符,允许的字符为 a - z, A - Z, 0 - 9, _, - 。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""源站组类型,此参数必填,取值有:
<li>GENERAL:通用型源站组,仅支持添加 IP/域名 源站,可以被域名服务、规则引擎、四层代理、通用型负载均衡、HTTP 专用型负载均衡引用;</li>
<li>HTTP: HTTP 专用型源站组,支持添加 IP/域名、对象存储源站作为源站,无法被四层代理引用,仅支持被添加加速域名、规则引擎-修改源站、HTTP 专用型负载均衡引用。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Records(self):
"""源站记录信息,此参数必填。
:rtype: list of OriginRecord
"""
return self._Records
@Records.setter
def Records(self, Records):
self._Records = Records
@property
def HostHeader(self):
"""回源 Host Header,仅 Type = HTTP 时传入生效,规则引擎修改 Host Header 配置优先级高于源站组的 Host Header。
:rtype: str
"""
return self._HostHeader
@HostHeader.setter
def HostHeader(self, HostHeader):
self._HostHeader = HostHeader
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._Type = params.get("Type")
if params.get("Records") is not None:
self._Records = []
for item in params.get("Records"):
obj = OriginRecord()
obj._deserialize(item)
self._Records.append(obj)
self._HostHeader = params.get("HostHeader")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateOriginGroupResponse(AbstractModel):
"""CreateOriginGroup返回参数结构体
"""
def __init__(self):
r"""
:param _OriginGroupId: 源站组ID。
:type OriginGroupId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._OriginGroupId = None
self._RequestId = None
@property
def OriginGroupId(self):
"""源站组ID。
:rtype: str
"""
return self._OriginGroupId
@OriginGroupId.setter
def OriginGroupId(self, OriginGroupId):
self._OriginGroupId = OriginGroupId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._OriginGroupId = params.get("OriginGroupId")
self._RequestId = params.get("RequestId")
class CreatePlanForZoneRequest(AbstractModel):
"""CreatePlanForZone请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _PlanType: 所要购买套餐的类型,取值有:
<li> sta: 全球内容分发网络(不包括中国大陆)标准版套餐; </li>
<li> sta_with_bot: 全球内容分发网络(不包括中国大陆)标准版套餐附带bot管理;</li>
<li> sta_cm: 中国大陆内容分发网络标准版套餐; </li>
<li> sta_cm_with_bot: 中国大陆内容分发网络标准版套餐附带bot管理;</li>
<li> sta_global :全球内容分发网络(包括中国大陆)标准版套餐; </li>
<li> sta_global_with_bot :全球内容分发网络(包括中国大陆)标准版套餐附带bot管理;</li>
<li> ent: 全球内容分发网络(不包括中国大陆)企业版套餐; </li>
<li> ent_with_bot: 全球内容分发网络(不包括中国大陆)企业版套餐附带bot管理;</li>
<li> ent_cm: 中国大陆内容分发网络企业版套餐; </li>
<li> ent_cm_with_bot: 中国大陆内容分发网络企业版套餐附带bot管理。</li>
<li> ent_global :全球内容分发网络(包括中国大陆)企业版套餐; </li>
<li> ent_global_with_bot :全球内容分发网络(包括中国大陆)企业版套餐附带bot管理。</li>当前账户可购买套餐类型请以<a href="https://cloud.tencent.com/document/product/1552/80606">DescribeAvailablePlans</a>返回为准。
:type PlanType: str
"""
self._ZoneId = None
self._PlanType = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def PlanType(self):
"""所要购买套餐的类型,取值有:
<li> sta: 全球内容分发网络(不包括中国大陆)标准版套餐; </li>
<li> sta_with_bot: 全球内容分发网络(不包括中国大陆)标准版套餐附带bot管理;</li>
<li> sta_cm: 中国大陆内容分发网络标准版套餐; </li>
<li> sta_cm_with_bot: 中国大陆内容分发网络标准版套餐附带bot管理;</li>
<li> sta_global :全球内容分发网络(包括中国大陆)标准版套餐; </li>
<li> sta_global_with_bot :全球内容分发网络(包括中国大陆)标准版套餐附带bot管理;</li>
<li> ent: 全球内容分发网络(不包括中国大陆)企业版套餐; </li>
<li> ent_with_bot: 全球内容分发网络(不包括中国大陆)企业版套餐附带bot管理;</li>
<li> ent_cm: 中国大陆内容分发网络企业版套餐; </li>
<li> ent_cm_with_bot: 中国大陆内容分发网络企业版套餐附带bot管理。</li>
<li> ent_global :全球内容分发网络(包括中国大陆)企业版套餐; </li>
<li> ent_global_with_bot :全球内容分发网络(包括中国大陆)企业版套餐附带bot管理。</li>当前账户可购买套餐类型请以<a href="https://cloud.tencent.com/document/product/1552/80606">DescribeAvailablePlans</a>返回为准。
:rtype: str
"""
return self._PlanType
@PlanType.setter
def PlanType(self, PlanType):
self._PlanType = PlanType
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._PlanType = params.get("PlanType")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreatePlanForZoneResponse(AbstractModel):
"""CreatePlanForZone返回参数结构体
"""
def __init__(self):
r"""
:param _ResourceNames: 购买的资源名字列表。
:type ResourceNames: list of str
:param _DealNames: 购买的订单号列表。
:type DealNames: list of str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ResourceNames = None
self._DealNames = None
self._RequestId = None
@property
def ResourceNames(self):
"""购买的资源名字列表。
:rtype: list of str
"""
return self._ResourceNames
@ResourceNames.setter
def ResourceNames(self, ResourceNames):
self._ResourceNames = ResourceNames
@property
def DealNames(self):
"""购买的订单号列表。
:rtype: list of str
"""
return self._DealNames
@DealNames.setter
def DealNames(self, DealNames):
self._DealNames = DealNames
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._ResourceNames = params.get("ResourceNames")
self._DealNames = params.get("DealNames")
self._RequestId = params.get("RequestId")
class CreatePlanRequest(AbstractModel):
"""CreatePlan请求参数结构体
"""
def __init__(self):
r"""
:param _PlanType: 订阅的套餐类型,取值有:<li> personal:个人版套餐,预付费套餐;</li><li> basic:基础版套餐,预付费套餐;</li><li> standard:标准版套餐,预付费套餐;</li><li> enterprise:企业版套餐,后付费套餐。</li>订阅预付费套餐时,请确保账号内有足够余额,余额不足会产生一个待支付的订单。
计费概述参考 [Edgeone计费概述](https://cloud.tencent.com/document/product/1552/94156)
不同套餐区别参考 [Edgeone计费套餐选型对比](https://cloud.tencent.com/document/product/1552/94165)
:type PlanType: str
:param _AutoUseVoucher: 是否自动使用代金券,取值有:<li> true:是;</li><li> false:否。</li>该参数仅在 PlanType 为 personal, basic, standard 时有效。
不填写使用默认值 false。
:type AutoUseVoucher: str
:param _PrepaidPlanParam: 订阅预付费套餐参数,PlanType 为 personal, basic, standard 时,可以选填该参数,用于传入套餐的订阅时长和是否开启自动续费。
不填该参数时,默认开通套餐时长为 1 个月,不开启自动续费。
:type PrepaidPlanParam: :class:`tencentcloud.teo.v20220901.models.PrepaidPlanParam`
"""
self._PlanType = None
self._AutoUseVoucher = None
self._PrepaidPlanParam = None
@property
def PlanType(self):
"""订阅的套餐类型,取值有:<li> personal:个人版套餐,预付费套餐;</li><li> basic:基础版套餐,预付费套餐;</li><li> standard:标准版套餐,预付费套餐;</li><li> enterprise:企业版套餐,后付费套餐。</li>订阅预付费套餐时,请确保账号内有足够余额,余额不足会产生一个待支付的订单。
计费概述参考 [Edgeone计费概述](https://cloud.tencent.com/document/product/1552/94156)
不同套餐区别参考 [Edgeone计费套餐选型对比](https://cloud.tencent.com/document/product/1552/94165)
:rtype: str
"""
return self._PlanType
@PlanType.setter
def PlanType(self, PlanType):
self._PlanType = PlanType
@property
def AutoUseVoucher(self):
"""是否自动使用代金券,取值有:<li> true:是;</li><li> false:否。</li>该参数仅在 PlanType 为 personal, basic, standard 时有效。
不填写使用默认值 false。
:rtype: str
"""
return self._AutoUseVoucher
@AutoUseVoucher.setter
def AutoUseVoucher(self, AutoUseVoucher):
self._AutoUseVoucher = AutoUseVoucher
@property
def PrepaidPlanParam(self):
"""订阅预付费套餐参数,PlanType 为 personal, basic, standard 时,可以选填该参数,用于传入套餐的订阅时长和是否开启自动续费。
不填该参数时,默认开通套餐时长为 1 个月,不开启自动续费。
:rtype: :class:`tencentcloud.teo.v20220901.models.PrepaidPlanParam`
"""
return self._PrepaidPlanParam
@PrepaidPlanParam.setter
def PrepaidPlanParam(self, PrepaidPlanParam):
self._PrepaidPlanParam = PrepaidPlanParam
def _deserialize(self, params):
self._PlanType = params.get("PlanType")
self._AutoUseVoucher = params.get("AutoUseVoucher")
if params.get("PrepaidPlanParam") is not None:
self._PrepaidPlanParam = PrepaidPlanParam()
self._PrepaidPlanParam._deserialize(params.get("PrepaidPlanParam"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreatePlanResponse(AbstractModel):
"""CreatePlan返回参数结构体
"""
def __init__(self):
r"""
:param _PlanId: 套餐 ID,形如 edgeone-2unuvzjmmn2q。
:type PlanId: str
:param _DealName: 订单号。
:type DealName: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._PlanId = None
self._DealName = None
self._RequestId = None
@property
def PlanId(self):
"""套餐 ID,形如 edgeone-2unuvzjmmn2q。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def DealName(self):
"""订单号。
:rtype: str
"""
return self._DealName
@DealName.setter
def DealName(self, DealName):
self._DealName = DealName
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._PlanId = params.get("PlanId")
self._DealName = params.get("DealName")
self._RequestId = params.get("RequestId")
class CreatePrefetchTaskRequest(AbstractModel):
"""CreatePrefetchTask请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
若您希望快速提交不同站点下的 Targets Url,可以将其填写为 *,但前提是调用该 API 的账号必须具备主账号下全部站点资源的权限。
:type ZoneId: str
:param _Targets: 要预热的资源列表,每个元素格式类似如下:
http://www.example.com/example.txt。参数值当前必填。
注意:提交任务数受计费套餐配额限制,请查看 [EO计费套餐](https://cloud.tencent.com/document/product/1552/77380)。
:type Targets: list of str
:param _EncodeUrl: 是否对url进行encode,若内容含有非 ASCII 字符集的字符,请开启此开关进行编码转换(编码规则遵循 RFC3986)。
:type EncodeUrl: bool
:param _Headers: 附带的http头部信息。
:type Headers: list of Header
"""
self._ZoneId = None
self._Targets = None
self._EncodeUrl = None
self._Headers = None
@property
def ZoneId(self):
"""站点 ID。
若您希望快速提交不同站点下的 Targets Url,可以将其填写为 *,但前提是调用该 API 的账号必须具备主账号下全部站点资源的权限。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Targets(self):
"""要预热的资源列表,每个元素格式类似如下:
http://www.example.com/example.txt。参数值当前必填。
注意:提交任务数受计费套餐配额限制,请查看 [EO计费套餐](https://cloud.tencent.com/document/product/1552/77380)。
:rtype: list of str
"""
return self._Targets
@Targets.setter
def Targets(self, Targets):
self._Targets = Targets
@property
def EncodeUrl(self):
warnings.warn("parameter `EncodeUrl` is deprecated", DeprecationWarning)
"""是否对url进行encode,若内容含有非 ASCII 字符集的字符,请开启此开关进行编码转换(编码规则遵循 RFC3986)。
:rtype: bool
"""
return self._EncodeUrl
@EncodeUrl.setter
def EncodeUrl(self, EncodeUrl):
warnings.warn("parameter `EncodeUrl` is deprecated", DeprecationWarning)
self._EncodeUrl = EncodeUrl
@property
def Headers(self):
"""附带的http头部信息。
:rtype: list of Header
"""
return self._Headers
@Headers.setter
def Headers(self, Headers):
self._Headers = Headers
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Targets = params.get("Targets")
self._EncodeUrl = params.get("EncodeUrl")
if params.get("Headers") is not None:
self._Headers = []
for item in params.get("Headers"):
obj = Header()
obj._deserialize(item)
self._Headers.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreatePrefetchTaskResponse(AbstractModel):
"""CreatePrefetchTask返回参数结构体
"""
def __init__(self):
r"""
:param _JobId: 任务 ID。
:type JobId: str
:param _FailedList: 失败的任务列表。
注意:此字段可能返回 null,表示取不到有效值。
:type FailedList: list of FailReason
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._JobId = None
self._FailedList = None
self._RequestId = None
@property
def JobId(self):
"""任务 ID。
:rtype: str
"""
return self._JobId
@JobId.setter
def JobId(self, JobId):
self._JobId = JobId
@property
def FailedList(self):
"""失败的任务列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of FailReason
"""
return self._FailedList
@FailedList.setter
def FailedList(self, FailedList):
self._FailedList = FailedList
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._JobId = params.get("JobId")
if params.get("FailedList") is not None:
self._FailedList = []
for item in params.get("FailedList"):
obj = FailReason()
obj._deserialize(item)
self._FailedList.append(obj)
self._RequestId = params.get("RequestId")
class CreatePurgeTaskRequest(AbstractModel):
"""CreatePurgeTask请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
若您希望快速提交不同站点下的 Targets Url,可以将其填写为 *,但前提是调用该 API 的账号必须具备主账号下全部站点资源的权限。
:type ZoneId: str
:param _Type: 节点缓存清除类型,取值有:
<li>purge_url:URL刷新;</li>
<li>purge_prefix:目录刷新;</li>
<li>purge_host:Hostname 刷新;</li>
<li>purge_all:站点下全部缓存刷新;</li>
<li>purge_cache_tag:cache-tag 刷新。</li>缓存清除类型详情请查看[清除缓存](https://cloud.tencent.com/document/product/1552/70759)。
:type Type: str
:param _Method: 节点缓存清除方法,针对目录刷新、Hostname刷新以及刷新全部缓存类型有效,取值有:<li> invalidate:仅刷新目录下产生了更新的资源;</li><li> delete:无论目录下资源是否更新都刷新节点资源。</li>默认值: invalidate。
:type Method: str
:param _Targets: 要清除缓存的资源列表。每个元素格式依据清除缓存类型而定,可参考接口示例。<li>单次提交的任务数受计费套餐配额限制,请查看 [EO计费套餐](https://cloud.tencent.com/document/product/1552/77380)。</li>
:type Targets: list of str
:param _EncodeUrl: 若有编码转换,仅清除编码转换后匹配的资源。
若内容含有非 ASCII 字符集的字符,请开启此开关进行编码转换(编码规则遵循 RFC3986)。
:type EncodeUrl: bool
:param _CacheTag: 节点缓存清除类型取值为 purge_cache_tag 时附带的信息。
:type CacheTag: :class:`tencentcloud.teo.v20220901.models.CacheTag`
"""
self._ZoneId = None
self._Type = None
self._Method = None
self._Targets = None
self._EncodeUrl = None
self._CacheTag = None
@property
def ZoneId(self):
"""站点 ID。
若您希望快速提交不同站点下的 Targets Url,可以将其填写为 *,但前提是调用该 API 的账号必须具备主账号下全部站点资源的权限。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Type(self):
"""节点缓存清除类型,取值有:
<li>purge_url:URL刷新;</li>
<li>purge_prefix:目录刷新;</li>
<li>purge_host:Hostname 刷新;</li>
<li>purge_all:站点下全部缓存刷新;</li>
<li>purge_cache_tag:cache-tag 刷新。</li>缓存清除类型详情请查看[清除缓存](https://cloud.tencent.com/document/product/1552/70759)。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Method(self):
"""节点缓存清除方法,针对目录刷新、Hostname刷新以及刷新全部缓存类型有效,取值有:<li> invalidate:仅刷新目录下产生了更新的资源;</li><li> delete:无论目录下资源是否更新都刷新节点资源。</li>默认值: invalidate。
:rtype: str
"""
return self._Method
@Method.setter
def Method(self, Method):
self._Method = Method
@property
def Targets(self):
"""要清除缓存的资源列表。每个元素格式依据清除缓存类型而定,可参考接口示例。<li>单次提交的任务数受计费套餐配额限制,请查看 [EO计费套餐](https://cloud.tencent.com/document/product/1552/77380)。</li>
:rtype: list of str
"""
return self._Targets
@Targets.setter
def Targets(self, Targets):
self._Targets = Targets
@property
def EncodeUrl(self):
warnings.warn("parameter `EncodeUrl` is deprecated", DeprecationWarning)
"""若有编码转换,仅清除编码转换后匹配的资源。
若内容含有非 ASCII 字符集的字符,请开启此开关进行编码转换(编码规则遵循 RFC3986)。
:rtype: bool
"""
return self._EncodeUrl
@EncodeUrl.setter
def EncodeUrl(self, EncodeUrl):
warnings.warn("parameter `EncodeUrl` is deprecated", DeprecationWarning)
self._EncodeUrl = EncodeUrl
@property
def CacheTag(self):
"""节点缓存清除类型取值为 purge_cache_tag 时附带的信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheTag`
"""
return self._CacheTag
@CacheTag.setter
def CacheTag(self, CacheTag):
self._CacheTag = CacheTag
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Type = params.get("Type")
self._Method = params.get("Method")
self._Targets = params.get("Targets")
self._EncodeUrl = params.get("EncodeUrl")
if params.get("CacheTag") is not None:
self._CacheTag = CacheTag()
self._CacheTag._deserialize(params.get("CacheTag"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreatePurgeTaskResponse(AbstractModel):
"""CreatePurgeTask返回参数结构体
"""
def __init__(self):
r"""
:param _JobId: 任务 ID。
:type JobId: str
:param _FailedList: 失败的任务列表及原因。
注意:此字段可能返回 null,表示取不到有效值。
:type FailedList: list of FailReason
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._JobId = None
self._FailedList = None
self._RequestId = None
@property
def JobId(self):
"""任务 ID。
:rtype: str
"""
return self._JobId
@JobId.setter
def JobId(self, JobId):
self._JobId = JobId
@property
def FailedList(self):
"""失败的任务列表及原因。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of FailReason
"""
return self._FailedList
@FailedList.setter
def FailedList(self, FailedList):
self._FailedList = FailedList
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._JobId = params.get("JobId")
if params.get("FailedList") is not None:
self._FailedList = []
for item in params.get("FailedList"):
obj = FailReason()
obj._deserialize(item)
self._FailedList.append(obj)
self._RequestId = params.get("RequestId")
class CreateRealtimeLogDeliveryTaskRequest(AbstractModel):
"""CreateRealtimeLogDeliveryTask请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _TaskName: 实时日志投递任务的名称,格式为数字、英文、-和_组合,最多 200 个字符。
:type TaskName: str
:param _TaskType: 实时日志投递任务类型,取值有:
<li>cls: 推送到腾讯云 CLS;</li>
<li>custom_endpoint:推送到自定义 HTTP(S) 地址;</li>
<li>s3:推送到 AWS S3 兼容存储桶地址。</li>
:type TaskType: str
:param _EntityList: 实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下:
<li>七层域名:domain.example.com;</li>
<li>四层代理实例:sid-2s69eb5wcms7。</li>
:type EntityList: list of str
:param _LogType: 数据投递类型,取值有:
<li>domain:站点加速日志;</li>
<li>application:四层代理日志;</li>
<li>web-rateLiming:速率限制和 CC 攻击防护日志;</li>
<li>web-attack:托管规则日志;</li>
<li>web-rule:自定义规则日志;</li>
<li>web-bot:Bot管理日志。</li>
:type LogType: str
:param _Area: 数据投递区域,取值有:
<li>mainland:中国大陆境内;</li>
<li>overseas:全球(不含中国大陆)。</li>
:type Area: str
:param _Fields: 投递的预设字段列表。
:type Fields: list of str
:param _CustomFields: 投递的自定义字段列表,支持在 HTTP 请求头、响应头、Cookie、请求正文中提取指定内容。自定义字段名称不能重复,且最多不能超过 200 个字段。单个实时日志推送任务最多添加 5 个请求正文类型的自定义字段。目前仅站点加速日志(LogType=domain)支持添加自定义字段。
:type CustomFields: list of CustomField
:param _DeliveryConditions: 日志投递的过滤条件,不填表示投递全量日志。
:type DeliveryConditions: list of DeliveryCondition
:param _Sample: 采样比例,采用千分制,取值范围为1-1000,例如:填写 605 表示采样比例为 60.5%。不填表示采样比例为 100%。
:type Sample: int
:param _LogFormat: 日志投递的输出格式。不填表示为默认格式,默认格式逻辑如下:
<li>当 TaskType 取值为 custom_endpoint 时,默认格式为多个 JSON 对象组成的数组,每个 JSON 对象为一条日志;</li>
<li>当 TaskType 取值为 s3 时,默认格式为 JSON Lines;</li>特别地,当 TaskType 取值为 cls 时,LogFormat.FormatType 的值只能为 json,且 LogFormat 中其他参数将被忽略,建议不传 LogFormat。
:type LogFormat: :class:`tencentcloud.teo.v20220901.models.LogFormat`
:param _CLS: CLS 的配置信息。当 TaskType 取值为 cls 时,该参数必填。
:type CLS: :class:`tencentcloud.teo.v20220901.models.CLSTopic`
:param _CustomEndpoint: 自定义 HTTP 服务的配置信息。当 TaskType 取值为 custom_endpoint 时,该参数必填。
:type CustomEndpoint: :class:`tencentcloud.teo.v20220901.models.CustomEndpoint`
:param _S3: AWS S3 兼容存储桶的配置信息。当 TaskType 取值为 s3 时,该参数必填。
:type S3: :class:`tencentcloud.teo.v20220901.models.S3`
"""
self._ZoneId = None
self._TaskName = None
self._TaskType = None
self._EntityList = None
self._LogType = None
self._Area = None
self._Fields = None
self._CustomFields = None
self._DeliveryConditions = None
self._Sample = None
self._LogFormat = None
self._CLS = None
self._CustomEndpoint = None
self._S3 = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TaskName(self):
"""实时日志投递任务的名称,格式为数字、英文、-和_组合,最多 200 个字符。
:rtype: str
"""
return self._TaskName
@TaskName.setter
def TaskName(self, TaskName):
self._TaskName = TaskName
@property
def TaskType(self):
"""实时日志投递任务类型,取值有:
<li>cls: 推送到腾讯云 CLS;</li>
<li>custom_endpoint:推送到自定义 HTTP(S) 地址;</li>
<li>s3:推送到 AWS S3 兼容存储桶地址。</li>
:rtype: str
"""
return self._TaskType
@TaskType.setter
def TaskType(self, TaskType):
self._TaskType = TaskType
@property
def EntityList(self):
"""实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下:
<li>七层域名:domain.example.com;</li>
<li>四层代理实例:sid-2s69eb5wcms7。</li>
:rtype: list of str
"""
return self._EntityList
@EntityList.setter
def EntityList(self, EntityList):
self._EntityList = EntityList
@property
def LogType(self):
"""数据投递类型,取值有:
<li>domain:站点加速日志;</li>
<li>application:四层代理日志;</li>
<li>web-rateLiming:速率限制和 CC 攻击防护日志;</li>
<li>web-attack:托管规则日志;</li>
<li>web-rule:自定义规则日志;</li>
<li>web-bot:Bot管理日志。</li>
:rtype: str
"""
return self._LogType
@LogType.setter
def LogType(self, LogType):
self._LogType = LogType
@property
def Area(self):
"""数据投递区域,取值有:
<li>mainland:中国大陆境内;</li>
<li>overseas:全球(不含中国大陆)。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def Fields(self):
"""投递的预设字段列表。
:rtype: list of str
"""
return self._Fields
@Fields.setter
def Fields(self, Fields):
self._Fields = Fields
@property
def CustomFields(self):
"""投递的自定义字段列表,支持在 HTTP 请求头、响应头、Cookie、请求正文中提取指定内容。自定义字段名称不能重复,且最多不能超过 200 个字段。单个实时日志推送任务最多添加 5 个请求正文类型的自定义字段。目前仅站点加速日志(LogType=domain)支持添加自定义字段。
:rtype: list of CustomField
"""
return self._CustomFields
@CustomFields.setter
def CustomFields(self, CustomFields):
self._CustomFields = CustomFields
@property
def DeliveryConditions(self):
"""日志投递的过滤条件,不填表示投递全量日志。
:rtype: list of DeliveryCondition
"""
return self._DeliveryConditions
@DeliveryConditions.setter
def DeliveryConditions(self, DeliveryConditions):
self._DeliveryConditions = DeliveryConditions
@property
def Sample(self):
"""采样比例,采用千分制,取值范围为1-1000,例如:填写 605 表示采样比例为 60.5%。不填表示采样比例为 100%。
:rtype: int
"""
return self._Sample
@Sample.setter
def Sample(self, Sample):
self._Sample = Sample
@property
def LogFormat(self):
"""日志投递的输出格式。不填表示为默认格式,默认格式逻辑如下:
<li>当 TaskType 取值为 custom_endpoint 时,默认格式为多个 JSON 对象组成的数组,每个 JSON 对象为一条日志;</li>
<li>当 TaskType 取值为 s3 时,默认格式为 JSON Lines;</li>特别地,当 TaskType 取值为 cls 时,LogFormat.FormatType 的值只能为 json,且 LogFormat 中其他参数将被忽略,建议不传 LogFormat。
:rtype: :class:`tencentcloud.teo.v20220901.models.LogFormat`
"""
return self._LogFormat
@LogFormat.setter
def LogFormat(self, LogFormat):
self._LogFormat = LogFormat
@property
def CLS(self):
"""CLS 的配置信息。当 TaskType 取值为 cls 时,该参数必填。
:rtype: :class:`tencentcloud.teo.v20220901.models.CLSTopic`
"""
return self._CLS
@CLS.setter
def CLS(self, CLS):
self._CLS = CLS
@property
def CustomEndpoint(self):
"""自定义 HTTP 服务的配置信息。当 TaskType 取值为 custom_endpoint 时,该参数必填。
:rtype: :class:`tencentcloud.teo.v20220901.models.CustomEndpoint`
"""
return self._CustomEndpoint
@CustomEndpoint.setter
def CustomEndpoint(self, CustomEndpoint):
self._CustomEndpoint = CustomEndpoint
@property
def S3(self):
"""AWS S3 兼容存储桶的配置信息。当 TaskType 取值为 s3 时,该参数必填。
:rtype: :class:`tencentcloud.teo.v20220901.models.S3`
"""
return self._S3
@S3.setter
def S3(self, S3):
self._S3 = S3
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._TaskName = params.get("TaskName")
self._TaskType = params.get("TaskType")
self._EntityList = params.get("EntityList")
self._LogType = params.get("LogType")
self._Area = params.get("Area")
self._Fields = params.get("Fields")
if params.get("CustomFields") is not None:
self._CustomFields = []
for item in params.get("CustomFields"):
obj = CustomField()
obj._deserialize(item)
self._CustomFields.append(obj)
if params.get("DeliveryConditions") is not None:
self._DeliveryConditions = []
for item in params.get("DeliveryConditions"):
obj = DeliveryCondition()
obj._deserialize(item)
self._DeliveryConditions.append(obj)
self._Sample = params.get("Sample")
if params.get("LogFormat") is not None:
self._LogFormat = LogFormat()
self._LogFormat._deserialize(params.get("LogFormat"))
if params.get("CLS") is not None:
self._CLS = CLSTopic()
self._CLS._deserialize(params.get("CLS"))
if params.get("CustomEndpoint") is not None:
self._CustomEndpoint = CustomEndpoint()
self._CustomEndpoint._deserialize(params.get("CustomEndpoint"))
if params.get("S3") is not None:
self._S3 = S3()
self._S3._deserialize(params.get("S3"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateRealtimeLogDeliveryTaskResponse(AbstractModel):
"""CreateRealtimeLogDeliveryTask返回参数结构体
"""
def __init__(self):
r"""
:param _TaskId: 创建成功的任务ID。
:type TaskId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TaskId = None
self._RequestId = None
@property
def TaskId(self):
"""创建成功的任务ID。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TaskId = params.get("TaskId")
self._RequestId = params.get("RequestId")
class CreateRuleRequest(AbstractModel):
"""CreateRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleName: 规则名称,名称字符串长度 1~255。
:type RuleName: str
:param _Status: 规则状态,取值有:
<li> enable: 启用; </li>
<li> disable: 未启用。</li>
:type Status: str
:param _Rules: 规则内容。
:type Rules: list of Rule
:param _Tags: 规则标签。
:type Tags: list of str
"""
self._ZoneId = None
self._RuleName = None
self._Status = None
self._Rules = None
self._Tags = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleName(self):
"""规则名称,名称字符串长度 1~255。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Status(self):
"""规则状态,取值有:
<li> enable: 启用; </li>
<li> disable: 未启用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Rules(self):
"""规则内容。
:rtype: list of Rule
"""
return self._Rules
@Rules.setter
def Rules(self, Rules):
self._Rules = Rules
@property
def Tags(self):
"""规则标签。
:rtype: list of str
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleName = params.get("RuleName")
self._Status = params.get("Status")
if params.get("Rules") is not None:
self._Rules = []
for item in params.get("Rules"):
obj = Rule()
obj._deserialize(item)
self._Rules.append(obj)
self._Tags = params.get("Tags")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateRuleResponse(AbstractModel):
"""CreateRule返回参数结构体
"""
def __init__(self):
r"""
:param _RuleId: 规则 ID。
:type RuleId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RuleId = None
self._RequestId = None
@property
def RuleId(self):
"""规则 ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
self._RequestId = params.get("RequestId")
class CreateSecurityIPGroupRequest(AbstractModel):
"""CreateSecurityIPGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 Id。
:type ZoneId: str
:param _IPGroup: IP 组信息。
:type IPGroup: :class:`tencentcloud.teo.v20220901.models.IPGroup`
"""
self._ZoneId = None
self._IPGroup = None
@property
def ZoneId(self):
"""站点 Id。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def IPGroup(self):
"""IP 组信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPGroup`
"""
return self._IPGroup
@IPGroup.setter
def IPGroup(self, IPGroup):
self._IPGroup = IPGroup
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("IPGroup") is not None:
self._IPGroup = IPGroup()
self._IPGroup._deserialize(params.get("IPGroup"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateSecurityIPGroupResponse(AbstractModel):
"""CreateSecurityIPGroup返回参数结构体
"""
def __init__(self):
r"""
:param _GroupId: IP 组 Id。
:type GroupId: int
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._GroupId = None
self._RequestId = None
@property
def GroupId(self):
"""IP 组 Id。
:rtype: int
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._GroupId = params.get("GroupId")
self._RequestId = params.get("RequestId")
class CreateSharedCNAMERequest(AbstractModel):
"""CreateSharedCNAME请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 共享 CNAME 所属站点的 ID。
:type ZoneId: str
:param _SharedCNAMEPrefix: 共享 CNAME 前缀。请输入合法的域名前缀,例如"test-api"、"test-api.com",限制输入 50 个字符。
共享 CNAME 完整格式为:`<自定义前缀>+<zoneid中的12位随机字符串>+share.dnse[0-5].com`。
例如前缀传入 example.com,EO 会为您创建共享 CNAME:example.com.sai2ig51kaa5.share.dnse2.com。
:type SharedCNAMEPrefix: str
:param _Description: 描述。可输入 1-50 个任意字符。
:type Description: str
"""
self._ZoneId = None
self._SharedCNAMEPrefix = None
self._Description = None
@property
def ZoneId(self):
"""共享 CNAME 所属站点的 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def SharedCNAMEPrefix(self):
"""共享 CNAME 前缀。请输入合法的域名前缀,例如"test-api"、"test-api.com",限制输入 50 个字符。
共享 CNAME 完整格式为:`<自定义前缀>+<zoneid中的12位随机字符串>+share.dnse[0-5].com`。
例如前缀传入 example.com,EO 会为您创建共享 CNAME:example.com.sai2ig51kaa5.share.dnse2.com。
:rtype: str
"""
return self._SharedCNAMEPrefix
@SharedCNAMEPrefix.setter
def SharedCNAMEPrefix(self, SharedCNAMEPrefix):
self._SharedCNAMEPrefix = SharedCNAMEPrefix
@property
def Description(self):
"""描述。可输入 1-50 个任意字符。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._SharedCNAMEPrefix = params.get("SharedCNAMEPrefix")
self._Description = params.get("Description")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateSharedCNAMEResponse(AbstractModel):
"""CreateSharedCNAME返回参数结构体
"""
def __init__(self):
r"""
:param _SharedCNAME: 共享 CNAME。格式为:`<自定义前缀>+<ZoneId中的12位随机字符串>+share.dnse[0-5].com`。
:type SharedCNAME: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._SharedCNAME = None
self._RequestId = None
@property
def SharedCNAME(self):
"""共享 CNAME。格式为:`<自定义前缀>+<ZoneId中的12位随机字符串>+share.dnse[0-5].com`。
:rtype: str
"""
return self._SharedCNAME
@SharedCNAME.setter
def SharedCNAME(self, SharedCNAME):
self._SharedCNAME = SharedCNAME
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._SharedCNAME = params.get("SharedCNAME")
self._RequestId = params.get("RequestId")
class CreateZoneRequest(AbstractModel):
"""CreateZone请求参数结构体
"""
def __init__(self):
r"""
:param _Type: 站点接入类型。该参数取值如下,不填写时默认为 partial:
<li>partial:CNAME 接入;</li>
<li>full:NS 接入;</li>
<li>noDomainAccess:无域名接入;</li>
<li>dnsPodAccess:DNSPod 托管接入,该接入模式要求您的域名已托管在 DNSPod 内。</li>
:type Type: str
:param _ZoneName: 站点名称。CNAME/NS 接入的时,请传入二级域名(example.com)作为站点名称;无域名接入时,该值请保留为空。
:type ZoneName: str
:param _Area: Type 取值为 partial/full 时,七层域名的加速区域。以下为该参数取值,不填写时该值默认为 overseas。Type 取值为 noDomainAccess 时该值请保留为空:
<li> global: 全球可用区;</li>
<li> mainland: 中国大陆可用区;</li>
<li> overseas: 全球可用区(不含中国大陆)。</li>
:type Area: str
:param _PlanId: 待绑定的目标套餐 ID。当您账号下已存在套餐时,可以填写此参数,直接将站点绑定至该套餐。若您当前没有可绑定的套餐时,请前往控制台购买套餐完成站点创建。
:type PlanId: str
:param _AliasZoneName: 同名站点标识。限制输入数字、英文、"." 、"-" 和 "_",长度 200 个字符以内。详情参考 [同名站点标识](https://cloud.tencent.com/document/product/1552/70202),无此使用场景时,该字段保留为空即可。
:type AliasZoneName: str
:param _Tags: 标签。该参数用于对站点进行分权限管控、分账。需要先前往 [标签控制台](https://console.cloud.tencent.com/tag/taglist) 创建对应的标签才可以在此处传入对应的标签键和标签值。
:type Tags: list of Tag
:param _AllowDuplicates: 是否允许重复接入。
<li> true:允许重复接入;</li>
<li> false:不允许重复接入。</li>不填写使用默认值false。
:type AllowDuplicates: bool
:param _JumpStart: 是否跳过站点现有的DNS记录扫描。默认值:false。
:type JumpStart: bool
"""
self._Type = None
self._ZoneName = None
self._Area = None
self._PlanId = None
self._AliasZoneName = None
self._Tags = None
self._AllowDuplicates = None
self._JumpStart = None
@property
def Type(self):
"""站点接入类型。该参数取值如下,不填写时默认为 partial:
<li>partial:CNAME 接入;</li>
<li>full:NS 接入;</li>
<li>noDomainAccess:无域名接入;</li>
<li>dnsPodAccess:DNSPod 托管接入,该接入模式要求您的域名已托管在 DNSPod 内。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def ZoneName(self):
"""站点名称。CNAME/NS 接入的时,请传入二级域名(example.com)作为站点名称;无域名接入时,该值请保留为空。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def Area(self):
"""Type 取值为 partial/full 时,七层域名的加速区域。以下为该参数取值,不填写时该值默认为 overseas。Type 取值为 noDomainAccess 时该值请保留为空:
<li> global: 全球可用区;</li>
<li> mainland: 中国大陆可用区;</li>
<li> overseas: 全球可用区(不含中国大陆)。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def PlanId(self):
"""待绑定的目标套餐 ID。当您账号下已存在套餐时,可以填写此参数,直接将站点绑定至该套餐。若您当前没有可绑定的套餐时,请前往控制台购买套餐完成站点创建。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def AliasZoneName(self):
"""同名站点标识。限制输入数字、英文、"." 、"-" 和 "_",长度 200 个字符以内。详情参考 [同名站点标识](https://cloud.tencent.com/document/product/1552/70202),无此使用场景时,该字段保留为空即可。
:rtype: str
"""
return self._AliasZoneName
@AliasZoneName.setter
def AliasZoneName(self, AliasZoneName):
self._AliasZoneName = AliasZoneName
@property
def Tags(self):
"""标签。该参数用于对站点进行分权限管控、分账。需要先前往 [标签控制台](https://console.cloud.tencent.com/tag/taglist) 创建对应的标签才可以在此处传入对应的标签键和标签值。
:rtype: list of Tag
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
@property
def AllowDuplicates(self):
warnings.warn("parameter `AllowDuplicates` is deprecated", DeprecationWarning)
"""是否允许重复接入。
<li> true:允许重复接入;</li>
<li> false:不允许重复接入。</li>不填写使用默认值false。
:rtype: bool
"""
return self._AllowDuplicates
@AllowDuplicates.setter
def AllowDuplicates(self, AllowDuplicates):
warnings.warn("parameter `AllowDuplicates` is deprecated", DeprecationWarning)
self._AllowDuplicates = AllowDuplicates
@property
def JumpStart(self):
warnings.warn("parameter `JumpStart` is deprecated", DeprecationWarning)
"""是否跳过站点现有的DNS记录扫描。默认值:false。
:rtype: bool
"""
return self._JumpStart
@JumpStart.setter
def JumpStart(self, JumpStart):
warnings.warn("parameter `JumpStart` is deprecated", DeprecationWarning)
self._JumpStart = JumpStart
def _deserialize(self, params):
self._Type = params.get("Type")
self._ZoneName = params.get("ZoneName")
self._Area = params.get("Area")
self._PlanId = params.get("PlanId")
self._AliasZoneName = params.get("AliasZoneName")
if params.get("Tags") is not None:
self._Tags = []
for item in params.get("Tags"):
obj = Tag()
obj._deserialize(item)
self._Tags.append(obj)
self._AllowDuplicates = params.get("AllowDuplicates")
self._JumpStart = params.get("JumpStart")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CreateZoneResponse(AbstractModel):
"""CreateZone返回参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _OwnershipVerification: 站点归属权验证信息。站点完成创建后,您还需要完成归属权校验,站点才能正常服务。
Type = partial 时,您需要参考 [站点/域名归属权验证](https://cloud.tencent.com/document/product/1552/70789) 前往您的域名解析服务商添加 TXT 记录或者前往根域名服务器添加文件,再调用接口 [VerifyOwnership]() 完成验证;
Type = full 时,您需要参考 [修改 DNS 服务器](https://cloud.tencent.com/document/product/1552/90452) 切换 DNS 服务器即可,可通过接口 [VerifyOwnership]() 查询 DNS 是否切换成功;
Type = noDomainAccess 时,该值为空,不需要进行任何操作。
注意:此字段可能返回 null,表示取不到有效值。
:type OwnershipVerification: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ZoneId = None
self._OwnershipVerification = None
self._RequestId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def OwnershipVerification(self):
"""站点归属权验证信息。站点完成创建后,您还需要完成归属权校验,站点才能正常服务。
Type = partial 时,您需要参考 [站点/域名归属权验证](https://cloud.tencent.com/document/product/1552/70789) 前往您的域名解析服务商添加 TXT 记录或者前往根域名服务器添加文件,再调用接口 [VerifyOwnership]() 完成验证;
Type = full 时,您需要参考 [修改 DNS 服务器](https://cloud.tencent.com/document/product/1552/90452) 切换 DNS 服务器即可,可通过接口 [VerifyOwnership]() 查询 DNS 是否切换成功;
Type = noDomainAccess 时,该值为空,不需要进行任何操作。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
"""
return self._OwnershipVerification
@OwnershipVerification.setter
def OwnershipVerification(self, OwnershipVerification):
self._OwnershipVerification = OwnershipVerification
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("OwnershipVerification") is not None:
self._OwnershipVerification = OwnershipVerification()
self._OwnershipVerification._deserialize(params.get("OwnershipVerification"))
self._RequestId = params.get("RequestId")
class CustomEndpoint(AbstractModel):
"""实时日志投递到自定义 HTTP(S) 接口的配置信息。
"""
def __init__(self):
r"""
:param _Url: 实时日志投递的自定义 HTTP 接口地址,暂仅支持 HTTP/HTTPS 协议。
:type Url: str
:param _AccessId: 填写自定义的 SecretId 用于生成加密签名,如果源站需要鉴权此参数必填。
:type AccessId: str
:param _AccessKey: 填写自定义的 SecretKey 用于生成加密签名,如果源站需要鉴权此参数必填。
:type AccessKey: str
:param _CompressType: 数据压缩类型,取值有: <li> gzip:使用 gzip 方式压缩。</li>不填表示不启用压缩。
:type CompressType: str
:param _Protocol: POST 请求投递日志时,使用的应用层协议类型,取值有:
<li>http:HTTP 协议;</li>
<li>https:HTTPS 协议。</li>如果不填默认根据填写的 URL 地址解析出协议类型。
:type Protocol: str
:param _Headers: 投递日志时携带的自定义请求头。若您填写的头部名称为 Content-Type 等 EdgeOne 日志推送默认携带的头部,那么您填写的头部值将覆盖默认值。头部值引用单个变量${batchSize},以获取每次 POST 请求中包含的日志条数。
:type Headers: list of Header
"""
self._Url = None
self._AccessId = None
self._AccessKey = None
self._CompressType = None
self._Protocol = None
self._Headers = None
@property
def Url(self):
"""实时日志投递的自定义 HTTP 接口地址,暂仅支持 HTTP/HTTPS 协议。
:rtype: str
"""
return self._Url
@Url.setter
def Url(self, Url):
self._Url = Url
@property
def AccessId(self):
"""填写自定义的 SecretId 用于生成加密签名,如果源站需要鉴权此参数必填。
:rtype: str
"""
return self._AccessId
@AccessId.setter
def AccessId(self, AccessId):
self._AccessId = AccessId
@property
def AccessKey(self):
"""填写自定义的 SecretKey 用于生成加密签名,如果源站需要鉴权此参数必填。
:rtype: str
"""
return self._AccessKey
@AccessKey.setter
def AccessKey(self, AccessKey):
self._AccessKey = AccessKey
@property
def CompressType(self):
"""数据压缩类型,取值有: <li> gzip:使用 gzip 方式压缩。</li>不填表示不启用压缩。
:rtype: str
"""
return self._CompressType
@CompressType.setter
def CompressType(self, CompressType):
self._CompressType = CompressType
@property
def Protocol(self):
"""POST 请求投递日志时,使用的应用层协议类型,取值有:
<li>http:HTTP 协议;</li>
<li>https:HTTPS 协议。</li>如果不填默认根据填写的 URL 地址解析出协议类型。
:rtype: str
"""
return self._Protocol
@Protocol.setter
def Protocol(self, Protocol):
self._Protocol = Protocol
@property
def Headers(self):
"""投递日志时携带的自定义请求头。若您填写的头部名称为 Content-Type 等 EdgeOne 日志推送默认携带的头部,那么您填写的头部值将覆盖默认值。头部值引用单个变量${batchSize},以获取每次 POST 请求中包含的日志条数。
:rtype: list of Header
"""
return self._Headers
@Headers.setter
def Headers(self, Headers):
self._Headers = Headers
def _deserialize(self, params):
self._Url = params.get("Url")
self._AccessId = params.get("AccessId")
self._AccessKey = params.get("AccessKey")
self._CompressType = params.get("CompressType")
self._Protocol = params.get("Protocol")
if params.get("Headers") is not None:
self._Headers = []
for item in params.get("Headers"):
obj = Header()
obj._deserialize(item)
self._Headers.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CustomErrorPage(AbstractModel):
"""自定义错误码页面结构体。
"""
def __init__(self):
r"""
:param _PageId: 自定义错误页面 ID。
:type PageId: str
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: 自定义错误页面名称。
:type Name: str
:param _ContentType: 自定义错误页面类型。
:type ContentType: str
:param _Description: 自定义错误页面描述。
:type Description: str
:param _Content: 自定义错误页面内容。
:type Content: str
:param _References: 自定义错误页面引用。
:type References: list of ErrorPageReference
"""
self._PageId = None
self._ZoneId = None
self._Name = None
self._ContentType = None
self._Description = None
self._Content = None
self._References = None
@property
def PageId(self):
"""自定义错误页面 ID。
:rtype: str
"""
return self._PageId
@PageId.setter
def PageId(self, PageId):
self._PageId = PageId
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""自定义错误页面名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def ContentType(self):
"""自定义错误页面类型。
:rtype: str
"""
return self._ContentType
@ContentType.setter
def ContentType(self, ContentType):
self._ContentType = ContentType
@property
def Description(self):
"""自定义错误页面描述。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def Content(self):
"""自定义错误页面内容。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def References(self):
"""自定义错误页面引用。
:rtype: list of ErrorPageReference
"""
return self._References
@References.setter
def References(self, References):
self._References = References
def _deserialize(self, params):
self._PageId = params.get("PageId")
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._ContentType = params.get("ContentType")
self._Description = params.get("Description")
self._Content = params.get("Content")
if params.get("References") is not None:
self._References = []
for item in params.get("References"):
obj = ErrorPageReference()
obj._deserialize(item)
self._References.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CustomField(AbstractModel):
"""实时日志投递任务中的自定义日志字段。
"""
def __init__(self):
r"""
:param _Name: 自定义日志字段类型。从 HTTP 请求和响应中的指定位置提取数据,取值有:
<li>ReqHeader:从 HTTP 请求头中提取指定字段值;</li>
<li>RspHeader:从 HTTP 响应头中提取指定字段值;</li>
<li>Cookie: 从 Cookie 中提取指定字段值;</li>
<li>ReqBody: 从 HTTP 请求正文中通过 Google RE2 正则表达式提取指定内容。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Name: str
:param _Value: 根据字段类型(Name)填入字段值的定义。需要区分大小写。
<li>当字段类型为 ReqHeader、RspHeader、Cookie 时,填入需要提取值的参数名称,例如:Accept-Language。可输入 1-100 个字符,允许的字符开头为字母,中间为字母、数字、-,结尾为字母、数字;</li>
<li>当字段类型为 ReqBody 时,填入 Google RE2 正则表达式,正则表达式长度上限为 4KB。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Value: str
:param _Enabled: 是否投递该字段,不填表示不投递此字段。
注意:此字段可能返回 null,表示取不到有效值。
:type Enabled: bool
"""
self._Name = None
self._Value = None
self._Enabled = None
@property
def Name(self):
"""自定义日志字段类型。从 HTTP 请求和响应中的指定位置提取数据,取值有:
<li>ReqHeader:从 HTTP 请求头中提取指定字段值;</li>
<li>RspHeader:从 HTTP 响应头中提取指定字段值;</li>
<li>Cookie: 从 Cookie 中提取指定字段值;</li>
<li>ReqBody: 从 HTTP 请求正文中通过 Google RE2 正则表达式提取指定内容。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Value(self):
"""根据字段类型(Name)填入字段值的定义。需要区分大小写。
<li>当字段类型为 ReqHeader、RspHeader、Cookie 时,填入需要提取值的参数名称,例如:Accept-Language。可输入 1-100 个字符,允许的字符开头为字母,中间为字母、数字、-,结尾为字母、数字;</li>
<li>当字段类型为 ReqBody 时,填入 Google RE2 正则表达式,正则表达式长度上限为 4KB。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
@property
def Enabled(self):
"""是否投递该字段,不填表示不投递此字段。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: bool
"""
return self._Enabled
@Enabled.setter
def Enabled(self, Enabled):
self._Enabled = Enabled
def _deserialize(self, params):
self._Name = params.get("Name")
self._Value = params.get("Value")
self._Enabled = params.get("Enabled")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CustomTime(AbstractModel):
"""节点缓存 TTL 自定义缓存时间参数配置。
"""
def __init__(self):
r"""
:param _Switch: 自定义缓存时间开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _IgnoreCacheControl: 忽略源站 CacheControl 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type IgnoreCacheControl: str
:param _CacheTime: 自定义缓存时间数值,单位为秒,取值:0~315360000。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type CacheTime: int
"""
self._Switch = None
self._IgnoreCacheControl = None
self._CacheTime = None
@property
def Switch(self):
"""自定义缓存时间开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def IgnoreCacheControl(self):
"""忽略源站 CacheControl 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._IgnoreCacheControl
@IgnoreCacheControl.setter
def IgnoreCacheControl(self, IgnoreCacheControl):
self._IgnoreCacheControl = IgnoreCacheControl
@property
def CacheTime(self):
"""自定义缓存时间数值,单位为秒,取值:0~315360000。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: int
"""
return self._CacheTime
@CacheTime.setter
def CacheTime(self, CacheTime):
self._CacheTime = CacheTime
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._IgnoreCacheControl = params.get("IgnoreCacheControl")
self._CacheTime = params.get("CacheTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class CustomizedHeader(AbstractModel):
"""负载均衡实例 HTTP/HTTPS 健康检查策略下可配置的自定义头部。
"""
def __init__(self):
r"""
:param _Key: 自定义头部 Key。
注意:此字段可能返回 null,表示取不到有效值。
:type Key: str
:param _Value: 自定义头部 Value。
注意:此字段可能返回 null,表示取不到有效值。
:type Value: str
"""
self._Key = None
self._Value = None
@property
def Key(self):
"""自定义头部 Key。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Value(self):
"""自定义头部 Value。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Key = params.get("Key")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DDoS(AbstractModel):
"""DDoS配置
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DDoSAttackEvent(AbstractModel):
"""DDoS攻击事件对象
"""
def __init__(self):
r"""
:param _EventId: 事件ID。
:type EventId: str
:param _AttackType: 攻击类型(对应交互事件名称)。
:type AttackType: str
:param _AttackStatus: 攻击状态。
:type AttackStatus: int
:param _AttackMaxBandWidth: 攻击最大带宽。
:type AttackMaxBandWidth: int
:param _AttackPacketMaxRate: 攻击包速率峰值。
:type AttackPacketMaxRate: int
:param _AttackStartTime: 攻击开始时间,单位为s。
:type AttackStartTime: int
:param _AttackEndTime: 攻击结束时间,单位为s。
:type AttackEndTime: int
:param _PolicyId: DDoS策略组ID。
注意:此字段可能返回 null,表示取不到有效值。
:type PolicyId: int
:param _ZoneId: 站点ID。
注意:此字段可能返回 null,表示取不到有效值。
:type ZoneId: str
:param _Area: 攻击事件所属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Area: str
:param _DDoSBlockData: 封禁解封信息。
注意:此字段可能返回 null,表示取不到有效值。
:type DDoSBlockData: list of DDoSBlockData
"""
self._EventId = None
self._AttackType = None
self._AttackStatus = None
self._AttackMaxBandWidth = None
self._AttackPacketMaxRate = None
self._AttackStartTime = None
self._AttackEndTime = None
self._PolicyId = None
self._ZoneId = None
self._Area = None
self._DDoSBlockData = None
@property
def EventId(self):
"""事件ID。
:rtype: str
"""
return self._EventId
@EventId.setter
def EventId(self, EventId):
self._EventId = EventId
@property
def AttackType(self):
"""攻击类型(对应交互事件名称)。
:rtype: str
"""
return self._AttackType
@AttackType.setter
def AttackType(self, AttackType):
self._AttackType = AttackType
@property
def AttackStatus(self):
"""攻击状态。
:rtype: int
"""
return self._AttackStatus
@AttackStatus.setter
def AttackStatus(self, AttackStatus):
self._AttackStatus = AttackStatus
@property
def AttackMaxBandWidth(self):
"""攻击最大带宽。
:rtype: int
"""
return self._AttackMaxBandWidth
@AttackMaxBandWidth.setter
def AttackMaxBandWidth(self, AttackMaxBandWidth):
self._AttackMaxBandWidth = AttackMaxBandWidth
@property
def AttackPacketMaxRate(self):
"""攻击包速率峰值。
:rtype: int
"""
return self._AttackPacketMaxRate
@AttackPacketMaxRate.setter
def AttackPacketMaxRate(self, AttackPacketMaxRate):
self._AttackPacketMaxRate = AttackPacketMaxRate
@property
def AttackStartTime(self):
"""攻击开始时间,单位为s。
:rtype: int
"""
return self._AttackStartTime
@AttackStartTime.setter
def AttackStartTime(self, AttackStartTime):
self._AttackStartTime = AttackStartTime
@property
def AttackEndTime(self):
"""攻击结束时间,单位为s。
:rtype: int
"""
return self._AttackEndTime
@AttackEndTime.setter
def AttackEndTime(self, AttackEndTime):
self._AttackEndTime = AttackEndTime
@property
def PolicyId(self):
"""DDoS策略组ID。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._PolicyId
@PolicyId.setter
def PolicyId(self, PolicyId):
self._PolicyId = PolicyId
@property
def ZoneId(self):
"""站点ID。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Area(self):
"""攻击事件所属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def DDoSBlockData(self):
"""封禁解封信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of DDoSBlockData
"""
return self._DDoSBlockData
@DDoSBlockData.setter
def DDoSBlockData(self, DDoSBlockData):
self._DDoSBlockData = DDoSBlockData
def _deserialize(self, params):
self._EventId = params.get("EventId")
self._AttackType = params.get("AttackType")
self._AttackStatus = params.get("AttackStatus")
self._AttackMaxBandWidth = params.get("AttackMaxBandWidth")
self._AttackPacketMaxRate = params.get("AttackPacketMaxRate")
self._AttackStartTime = params.get("AttackStartTime")
self._AttackEndTime = params.get("AttackEndTime")
self._PolicyId = params.get("PolicyId")
self._ZoneId = params.get("ZoneId")
self._Area = params.get("Area")
if params.get("DDoSBlockData") is not None:
self._DDoSBlockData = []
for item in params.get("DDoSBlockData"):
obj = DDoSBlockData()
obj._deserialize(item)
self._DDoSBlockData.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DDoSBlockData(AbstractModel):
"""DDoS封禁解封信息
"""
def __init__(self):
r"""
:param _StartTime: 开始时间,采用unix时间戳。
:type StartTime: int
:param _EndTime: 结束时间,采用unix时间戳, 为0表示还处于封禁中。
:type EndTime: int
:param _BlockArea: 封禁受影响区域。
:type BlockArea: str
"""
self._StartTime = None
self._EndTime = None
self._BlockArea = None
@property
def StartTime(self):
"""开始时间,采用unix时间戳。
:rtype: int
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间,采用unix时间戳, 为0表示还处于封禁中。
:rtype: int
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def BlockArea(self):
"""封禁受影响区域。
:rtype: str
"""
return self._BlockArea
@BlockArea.setter
def BlockArea(self, BlockArea):
self._BlockArea = BlockArea
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._BlockArea = params.get("BlockArea")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DDosProtectionConfig(AbstractModel):
"""适用于四层代理或 Web 站点服务的独立 DDoS 防护规格配置。
"""
def __init__(self):
r"""
:param _LevelMainland: 中国大陆地区独立 DDoS 防护的规格。详情请参考 [独立 DDoS 防护相关费用](https://cloud.tencent.com/document/product/1552/94162)
<li>PLATFORM:平台默认防护,即不开启独立 DDoS 防护;</li>
<li>BASE30_MAX300:开启独立 DDoS 防护,提供 30 Gbps 保底防护带宽以及 300 Gbps 弹性防护带宽;</li>
<li>BASE60_MAX600:开启独立 DDoS 防护,提供 60 Gbps 保底防护带宽以及 600 Gbps 弹性防护带宽。</li>不填写参数时,取默认值 PLATFORM。
:type LevelMainland: str
:param _MaxBandwidthMainland: 中国大陆地区独立 DDoS 防护的弹性防护带宽配置。
仅当开启中国大陆区域独立 DDos 防护时有效(详见 LevelMainland 参数配置),且取值范围有如下限制:
<li>开启中国大陆地区独立 DDoS 防护,使用 30 Gbps 保底防护带宽规格时( LevelMainland 参数值为 BASE30_MAX300 ):有效取值范围为 30 至 300,单位为 Gbps;</li>
<li>开启中国大陆地区独立 DDoS 防护,使用 60 Gbps 保底防护带宽规格时( LevelMainland 参数值为 BASE60_MAX600 ):有效取值范围为 60 至 600,单位为 Gbps;</li>
<li>使用平台默认防护( LevelMainland 参数值为 PLATFORM ):不支持配置,本参数值无效。</li>
:type MaxBandwidthMainland: int
:param _LevelOverseas: 全球(除中国大陆以外)地区独立 DDoS 防护的规格。
<li>PLATFORM:平台默认防护,即不开启独立 DDoS 防护;</li>
<li>ANYCAST300:开启独立 DDoS 防护,提供 300 Gbps 防护带宽;</li>
<li>ANYCAST_ALLIN:开启独立 DDoS 防护,使用全部可用防护资源进行防护。</li>不填写参数时,取默认值 PLATFORM。
:type LevelOverseas: str
"""
self._LevelMainland = None
self._MaxBandwidthMainland = None
self._LevelOverseas = None
@property
def LevelMainland(self):
"""中国大陆地区独立 DDoS 防护的规格。详情请参考 [独立 DDoS 防护相关费用](https://cloud.tencent.com/document/product/1552/94162)
<li>PLATFORM:平台默认防护,即不开启独立 DDoS 防护;</li>
<li>BASE30_MAX300:开启独立 DDoS 防护,提供 30 Gbps 保底防护带宽以及 300 Gbps 弹性防护带宽;</li>
<li>BASE60_MAX600:开启独立 DDoS 防护,提供 60 Gbps 保底防护带宽以及 600 Gbps 弹性防护带宽。</li>不填写参数时,取默认值 PLATFORM。
:rtype: str
"""
return self._LevelMainland
@LevelMainland.setter
def LevelMainland(self, LevelMainland):
self._LevelMainland = LevelMainland
@property
def MaxBandwidthMainland(self):
"""中国大陆地区独立 DDoS 防护的弹性防护带宽配置。
仅当开启中国大陆区域独立 DDos 防护时有效(详见 LevelMainland 参数配置),且取值范围有如下限制:
<li>开启中国大陆地区独立 DDoS 防护,使用 30 Gbps 保底防护带宽规格时( LevelMainland 参数值为 BASE30_MAX300 ):有效取值范围为 30 至 300,单位为 Gbps;</li>
<li>开启中国大陆地区独立 DDoS 防护,使用 60 Gbps 保底防护带宽规格时( LevelMainland 参数值为 BASE60_MAX600 ):有效取值范围为 60 至 600,单位为 Gbps;</li>
<li>使用平台默认防护( LevelMainland 参数值为 PLATFORM ):不支持配置,本参数值无效。</li>
:rtype: int
"""
return self._MaxBandwidthMainland
@MaxBandwidthMainland.setter
def MaxBandwidthMainland(self, MaxBandwidthMainland):
self._MaxBandwidthMainland = MaxBandwidthMainland
@property
def LevelOverseas(self):
"""全球(除中国大陆以外)地区独立 DDoS 防护的规格。
<li>PLATFORM:平台默认防护,即不开启独立 DDoS 防护;</li>
<li>ANYCAST300:开启独立 DDoS 防护,提供 300 Gbps 防护带宽;</li>
<li>ANYCAST_ALLIN:开启独立 DDoS 防护,使用全部可用防护资源进行防护。</li>不填写参数时,取默认值 PLATFORM。
:rtype: str
"""
return self._LevelOverseas
@LevelOverseas.setter
def LevelOverseas(self, LevelOverseas):
self._LevelOverseas = LevelOverseas
def _deserialize(self, params):
self._LevelMainland = params.get("LevelMainland")
self._MaxBandwidthMainland = params.get("MaxBandwidthMainland")
self._LevelOverseas = params.get("LevelOverseas")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DefaultServerCertInfo(AbstractModel):
"""https 服务端证书配置
"""
def __init__(self):
r"""
:param _CertId: 服务器证书 ID。
注意:此字段可能返回 null,表示取不到有效值。
:type CertId: str
:param _Alias: 证书备注名。
注意:此字段可能返回 null,表示取不到有效值。
:type Alias: str
:param _Type: 证书类型,取值有:
<li>default: 默认证书;</li>
<li>upload:用户上传;</li>
<li>managed:腾讯云托管。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Type: str
:param _ExpireTime: 证书过期时间。
注意:此字段可能返回 null,表示取不到有效值。
:type ExpireTime: str
:param _EffectiveTime: 证书生效时间。
注意:此字段可能返回 null,表示取不到有效值。
:type EffectiveTime: str
:param _CommonName: 证书公用名。
注意:此字段可能返回 null,表示取不到有效值。
:type CommonName: str
:param _SubjectAltName: 证书SAN域名。
注意:此字段可能返回 null,表示取不到有效值。
:type SubjectAltName: list of str
:param _Status: 部署状态,取值有:
<li>processing: 部署中;</li>
<li>deployed: 已部署;</li>
<li>failed: 部署失败。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Status: str
:param _Message: Status为失败时,此字段返回失败原因。
注意:此字段可能返回 null,表示取不到有效值。
:type Message: str
:param _SignAlgo: 证书算法。
注意:此字段可能返回 null,表示取不到有效值。
:type SignAlgo: str
"""
self._CertId = None
self._Alias = None
self._Type = None
self._ExpireTime = None
self._EffectiveTime = None
self._CommonName = None
self._SubjectAltName = None
self._Status = None
self._Message = None
self._SignAlgo = None
@property
def CertId(self):
"""服务器证书 ID。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._CertId
@CertId.setter
def CertId(self, CertId):
self._CertId = CertId
@property
def Alias(self):
"""证书备注名。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Alias
@Alias.setter
def Alias(self, Alias):
self._Alias = Alias
@property
def Type(self):
"""证书类型,取值有:
<li>default: 默认证书;</li>
<li>upload:用户上传;</li>
<li>managed:腾讯云托管。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def ExpireTime(self):
"""证书过期时间。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._ExpireTime
@ExpireTime.setter
def ExpireTime(self, ExpireTime):
self._ExpireTime = ExpireTime
@property
def EffectiveTime(self):
"""证书生效时间。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._EffectiveTime
@EffectiveTime.setter
def EffectiveTime(self, EffectiveTime):
self._EffectiveTime = EffectiveTime
@property
def CommonName(self):
"""证书公用名。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._CommonName
@CommonName.setter
def CommonName(self, CommonName):
self._CommonName = CommonName
@property
def SubjectAltName(self):
"""证书SAN域名。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._SubjectAltName
@SubjectAltName.setter
def SubjectAltName(self, SubjectAltName):
self._SubjectAltName = SubjectAltName
@property
def Status(self):
"""部署状态,取值有:
<li>processing: 部署中;</li>
<li>deployed: 已部署;</li>
<li>failed: 部署失败。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Message(self):
"""Status为失败时,此字段返回失败原因。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Message
@Message.setter
def Message(self, Message):
self._Message = Message
@property
def SignAlgo(self):
"""证书算法。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._SignAlgo
@SignAlgo.setter
def SignAlgo(self, SignAlgo):
self._SignAlgo = SignAlgo
def _deserialize(self, params):
self._CertId = params.get("CertId")
self._Alias = params.get("Alias")
self._Type = params.get("Type")
self._ExpireTime = params.get("ExpireTime")
self._EffectiveTime = params.get("EffectiveTime")
self._CommonName = params.get("CommonName")
self._SubjectAltName = params.get("SubjectAltName")
self._Status = params.get("Status")
self._Message = params.get("Message")
self._SignAlgo = params.get("SignAlgo")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteAccelerationDomainsRequest(AbstractModel):
"""DeleteAccelerationDomains请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 加速域名所属站点ID。
:type ZoneId: str
:param _DomainNames: 需要删除的加速域名ID列表。
:type DomainNames: list of str
:param _Force: 是否强制删除。当域名存在关联资源(如马甲域名、流量调度功能)时,是否强制删除该域名,取值有:
<li> true:删除该域名及所有关联资源;</li>
<li> false:当该加速域名存在关联资源时,不允许删除。</li>不填写,默认值为:false。
:type Force: bool
"""
self._ZoneId = None
self._DomainNames = None
self._Force = None
@property
def ZoneId(self):
"""加速域名所属站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def DomainNames(self):
"""需要删除的加速域名ID列表。
:rtype: list of str
"""
return self._DomainNames
@DomainNames.setter
def DomainNames(self, DomainNames):
self._DomainNames = DomainNames
@property
def Force(self):
"""是否强制删除。当域名存在关联资源(如马甲域名、流量调度功能)时,是否强制删除该域名,取值有:
<li> true:删除该域名及所有关联资源;</li>
<li> false:当该加速域名存在关联资源时,不允许删除。</li>不填写,默认值为:false。
:rtype: bool
"""
return self._Force
@Force.setter
def Force(self, Force):
self._Force = Force
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._DomainNames = params.get("DomainNames")
self._Force = params.get("Force")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteAccelerationDomainsResponse(AbstractModel):
"""DeleteAccelerationDomains返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteAliasDomainRequest(AbstractModel):
"""DeleteAliasDomain请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _AliasNames: 待删除别称域名名称。如果为空,则不执行删除操作。
:type AliasNames: list of str
"""
self._ZoneId = None
self._AliasNames = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def AliasNames(self):
"""待删除别称域名名称。如果为空,则不执行删除操作。
:rtype: list of str
"""
return self._AliasNames
@AliasNames.setter
def AliasNames(self, AliasNames):
self._AliasNames = AliasNames
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._AliasNames = params.get("AliasNames")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteAliasDomainResponse(AbstractModel):
"""DeleteAliasDomain返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteApplicationProxyRequest(AbstractModel):
"""DeleteApplicationProxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ProxyId: 代理ID。
:type ProxyId: str
"""
self._ZoneId = None
self._ProxyId = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteApplicationProxyResponse(AbstractModel):
"""DeleteApplicationProxy返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteApplicationProxyRuleRequest(AbstractModel):
"""DeleteApplicationProxyRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ProxyId: 代理ID。
:type ProxyId: str
:param _RuleId: 规则ID。
:type RuleId: str
"""
self._ZoneId = None
self._ProxyId = None
self._RuleId = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RuleId(self):
"""规则ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._RuleId = params.get("RuleId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteApplicationProxyRuleResponse(AbstractModel):
"""DeleteApplicationProxyRule返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteContentIdentifierRequest(AbstractModel):
"""DeleteContentIdentifier请求参数结构体
"""
def __init__(self):
r"""
:param _ContentId: 内容标识符 ID。
:type ContentId: str
"""
self._ContentId = None
@property
def ContentId(self):
"""内容标识符 ID。
:rtype: str
"""
return self._ContentId
@ContentId.setter
def ContentId(self, ContentId):
self._ContentId = ContentId
def _deserialize(self, params):
self._ContentId = params.get("ContentId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteContentIdentifierResponse(AbstractModel):
"""DeleteContentIdentifier返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteCustomErrorPageRequest(AbstractModel):
"""DeleteCustomErrorPage请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _PageId: 自定义页面 ID。
:type PageId: str
"""
self._ZoneId = None
self._PageId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def PageId(self):
"""自定义页面 ID。
:rtype: str
"""
return self._PageId
@PageId.setter
def PageId(self, PageId):
self._PageId = PageId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._PageId = params.get("PageId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteCustomErrorPageResponse(AbstractModel):
"""DeleteCustomErrorPage返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteDnsRecordsRequest(AbstractModel):
"""DeleteDnsRecords请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RecordIds: 待删除的 DNS 记录 ID 列表,上限:1000。
:type RecordIds: list of str
"""
self._ZoneId = None
self._RecordIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RecordIds(self):
"""待删除的 DNS 记录 ID 列表,上限:1000。
:rtype: list of str
"""
return self._RecordIds
@RecordIds.setter
def RecordIds(self, RecordIds):
self._RecordIds = RecordIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RecordIds = params.get("RecordIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteDnsRecordsResponse(AbstractModel):
"""DeleteDnsRecords返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteFunctionRequest(AbstractModel):
"""DeleteFunction请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _FunctionId: 函数 ID。
:type FunctionId: str
"""
self._ZoneId = None
self._FunctionId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def FunctionId(self):
"""函数 ID。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._FunctionId = params.get("FunctionId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteFunctionResponse(AbstractModel):
"""DeleteFunction返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteFunctionRulesRequest(AbstractModel):
"""DeleteFunctionRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleIds: 规则 ID 列表。
:type RuleIds: list of str
"""
self._ZoneId = None
self._RuleIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleIds(self):
"""规则 ID 列表。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleIds = params.get("RuleIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteFunctionRulesResponse(AbstractModel):
"""DeleteFunctionRules返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteL4ProxyRequest(AbstractModel):
"""DeleteL4Proxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
"""
self._ZoneId = None
self._ProxyId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteL4ProxyResponse(AbstractModel):
"""DeleteL4Proxy返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteL4ProxyRulesRequest(AbstractModel):
"""DeleteL4ProxyRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _RuleIds: 转发规则 ID 列表。单次最多支持 200 条转发规则。
:type RuleIds: list of str
"""
self._ZoneId = None
self._ProxyId = None
self._RuleIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RuleIds(self):
"""转发规则 ID 列表。单次最多支持 200 条转发规则。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._RuleIds = params.get("RuleIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteL4ProxyRulesResponse(AbstractModel):
"""DeleteL4ProxyRules返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteL7AccRulesRequest(AbstractModel):
"""DeleteL7AccRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleIds: 需要删除的规则 ID 列表。您可以通过 DescribeL7AccRules 获取 Ruleid。
:type RuleIds: list of str
"""
self._ZoneId = None
self._RuleIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleIds(self):
"""需要删除的规则 ID 列表。您可以通过 DescribeL7AccRules 获取 Ruleid。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleIds = params.get("RuleIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteL7AccRulesResponse(AbstractModel):
"""DeleteL7AccRules返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteLoadBalancerRequest(AbstractModel):
"""DeleteLoadBalancer请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _InstanceId: 负载均衡实例 ID。
:type InstanceId: str
"""
self._ZoneId = None
self._InstanceId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def InstanceId(self):
"""负载均衡实例 ID。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._InstanceId = params.get("InstanceId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteLoadBalancerResponse(AbstractModel):
"""DeleteLoadBalancer返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteOriginGroupRequest(AbstractModel):
"""DeleteOriginGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID
:type ZoneId: str
:param _GroupId: 源站组 ID,此参数必填。
:type GroupId: str
"""
self._ZoneId = None
self._GroupId = None
@property
def ZoneId(self):
"""站点 ID
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def GroupId(self):
"""源站组 ID,此参数必填。
:rtype: str
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._GroupId = params.get("GroupId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteOriginGroupResponse(AbstractModel):
"""DeleteOriginGroup返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteRealtimeLogDeliveryTaskRequest(AbstractModel):
"""DeleteRealtimeLogDeliveryTask请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _TaskId: 实时日志投递任务 ID。
:type TaskId: str
"""
self._ZoneId = None
self._TaskId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TaskId(self):
"""实时日志投递任务 ID。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._TaskId = params.get("TaskId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteRealtimeLogDeliveryTaskResponse(AbstractModel):
"""DeleteRealtimeLogDeliveryTask返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteRulesRequest(AbstractModel):
"""DeleteRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleIds: 指定删除的规则 ID 列表。
:type RuleIds: list of str
"""
self._ZoneId = None
self._RuleIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleIds(self):
"""指定删除的规则 ID 列表。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleIds = params.get("RuleIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteRulesResponse(AbstractModel):
"""DeleteRules返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteSecurityIPGroupRequest(AbstractModel):
"""DeleteSecurityIPGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 Id。
:type ZoneId: str
:param _GroupId: IP 组 Id。
:type GroupId: int
"""
self._ZoneId = None
self._GroupId = None
@property
def ZoneId(self):
"""站点 Id。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def GroupId(self):
"""IP 组 Id。
:rtype: int
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._GroupId = params.get("GroupId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteSecurityIPGroupResponse(AbstractModel):
"""DeleteSecurityIPGroup返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteSharedCNAMERequest(AbstractModel):
"""DeleteSharedCNAME请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 共享 CNAME 所属站点 ID。
:type ZoneId: str
:param _SharedCNAME: 需要删除的共享 CNAME。
:type SharedCNAME: str
"""
self._ZoneId = None
self._SharedCNAME = None
@property
def ZoneId(self):
"""共享 CNAME 所属站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def SharedCNAME(self):
"""需要删除的共享 CNAME。
:rtype: str
"""
return self._SharedCNAME
@SharedCNAME.setter
def SharedCNAME(self, SharedCNAME):
self._SharedCNAME = SharedCNAME
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._SharedCNAME = params.get("SharedCNAME")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteSharedCNAMEResponse(AbstractModel):
"""DeleteSharedCNAME返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeleteZoneRequest(AbstractModel):
"""DeleteZone请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
"""
self._ZoneId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeleteZoneResponse(AbstractModel):
"""DeleteZone返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DeliveryCondition(AbstractModel):
"""实时日志投递条件,用于定义投递日志范围。DeliveryCondition 数组内多个项的关系为“或”,内层 Conditions 数组内多个项的关系为“且”。
"""
def __init__(self):
r"""
:param _Conditions: 日志过滤条件,详细的过滤条件如下:
<li>EdgeResponseStatusCode:按照 EdgeOne 节点响应返回给客户端的状态码进行过滤。<br> 支持运算符:equal、great、less、great_equal、less_equal<br> 取值范围:任意大于等于 0 的整数</li>
<li>OriginResponseStatusCode:按照源站响应状态码进行过滤。<br> 支持运算符:equal、great、less、great_equal、less_equal<br> 取值范围:任意大于等于 -1 的整数</li>
<li>SecurityAction:按照请求命中安全规则后的最终处置动作进行过滤。<br> 支持运算符:equal<br> 可选项如下:<br> -:未知/未命中<br> Monitor:观察<br> JSChallenge:JavaScript 挑战<br> Deny:拦截<br> Allow:放行<br> BlockIP:IP 封禁<br> Redirect:重定向<br> ReturnCustomPage:返回自定义页面<br> ManagedChallenge:托管挑战<br> Silence:静默<br> LongDelay:长时间等待后响应<br> ShortDelay:短时间等待后响应</li>
<li>SecurityModule:按照最终处置请求的安全模块名称进行过滤。<br> 支持运算符:equal<br> 可选项如下:<br> -:未知/未命中<br> CustomRule:Web防护 - 自定义规则<br> RateLimitingCustomRule:Web防护 - 速率限制规则<br> ManagedRule:Web防护 - 托管规则<br> L7DDoS:Web防护 - CC攻击防护<br> BotManagement:Bot管理 - Bot基础管理<br> BotClientReputation:Bot管理 - 客户端画像分析<br> BotBehaviorAnalysis:Bot管理 - Bot智能分析<br> BotCustomRule:Bot管理 - 自定义Bot规则<br> BotActiveDetection:Bot管理 - 主动特征识别</li>
:type Conditions: list of QueryCondition
"""
self._Conditions = None
@property
def Conditions(self):
"""日志过滤条件,详细的过滤条件如下:
<li>EdgeResponseStatusCode:按照 EdgeOne 节点响应返回给客户端的状态码进行过滤。<br> 支持运算符:equal、great、less、great_equal、less_equal<br> 取值范围:任意大于等于 0 的整数</li>
<li>OriginResponseStatusCode:按照源站响应状态码进行过滤。<br> 支持运算符:equal、great、less、great_equal、less_equal<br> 取值范围:任意大于等于 -1 的整数</li>
<li>SecurityAction:按照请求命中安全规则后的最终处置动作进行过滤。<br> 支持运算符:equal<br> 可选项如下:<br> -:未知/未命中<br> Monitor:观察<br> JSChallenge:JavaScript 挑战<br> Deny:拦截<br> Allow:放行<br> BlockIP:IP 封禁<br> Redirect:重定向<br> ReturnCustomPage:返回自定义页面<br> ManagedChallenge:托管挑战<br> Silence:静默<br> LongDelay:长时间等待后响应<br> ShortDelay:短时间等待后响应</li>
<li>SecurityModule:按照最终处置请求的安全模块名称进行过滤。<br> 支持运算符:equal<br> 可选项如下:<br> -:未知/未命中<br> CustomRule:Web防护 - 自定义规则<br> RateLimitingCustomRule:Web防护 - 速率限制规则<br> ManagedRule:Web防护 - 托管规则<br> L7DDoS:Web防护 - CC攻击防护<br> BotManagement:Bot管理 - Bot基础管理<br> BotClientReputation:Bot管理 - 客户端画像分析<br> BotBehaviorAnalysis:Bot管理 - Bot智能分析<br> BotCustomRule:Bot管理 - 自定义Bot规则<br> BotActiveDetection:Bot管理 - 主动特征识别</li>
:rtype: list of QueryCondition
"""
return self._Conditions
@Conditions.setter
def Conditions(self, Conditions):
self._Conditions = Conditions
def _deserialize(self, params):
if params.get("Conditions") is not None:
self._Conditions = []
for item in params.get("Conditions"):
obj = QueryCondition()
obj._deserialize(item)
self._Conditions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeployConfigGroupVersionRequest(AbstractModel):
"""DeployConfigGroupVersion请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _EnvId: 环境 ID。请填写版本需要发布到的环境 ID。
:type EnvId: str
:param _ConfigGroupVersionInfos: 需要发布的版本信息。可以同时变更多个不同配置组的版本,每个配置组一次仅支持变更一个版本。
:type ConfigGroupVersionInfos: list of ConfigGroupVersionInfo
:param _Description: 变更说明。用于描述此次变更的内容、原因,最大支持 100 个字符。
:type Description: str
"""
self._ZoneId = None
self._EnvId = None
self._ConfigGroupVersionInfos = None
self._Description = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def EnvId(self):
"""环境 ID。请填写版本需要发布到的环境 ID。
:rtype: str
"""
return self._EnvId
@EnvId.setter
def EnvId(self, EnvId):
self._EnvId = EnvId
@property
def ConfigGroupVersionInfos(self):
"""需要发布的版本信息。可以同时变更多个不同配置组的版本,每个配置组一次仅支持变更一个版本。
:rtype: list of ConfigGroupVersionInfo
"""
return self._ConfigGroupVersionInfos
@ConfigGroupVersionInfos.setter
def ConfigGroupVersionInfos(self, ConfigGroupVersionInfos):
self._ConfigGroupVersionInfos = ConfigGroupVersionInfos
@property
def Description(self):
"""变更说明。用于描述此次变更的内容、原因,最大支持 100 个字符。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._EnvId = params.get("EnvId")
if params.get("ConfigGroupVersionInfos") is not None:
self._ConfigGroupVersionInfos = []
for item in params.get("ConfigGroupVersionInfos"):
obj = ConfigGroupVersionInfo()
obj._deserialize(item)
self._ConfigGroupVersionInfos.append(obj)
self._Description = params.get("Description")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DeployConfigGroupVersionResponse(AbstractModel):
"""DeployConfigGroupVersion返回参数结构体
"""
def __init__(self):
r"""
:param _RecordId: 发布记录 ID。
:type RecordId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RecordId = None
self._RequestId = None
@property
def RecordId(self):
"""发布记录 ID。
:rtype: str
"""
return self._RecordId
@RecordId.setter
def RecordId(self, RecordId):
self._RecordId = RecordId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RecordId = params.get("RecordId")
self._RequestId = params.get("RequestId")
class DeployRecord(AbstractModel):
"""配置组版本发布记录详情。
"""
def __init__(self):
r"""
:param _ConfigGroupVersionInfos: 发布版本的详细信息。
:type ConfigGroupVersionInfos: list of ConfigGroupVersionInfo
:param _DeployTime: 发布时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type DeployTime: str
:param _Status: 发布状态,取值有:
<li> deploying :发布中;</li>
<li>failure :发布失败;</li>
<li>success: 发布成功。</li>
:type Status: str
:param _Message: 发布结果信息。
:type Message: str
:param _RecordId: 发布记录 ID。
注意:此字段可能返回 null,表示取不到有效值。
:type RecordId: str
:param _Description: 变更说明。
:type Description: str
"""
self._ConfigGroupVersionInfos = None
self._DeployTime = None
self._Status = None
self._Message = None
self._RecordId = None
self._Description = None
@property
def ConfigGroupVersionInfos(self):
"""发布版本的详细信息。
:rtype: list of ConfigGroupVersionInfo
"""
return self._ConfigGroupVersionInfos
@ConfigGroupVersionInfos.setter
def ConfigGroupVersionInfos(self, ConfigGroupVersionInfos):
self._ConfigGroupVersionInfos = ConfigGroupVersionInfos
@property
def DeployTime(self):
"""发布时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._DeployTime
@DeployTime.setter
def DeployTime(self, DeployTime):
self._DeployTime = DeployTime
@property
def Status(self):
"""发布状态,取值有:
<li> deploying :发布中;</li>
<li>failure :发布失败;</li>
<li>success: 发布成功。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Message(self):
"""发布结果信息。
:rtype: str
"""
return self._Message
@Message.setter
def Message(self, Message):
self._Message = Message
@property
def RecordId(self):
"""发布记录 ID。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._RecordId
@RecordId.setter
def RecordId(self, RecordId):
self._RecordId = RecordId
@property
def Description(self):
"""变更说明。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
def _deserialize(self, params):
if params.get("ConfigGroupVersionInfos") is not None:
self._ConfigGroupVersionInfos = []
for item in params.get("ConfigGroupVersionInfos"):
obj = ConfigGroupVersionInfo()
obj._deserialize(item)
self._ConfigGroupVersionInfos.append(obj)
self._DeployTime = params.get("DeployTime")
self._Status = params.get("Status")
self._Message = params.get("Message")
self._RecordId = params.get("RecordId")
self._Description = params.get("Description")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeAccelerationDomainsRequest(AbstractModel):
"""DescribeAccelerationDomains请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 加速域名所属站点 ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量,默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目,默认值:20,上限:200。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有域名信息。详细的过滤条件如下:
<li>domain-name:按照加速域名进行过滤;</li>
<li>origin-type:按照源站类型进行过滤;</li>
<li>origin:按照主源站地址进行过滤;</li>
<li>backup-origin: 按照备用源站地址进行过滤;</li>
<li>domain-cname:按照 CNAME 进行过滤;</li>
<li>share-cname:按照共享 CNAME 进行过滤;</li>
:type Filters: list of AdvancedFilter
:param _Order: 可根据该字段对返回结果进行排序,取值有:
<li>created_on:加速域名创建时间;</li>
<li>domain-name:加速域名。</li>不填写时,默认对返回结果按照 domain-name 排序。
:type Order: str
:param _Direction: 排序方向,如果是字段值为数字,则根据数字大小排序;如果字段值为文本,则根据 ascill 码的大小排序。取值有:
<li>asc:升序排列;</li>
<li>desc:降序排列。</li>不填写使用默认值 asc。
:type Direction: str
:param _Match: 匹配方式,取值有:
<li>all:返回匹配所有查询条件的加速域名;</li>
<li>any:返回匹配任意一个查询条件的加速域名。</li>不填写时默认值为 all。
:type Match: str
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
self._Order = None
self._Direction = None
self._Match = None
@property
def ZoneId(self):
"""加速域名所属站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量,默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目,默认值:20,上限:200。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有域名信息。详细的过滤条件如下:
<li>domain-name:按照加速域名进行过滤;</li>
<li>origin-type:按照源站类型进行过滤;</li>
<li>origin:按照主源站地址进行过滤;</li>
<li>backup-origin: 按照备用源站地址进行过滤;</li>
<li>domain-cname:按照 CNAME 进行过滤;</li>
<li>share-cname:按照共享 CNAME 进行过滤;</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Order(self):
"""可根据该字段对返回结果进行排序,取值有:
<li>created_on:加速域名创建时间;</li>
<li>domain-name:加速域名。</li>不填写时,默认对返回结果按照 domain-name 排序。
:rtype: str
"""
return self._Order
@Order.setter
def Order(self, Order):
self._Order = Order
@property
def Direction(self):
"""排序方向,如果是字段值为数字,则根据数字大小排序;如果字段值为文本,则根据 ascill 码的大小排序。取值有:
<li>asc:升序排列;</li>
<li>desc:降序排列。</li>不填写使用默认值 asc。
:rtype: str
"""
return self._Direction
@Direction.setter
def Direction(self, Direction):
self._Direction = Direction
@property
def Match(self):
"""匹配方式,取值有:
<li>all:返回匹配所有查询条件的加速域名;</li>
<li>any:返回匹配任意一个查询条件的加速域名。</li>不填写时默认值为 all。
:rtype: str
"""
return self._Match
@Match.setter
def Match(self, Match):
self._Match = Match
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
self._Order = params.get("Order")
self._Direction = params.get("Direction")
self._Match = params.get("Match")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeAccelerationDomainsResponse(AbstractModel):
"""DescribeAccelerationDomains返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合查询条件的加速域名个数。
:type TotalCount: int
:param _AccelerationDomains: 符合查询条件的所有加速域名的信息。
:type AccelerationDomains: list of AccelerationDomain
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._AccelerationDomains = None
self._RequestId = None
@property
def TotalCount(self):
"""符合查询条件的加速域名个数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def AccelerationDomains(self):
"""符合查询条件的所有加速域名的信息。
:rtype: list of AccelerationDomain
"""
return self._AccelerationDomains
@AccelerationDomains.setter
def AccelerationDomains(self, AccelerationDomains):
self._AccelerationDomains = AccelerationDomains
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("AccelerationDomains") is not None:
self._AccelerationDomains = []
for item in params.get("AccelerationDomains"):
obj = AccelerationDomain()
obj._deserialize(item)
self._AccelerationDomains.append(obj)
self._RequestId = params.get("RequestId")
class DescribeAliasDomainsRequest(AbstractModel):
"""DescribeAliasDomains请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>target-name:目标域名名称进行过滤;</li>
<li>alias-name:按照别称域名名称进行过滤。</li>模糊查询时仅支持过滤字段名为 alias-name。
:type Filters: list of AdvancedFilter
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>target-name:目标域名名称进行过滤;</li>
<li>alias-name:按照别称域名名称进行过滤。</li>模糊查询时仅支持过滤字段名为 alias-name。
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeAliasDomainsResponse(AbstractModel):
"""DescribeAliasDomains返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合条件的别称域名个数。
:type TotalCount: int
:param _AliasDomains: 别称域名详细信息列表。
:type AliasDomains: list of AliasDomain
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._AliasDomains = None
self._RequestId = None
@property
def TotalCount(self):
"""符合条件的别称域名个数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def AliasDomains(self):
"""别称域名详细信息列表。
:rtype: list of AliasDomain
"""
return self._AliasDomains
@AliasDomains.setter
def AliasDomains(self, AliasDomains):
self._AliasDomains = AliasDomains
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("AliasDomains") is not None:
self._AliasDomains = []
for item in params.get("AliasDomains"):
obj = AliasDomain()
obj._deserialize(item)
self._AliasDomains.append(obj)
self._RequestId = params.get("RequestId")
class DescribeApplicationProxiesRequest(AbstractModel):
"""DescribeApplicationProxies请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。该参数必填。
:type ZoneId: str
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:<li>proxy-id<br> 按照【<strong>代理ID</strong>】进行过滤。代理ID形如:proxy-ev2sawbwfd。<br> 类型:String<br> 必选:否</li><li>zone-id<br> 按照【<strong>站点ID</strong>】进行过滤。站点ID形如:zone-vawer2vadg。<br> 类型:String<br> 必选:否</li><li>rule-tag<br> 按照【<strong>规则标签</strong>】对应用代理下的规则进行过滤。规则标签形如:rule-service-1。<br> 类型:String<br> 必选:否</li>
:type Filters: list of Filter
:param _Offset: 分页查询偏移量。默认为0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
"""
self._ZoneId = None
self._Filters = None
self._Offset = None
self._Limit = None
@property
def ZoneId(self):
"""站点ID。该参数必填。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:<li>proxy-id<br> 按照【<strong>代理ID</strong>】进行过滤。代理ID形如:proxy-ev2sawbwfd。<br> 类型:String<br> 必选:否</li><li>zone-id<br> 按照【<strong>站点ID</strong>】进行过滤。站点ID形如:zone-vawer2vadg。<br> 类型:String<br> 必选:否</li><li>rule-tag<br> 按照【<strong>规则标签</strong>】对应用代理下的规则进行过滤。规则标签形如:rule-service-1。<br> 类型:String<br> 必选:否</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量。默认为0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeApplicationProxiesResponse(AbstractModel):
"""DescribeApplicationProxies返回参数结构体
"""
def __init__(self):
r"""
:param _ApplicationProxies: 应用代理列表。
:type ApplicationProxies: list of ApplicationProxy
:param _TotalCount: 记录总数。
:type TotalCount: int
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ApplicationProxies = None
self._TotalCount = None
self._RequestId = None
@property
def ApplicationProxies(self):
"""应用代理列表。
:rtype: list of ApplicationProxy
"""
return self._ApplicationProxies
@ApplicationProxies.setter
def ApplicationProxies(self, ApplicationProxies):
self._ApplicationProxies = ApplicationProxies
@property
def TotalCount(self):
"""记录总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("ApplicationProxies") is not None:
self._ApplicationProxies = []
for item in params.get("ApplicationProxies"):
obj = ApplicationProxy()
obj._deserialize(item)
self._ApplicationProxies.append(obj)
self._TotalCount = params.get("TotalCount")
self._RequestId = params.get("RequestId")
class DescribeAvailablePlansRequest(AbstractModel):
"""DescribeAvailablePlans请求参数结构体
"""
class DescribeAvailablePlansResponse(AbstractModel):
"""DescribeAvailablePlans返回参数结构体
"""
def __init__(self):
r"""
:param _PlanInfo: 当前账户可购买套餐类型及相关信息。
注意:此字段可能返回 null,表示取不到有效值。
:type PlanInfo: list of PlanInfo
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._PlanInfo = None
self._RequestId = None
@property
def PlanInfo(self):
"""当前账户可购买套餐类型及相关信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of PlanInfo
"""
return self._PlanInfo
@PlanInfo.setter
def PlanInfo(self, PlanInfo):
self._PlanInfo = PlanInfo
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("PlanInfo") is not None:
self._PlanInfo = []
for item in params.get("PlanInfo"):
obj = PlanInfo()
obj._deserialize(item)
self._PlanInfo.append(obj)
self._RequestId = params.get("RequestId")
class DescribeBillingDataRequest(AbstractModel):
"""DescribeBillingData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 起始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _MetricName: 指标列表,取值有:
<li>acc_flux: 内容加速流量,单位为 Byte;</li>
<li>smt_flux: 智能加速流量,单位为 Byte;</li>
<li>l4_flux: 四层加速流量,单位为 Byte;</li>
<li>sec_flux: 独立防护流量,单位为 Byte;</li>
<li>zxctg_flux: 中国大陆网络优化流量,单位为 Byte;</li>
<li>acc_bandwidth: 内容加速带宽,单位为 bps;</li>
<li>smt_bandwidth: 智能加速带宽,单位为 bps;</li>
<li>l4_bandwidth: 四层加速带宽,单位为 bps;</li>
<li>sec_bandwidth: 独立防护带宽,单位为 bps;</li>
<li>zxctg_bandwidth: 中国大陆网络优化带宽,单位为 bps;</li>
<li>sec_request_clean: HTTP/HTTPS 请求,单位为次;</li>
<li>smt_request_clean: 智能加速请求,单位为次;</li>
<li>quic_request: QUIC 请求,单位为次;</li>
<li>bot_request_clean: Bot 请求,单位为次;</li>
<li>cls_count: 实时日志推送条数,单位为条;</li>
<li>ddos_bandwidth: 弹性 DDoS 防护带宽,单位为 bps;</li>
<li>total_transcode:所有规格音频,视频即时转码,转封装时长,单位为秒;</li>
<li>remux:转封装时长,单位为秒;</li>
<li>transcode_audio:音频转码时长,单位为秒;</li>
<li>transcode_H264_SD:H.264 编码方式的标清视频(短边 <= 480 px)时长,单位为秒;</li>
<li>transcode_H264_HD:H.264 编码方式的高清视频(短边 <= 720 px)时长,单位为秒;</li>
<li>transcode_H264_FHD:H.264 编码方式的全高清视频(短边 <= 1080 px)时长,单位为秒;</li>
<li>transcode_H264_2K:H.264 编码方式的 2K 视频(短边 <= 1440 px)时长,单位为秒。</li>
:type MetricName: str
:param _Interval: 查询时间粒度,取值有:
<li>5min:5 分钟粒度;</li>
<li>hour:1 小时粒度;</li>
<li>day:1 天粒度。</li>
:type Interval: str
:param _Filters: 过滤条件,详细的过滤条件取值如下:
<li>host:按照域名进行过滤。示例值:test.example.com。<br></li>
<li>proxy-id:按照四层代理实例 ID 进行过滤。示例值:sid-2rugn89bkla9。<br></li>
<li>region-id:按照计费大区进行过滤。可选项如下:<br> CH:中国大陆境内<br> AF:非洲<br> AS1:亚太一区<br> AS2:亚太二区<br> AS3:亚太三区<br> EU:欧洲<br> MidEast:中东<br> NA:北美<br> SA:南美</li>
:type Filters: list of BillingDataFilter
"""
self._StartTime = None
self._EndTime = None
self._ZoneIds = None
self._MetricName = None
self._Interval = None
self._Filters = None
@property
def StartTime(self):
"""起始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def MetricName(self):
"""指标列表,取值有:
<li>acc_flux: 内容加速流量,单位为 Byte;</li>
<li>smt_flux: 智能加速流量,单位为 Byte;</li>
<li>l4_flux: 四层加速流量,单位为 Byte;</li>
<li>sec_flux: 独立防护流量,单位为 Byte;</li>
<li>zxctg_flux: 中国大陆网络优化流量,单位为 Byte;</li>
<li>acc_bandwidth: 内容加速带宽,单位为 bps;</li>
<li>smt_bandwidth: 智能加速带宽,单位为 bps;</li>
<li>l4_bandwidth: 四层加速带宽,单位为 bps;</li>
<li>sec_bandwidth: 独立防护带宽,单位为 bps;</li>
<li>zxctg_bandwidth: 中国大陆网络优化带宽,单位为 bps;</li>
<li>sec_request_clean: HTTP/HTTPS 请求,单位为次;</li>
<li>smt_request_clean: 智能加速请求,单位为次;</li>
<li>quic_request: QUIC 请求,单位为次;</li>
<li>bot_request_clean: Bot 请求,单位为次;</li>
<li>cls_count: 实时日志推送条数,单位为条;</li>
<li>ddos_bandwidth: 弹性 DDoS 防护带宽,单位为 bps;</li>
<li>total_transcode:所有规格音频,视频即时转码,转封装时长,单位为秒;</li>
<li>remux:转封装时长,单位为秒;</li>
<li>transcode_audio:音频转码时长,单位为秒;</li>
<li>transcode_H264_SD:H.264 编码方式的标清视频(短边 <= 480 px)时长,单位为秒;</li>
<li>transcode_H264_HD:H.264 编码方式的高清视频(短边 <= 720 px)时长,单位为秒;</li>
<li>transcode_H264_FHD:H.264 编码方式的全高清视频(短边 <= 1080 px)时长,单位为秒;</li>
<li>transcode_H264_2K:H.264 编码方式的 2K 视频(短边 <= 1440 px)时长,单位为秒。</li>
:rtype: str
"""
return self._MetricName
@MetricName.setter
def MetricName(self, MetricName):
self._MetricName = MetricName
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>5min:5 分钟粒度;</li>
<li>hour:1 小时粒度;</li>
<li>day:1 天粒度。</li>
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Filters(self):
"""过滤条件,详细的过滤条件取值如下:
<li>host:按照域名进行过滤。示例值:test.example.com。<br></li>
<li>proxy-id:按照四层代理实例 ID 进行过滤。示例值:sid-2rugn89bkla9。<br></li>
<li>region-id:按照计费大区进行过滤。可选项如下:<br> CH:中国大陆境内<br> AF:非洲<br> AS1:亚太一区<br> AS2:亚太二区<br> AS3:亚太三区<br> EU:欧洲<br> MidEast:中东<br> NA:北美<br> SA:南美</li>
:rtype: list of BillingDataFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._ZoneIds = params.get("ZoneIds")
self._MetricName = params.get("MetricName")
self._Interval = params.get("Interval")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = BillingDataFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeBillingDataResponse(AbstractModel):
"""DescribeBillingData返回参数结构体
"""
def __init__(self):
r"""
:param _Data: 数据点列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of BillingData
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Data = None
self._RequestId = None
@property
def Data(self):
"""数据点列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of BillingData
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = BillingData()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeConfigGroupVersionDetailRequest(AbstractModel):
"""DescribeConfigGroupVersionDetail请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _VersionId: 版本 ID。
:type VersionId: str
"""
self._ZoneId = None
self._VersionId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def VersionId(self):
"""版本 ID。
:rtype: str
"""
return self._VersionId
@VersionId.setter
def VersionId(self, VersionId):
self._VersionId = VersionId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._VersionId = params.get("VersionId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeConfigGroupVersionDetailResponse(AbstractModel):
"""DescribeConfigGroupVersionDetail返回参数结构体
"""
def __init__(self):
r"""
:param _ConfigGroupVersionInfo: 版本信息。
:type ConfigGroupVersionInfo: :class:`tencentcloud.teo.v20220901.models.ConfigGroupVersionInfo`
:param _Content: 版本文件的内容。以 JSON 格式返回。
:type Content: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ConfigGroupVersionInfo = None
self._Content = None
self._RequestId = None
@property
def ConfigGroupVersionInfo(self):
"""版本信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.ConfigGroupVersionInfo`
"""
return self._ConfigGroupVersionInfo
@ConfigGroupVersionInfo.setter
def ConfigGroupVersionInfo(self, ConfigGroupVersionInfo):
self._ConfigGroupVersionInfo = ConfigGroupVersionInfo
@property
def Content(self):
"""版本文件的内容。以 JSON 格式返回。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("ConfigGroupVersionInfo") is not None:
self._ConfigGroupVersionInfo = ConfigGroupVersionInfo()
self._ConfigGroupVersionInfo._deserialize(params.get("ConfigGroupVersionInfo"))
self._Content = params.get("Content")
self._RequestId = params.get("RequestId")
class DescribeConfigGroupVersionsRequest(AbstractModel):
"""DescribeConfigGroupVersions请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _GroupId: 配置组 ID。
:type GroupId: str
:param _Filters: 过滤条件,Filters.Values 的上限为 20,该参数不填写时,返回所选配置组下的所有版本信息。详细的过滤条件如下:
<li>version-id:按照版本 ID 进行过滤;</li>
:type Filters: list of AdvancedFilter
:param _Offset: 分页查询偏移量。默认值为 0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值为 20,最大值为 100。
:type Limit: int
"""
self._ZoneId = None
self._GroupId = None
self._Filters = None
self._Offset = None
self._Limit = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def GroupId(self):
"""配置组 ID。
:rtype: str
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20,该参数不填写时,返回所选配置组下的所有版本信息。详细的过滤条件如下:
<li>version-id:按照版本 ID 进行过滤;</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量。默认值为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值为 20,最大值为 100。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._GroupId = params.get("GroupId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeConfigGroupVersionsResponse(AbstractModel):
"""DescribeConfigGroupVersions返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 版本总数。
:type TotalCount: int
:param _ConfigGroupVersionInfos: 版本信息列表。
:type ConfigGroupVersionInfos: list of ConfigGroupVersionInfo
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._ConfigGroupVersionInfos = None
self._RequestId = None
@property
def TotalCount(self):
"""版本总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def ConfigGroupVersionInfos(self):
"""版本信息列表。
:rtype: list of ConfigGroupVersionInfo
"""
return self._ConfigGroupVersionInfos
@ConfigGroupVersionInfos.setter
def ConfigGroupVersionInfos(self, ConfigGroupVersionInfos):
self._ConfigGroupVersionInfos = ConfigGroupVersionInfos
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("ConfigGroupVersionInfos") is not None:
self._ConfigGroupVersionInfos = []
for item in params.get("ConfigGroupVersionInfos"):
obj = ConfigGroupVersionInfo()
obj._deserialize(item)
self._ConfigGroupVersionInfos.append(obj)
self._RequestId = params.get("RequestId")
class DescribeContentIdentifiersRequest(AbstractModel):
"""DescribeContentIdentifiers请求参数结构体
"""
def __init__(self):
r"""
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:100。
:type Limit: int
:param _Filters: 过滤条件,Filters 的上限为 20,Filters.Values 的上限为 20。该参数不填写时,默认返回当前 AppId 下有权限的内容标识符。详细的过滤条件如下:<li>description:按照内容标识符描述批量进行过滤;例如:test;</li><li>content-id:按照内容标识符 ID 批量进行过滤;例如:eocontent-2noz78a8ev6k;</li><li>tag-key:按照标签键进行过滤;</li> <li>tag-value: 按照标签值进行过滤;</li><li>status:按照内容标识符状态进行过滤,取值有:active:生效中;deleted:已删除。</li>仅支持按照 description 模糊查询,其余字段需要精准查询。
:type Filters: list of AdvancedFilter
"""
self._Offset = None
self._Limit = None
self._Filters = None
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:100。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters 的上限为 20,Filters.Values 的上限为 20。该参数不填写时,默认返回当前 AppId 下有权限的内容标识符。详细的过滤条件如下:<li>description:按照内容标识符描述批量进行过滤;例如:test;</li><li>content-id:按照内容标识符 ID 批量进行过滤;例如:eocontent-2noz78a8ev6k;</li><li>tag-key:按照标签键进行过滤;</li> <li>tag-value: 按照标签值进行过滤;</li><li>status:按照内容标识符状态进行过滤,取值有:active:生效中;deleted:已删除。</li>仅支持按照 description 模糊查询,其余字段需要精准查询。
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeContentIdentifiersResponse(AbstractModel):
"""DescribeContentIdentifiers返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合过滤条件的内容标识符总数。
:type TotalCount: int
:param _ContentIdentifiers: 内容标识符详细内容列表。
:type ContentIdentifiers: list of ContentIdentifier
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._ContentIdentifiers = None
self._RequestId = None
@property
def TotalCount(self):
"""符合过滤条件的内容标识符总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def ContentIdentifiers(self):
"""内容标识符详细内容列表。
:rtype: list of ContentIdentifier
"""
return self._ContentIdentifiers
@ContentIdentifiers.setter
def ContentIdentifiers(self, ContentIdentifiers):
self._ContentIdentifiers = ContentIdentifiers
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("ContentIdentifiers") is not None:
self._ContentIdentifiers = []
for item in params.get("ContentIdentifiers"):
obj = ContentIdentifier()
obj._deserialize(item)
self._ContentIdentifiers.append(obj)
self._RequestId = params.get("RequestId")
class DescribeContentQuotaRequest(AbstractModel):
"""DescribeContentQuota请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
"""
self._ZoneId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeContentQuotaResponse(AbstractModel):
"""DescribeContentQuota返回参数结构体
"""
def __init__(self):
r"""
:param _PurgeQuota: 刷新相关配额。
注意:此字段可能返回 null,表示取不到有效值。
:type PurgeQuota: list of Quota
:param _PrefetchQuota: 预热相关配额。
注意:此字段可能返回 null,表示取不到有效值。
:type PrefetchQuota: list of Quota
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._PurgeQuota = None
self._PrefetchQuota = None
self._RequestId = None
@property
def PurgeQuota(self):
"""刷新相关配额。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of Quota
"""
return self._PurgeQuota
@PurgeQuota.setter
def PurgeQuota(self, PurgeQuota):
self._PurgeQuota = PurgeQuota
@property
def PrefetchQuota(self):
"""预热相关配额。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of Quota
"""
return self._PrefetchQuota
@PrefetchQuota.setter
def PrefetchQuota(self, PrefetchQuota):
self._PrefetchQuota = PrefetchQuota
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("PurgeQuota") is not None:
self._PurgeQuota = []
for item in params.get("PurgeQuota"):
obj = Quota()
obj._deserialize(item)
self._PurgeQuota.append(obj)
if params.get("PrefetchQuota") is not None:
self._PrefetchQuota = []
for item in params.get("PrefetchQuota"):
obj = Quota()
obj._deserialize(item)
self._PrefetchQuota.append(obj)
self._RequestId = params.get("RequestId")
class DescribeCustomErrorPagesRequest(AbstractModel):
"""DescribeCustomErrorPages请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Filters: 过滤条件,Filters.Values 的上限为20,详细的过滤条件Name值如下:
<li>page-id: 按照页面 ID 进行过滤;</li>
<li>name: 按照页面名称进行过滤;</li>
<li>description:按照页面描述过滤;</li>
<li>content-type:按照页面类型过滤。</li>
:type Filters: list of AdvancedFilter
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
"""
self._ZoneId = None
self._Filters = None
self._Offset = None
self._Limit = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为20,详细的过滤条件Name值如下:
<li>page-id: 按照页面 ID 进行过滤;</li>
<li>name: 按照页面名称进行过滤;</li>
<li>description:按照页面描述过滤;</li>
<li>content-type:按照页面类型过滤。</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeCustomErrorPagesResponse(AbstractModel):
"""DescribeCustomErrorPages返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 自定义错误页面总数。
:type TotalCount: int
:param _ErrorPages: 自定义错误页面数据列表。
:type ErrorPages: list of CustomErrorPage
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._ErrorPages = None
self._RequestId = None
@property
def TotalCount(self):
"""自定义错误页面总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def ErrorPages(self):
"""自定义错误页面数据列表。
:rtype: list of CustomErrorPage
"""
return self._ErrorPages
@ErrorPages.setter
def ErrorPages(self, ErrorPages):
self._ErrorPages = ErrorPages
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("ErrorPages") is not None:
self._ErrorPages = []
for item in params.get("ErrorPages"):
obj = CustomErrorPage()
obj._deserialize(item)
self._ErrorPages.append(obj)
self._RequestId = params.get("RequestId")
class DescribeDDoSAttackDataRequest(AbstractModel):
"""DescribeDDoSAttackData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricNames: 统计指标列表,取值有:
<li>ddos_attackMaxBandwidth:攻击带宽峰值;</li>
<li>ddos_attackMaxPackageRate:攻击包速率峰值 ;</li>
<li>ddos_attackBandwidth:攻击带宽曲线;</li>
<li>ddos_attackPackageRate:攻击包速率曲线。</li>
:type MetricNames: list of str
:param _ZoneIds: 站点集合,此参数必填。
:type ZoneIds: list of str
:param _PolicyIds: DDoS策略组ID列表,不填默认选择全部策略ID。
:type PolicyIds: list of int
:param _Interval: 查询时间粒度,取值有:
<li>min:1分钟;</li>
<li>5min:5分钟;</li>
<li>hour:1小时;</li>
<li>day:1天。</li>不填将根据开始时间与结束时间的间隔自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。
:type Interval: str
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricNames = None
self._ZoneIds = None
self._PolicyIds = None
self._Interval = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricNames(self):
"""统计指标列表,取值有:
<li>ddos_attackMaxBandwidth:攻击带宽峰值;</li>
<li>ddos_attackMaxPackageRate:攻击包速率峰值 ;</li>
<li>ddos_attackBandwidth:攻击带宽曲线;</li>
<li>ddos_attackPackageRate:攻击包速率曲线。</li>
:rtype: list of str
"""
return self._MetricNames
@MetricNames.setter
def MetricNames(self, MetricNames):
self._MetricNames = MetricNames
@property
def ZoneIds(self):
"""站点集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def PolicyIds(self):
"""DDoS策略组ID列表,不填默认选择全部策略ID。
:rtype: list of int
"""
return self._PolicyIds
@PolicyIds.setter
def PolicyIds(self, PolicyIds):
self._PolicyIds = PolicyIds
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>min:1分钟;</li>
<li>5min:5分钟;</li>
<li>hour:1小时;</li>
<li>day:1天。</li>不填将根据开始时间与结束时间的间隔自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricNames = params.get("MetricNames")
self._ZoneIds = params.get("ZoneIds")
self._PolicyIds = params.get("PolicyIds")
self._Interval = params.get("Interval")
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeDDoSAttackDataResponse(AbstractModel):
"""DescribeDDoSAttackData返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: DDoS攻击数据内容列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of SecEntry
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""DDoS攻击数据内容列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of SecEntry
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = SecEntry()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeDDoSAttackEventRequest(AbstractModel):
"""DescribeDDoSAttackEvent请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间,时间范围为 30 天。
:type StartTime: str
:param _EndTime: 结束时间,时间范围为 30 天。
:type EndTime: str
:param _PolicyIds: ddos策略组集合,不填默认选择全部策略。
:type PolicyIds: list of int
:param _ZoneIds: 站点集合,此参数必填。
:type ZoneIds: list of str
:param _Limit: 分页查询的限制数目,默认值为20,最大查询条目为1000。
:type Limit: int
:param _Offset: 分页的偏移量,默认值为0。
:type Offset: int
:param _ShowDetail: 展示攻击详情的参数,若填false,默认只返回攻击次数,不返回攻击详情;若填true,返回攻击详情。
:type ShowDetail: bool
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据;</li>不填默认取值为global。
:type Area: str
:param _OrderBy: 排序字段,取值有:
<li>MaxBandWidth:带宽峰值;</li>
<li>AttackStartTime:攻击开始时间。</li>不填默认值为:AttackStartTime。
:type OrderBy: str
:param _OrderType: 排序方式,取值有:
<li>asc:升序方式;</li>
<li>desc:降序方式。</li>不填默认值为:desc。
:type OrderType: str
"""
self._StartTime = None
self._EndTime = None
self._PolicyIds = None
self._ZoneIds = None
self._Limit = None
self._Offset = None
self._ShowDetail = None
self._Area = None
self._OrderBy = None
self._OrderType = None
@property
def StartTime(self):
"""开始时间,时间范围为 30 天。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间,时间范围为 30 天。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def PolicyIds(self):
"""ddos策略组集合,不填默认选择全部策略。
:rtype: list of int
"""
return self._PolicyIds
@PolicyIds.setter
def PolicyIds(self, PolicyIds):
self._PolicyIds = PolicyIds
@property
def ZoneIds(self):
"""站点集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Limit(self):
"""分页查询的限制数目,默认值为20,最大查询条目为1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Offset(self):
"""分页的偏移量,默认值为0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def ShowDetail(self):
"""展示攻击详情的参数,若填false,默认只返回攻击次数,不返回攻击详情;若填true,返回攻击详情。
:rtype: bool
"""
return self._ShowDetail
@ShowDetail.setter
def ShowDetail(self, ShowDetail):
self._ShowDetail = ShowDetail
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据;</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def OrderBy(self):
"""排序字段,取值有:
<li>MaxBandWidth:带宽峰值;</li>
<li>AttackStartTime:攻击开始时间。</li>不填默认值为:AttackStartTime。
:rtype: str
"""
return self._OrderBy
@OrderBy.setter
def OrderBy(self, OrderBy):
self._OrderBy = OrderBy
@property
def OrderType(self):
"""排序方式,取值有:
<li>asc:升序方式;</li>
<li>desc:降序方式。</li>不填默认值为:desc。
:rtype: str
"""
return self._OrderType
@OrderType.setter
def OrderType(self, OrderType):
self._OrderType = OrderType
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._PolicyIds = params.get("PolicyIds")
self._ZoneIds = params.get("ZoneIds")
self._Limit = params.get("Limit")
self._Offset = params.get("Offset")
self._ShowDetail = params.get("ShowDetail")
self._Area = params.get("Area")
self._OrderBy = params.get("OrderBy")
self._OrderType = params.get("OrderType")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeDDoSAttackEventResponse(AbstractModel):
"""DescribeDDoSAttackEvent返回参数结构体
"""
def __init__(self):
r"""
:param _Data: DDOS攻击事件数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of DDoSAttackEvent
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Data = None
self._TotalCount = None
self._RequestId = None
@property
def Data(self):
"""DDOS攻击事件数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of DDoSAttackEvent
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = DDoSAttackEvent()
obj._deserialize(item)
self._Data.append(obj)
self._TotalCount = params.get("TotalCount")
self._RequestId = params.get("RequestId")
class DescribeDDoSAttackTopDataRequest(AbstractModel):
"""DescribeDDoSAttackTopData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricName: 查询的统计指标,取值有:
<li>ddos_attackFlux_protocol:按各协议的攻击流量排行;</li>
<li>ddos_attackPackageNum_protocol:按各协议的攻击包量排行;</li>
<li>ddos_attackNum_attackType:按各攻击类型的攻击数量排行;</li>
<li>ddos_attackNum_sregion:按攻击源地区的攻击数量排行;</li>
<li>ddos_attackFlux_sip:按攻击源IP的攻击数量排行;</li>
<li>ddos_attackFlux_sregion:按攻击源地区的攻击数量排行。</li>
:type MetricName: str
:param _ZoneIds: 站点ID集合,此参数必填。
:type ZoneIds: list of str
:param _PolicyIds: DDoS策略组ID集合,不填默认选择全部策略ID。
:type PolicyIds: list of int
:param _AttackType: 攻击类型,取值有:
<li>flood:洪泛攻击;</li>
<li>icmpFlood:icmp洪泛攻击;</li>
<li>all:所有的攻击类型。</li>不填默认为all,表示查询全部攻击类型。
:type AttackType: str
:param _ProtocolType: 协议类型,取值有:
<li>tcp:tcp协议;</li>
<li>udp:udp协议;</li>
<li>all:所有的协议类型。</li>不填默认为all,表示查询所有协议。
:type ProtocolType: str
:param _Port: 端口号。
:type Port: int
:param _Limit: 查询前多少个数据,不填默认默认为10, 表示查询前top 10的数据。
:type Limit: int
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据。</li>不填将根据用户所在地智能选择地区。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricName = None
self._ZoneIds = None
self._PolicyIds = None
self._AttackType = None
self._ProtocolType = None
self._Port = None
self._Limit = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricName(self):
"""查询的统计指标,取值有:
<li>ddos_attackFlux_protocol:按各协议的攻击流量排行;</li>
<li>ddos_attackPackageNum_protocol:按各协议的攻击包量排行;</li>
<li>ddos_attackNum_attackType:按各攻击类型的攻击数量排行;</li>
<li>ddos_attackNum_sregion:按攻击源地区的攻击数量排行;</li>
<li>ddos_attackFlux_sip:按攻击源IP的攻击数量排行;</li>
<li>ddos_attackFlux_sregion:按攻击源地区的攻击数量排行。</li>
:rtype: str
"""
return self._MetricName
@MetricName.setter
def MetricName(self, MetricName):
self._MetricName = MetricName
@property
def ZoneIds(self):
"""站点ID集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def PolicyIds(self):
"""DDoS策略组ID集合,不填默认选择全部策略ID。
:rtype: list of int
"""
return self._PolicyIds
@PolicyIds.setter
def PolicyIds(self, PolicyIds):
self._PolicyIds = PolicyIds
@property
def AttackType(self):
"""攻击类型,取值有:
<li>flood:洪泛攻击;</li>
<li>icmpFlood:icmp洪泛攻击;</li>
<li>all:所有的攻击类型。</li>不填默认为all,表示查询全部攻击类型。
:rtype: str
"""
return self._AttackType
@AttackType.setter
def AttackType(self, AttackType):
self._AttackType = AttackType
@property
def ProtocolType(self):
"""协议类型,取值有:
<li>tcp:tcp协议;</li>
<li>udp:udp协议;</li>
<li>all:所有的协议类型。</li>不填默认为all,表示查询所有协议。
:rtype: str
"""
return self._ProtocolType
@ProtocolType.setter
def ProtocolType(self, ProtocolType):
self._ProtocolType = ProtocolType
@property
def Port(self):
"""端口号。
:rtype: int
"""
return self._Port
@Port.setter
def Port(self, Port):
self._Port = Port
@property
def Limit(self):
"""查询前多少个数据,不填默认默认为10, 表示查询前top 10的数据。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据。</li>不填将根据用户所在地智能选择地区。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricName = params.get("MetricName")
self._ZoneIds = params.get("ZoneIds")
self._PolicyIds = params.get("PolicyIds")
self._AttackType = params.get("AttackType")
self._ProtocolType = params.get("ProtocolType")
self._Port = params.get("Port")
self._Limit = params.get("Limit")
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeDDoSAttackTopDataResponse(AbstractModel):
"""DescribeDDoSAttackTopData返回参数结构体
"""
def __init__(self):
r"""
:param _Data: DDoS攻击Top数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TopEntry
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Data = None
self._TotalCount = None
self._RequestId = None
@property
def Data(self):
"""DDoS攻击Top数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TopEntry
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TopEntry()
obj._deserialize(item)
self._Data.append(obj)
self._TotalCount = params.get("TotalCount")
self._RequestId = params.get("RequestId")
class DescribeDefaultCertificatesRequest(AbstractModel):
"""DescribeDefaultCertificates请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Filters: 过滤条件,Filters.Values的上限为5。详细的过滤条件如下:
<li>zone-id<br> 按照【<strong>站点ID</strong>】进行过滤。站点ID形如:zone-xxx。<br> 类型:String<br> 必选:是 </li>
:type Filters: list of Filter
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:100。
:type Limit: int
"""
self._ZoneId = None
self._Filters = None
self._Offset = None
self._Limit = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为5。详细的过滤条件如下:
<li>zone-id<br> 按照【<strong>站点ID</strong>】进行过滤。站点ID形如:zone-xxx。<br> 类型:String<br> 必选:是 </li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:100。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeDefaultCertificatesResponse(AbstractModel):
"""DescribeDefaultCertificates返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 证书总数。
:type TotalCount: int
:param _DefaultServerCertInfo: 默认证书列表。
:type DefaultServerCertInfo: list of DefaultServerCertInfo
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._DefaultServerCertInfo = None
self._RequestId = None
@property
def TotalCount(self):
"""证书总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def DefaultServerCertInfo(self):
"""默认证书列表。
:rtype: list of DefaultServerCertInfo
"""
return self._DefaultServerCertInfo
@DefaultServerCertInfo.setter
def DefaultServerCertInfo(self, DefaultServerCertInfo):
self._DefaultServerCertInfo = DefaultServerCertInfo
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("DefaultServerCertInfo") is not None:
self._DefaultServerCertInfo = []
for item in params.get("DefaultServerCertInfo"):
obj = DefaultServerCertInfo()
obj._deserialize(item)
self._DefaultServerCertInfo.append(obj)
self._RequestId = params.get("RequestId")
class DescribeDeployHistoryRequest(AbstractModel):
"""DescribeDeployHistory请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _EnvId: 环境 ID。
:type EnvId: str
:param _Filters: 过滤条件,Filters.Values 的上限为 20,详细的过滤条件如下:
<li>record-id:按照发布记录 ID 进行过滤进行过滤。</li>
:type Filters: list of AdvancedFilter
"""
self._ZoneId = None
self._EnvId = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def EnvId(self):
"""环境 ID。
:rtype: str
"""
return self._EnvId
@EnvId.setter
def EnvId(self, EnvId):
self._EnvId = EnvId
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20,详细的过滤条件如下:
<li>record-id:按照发布记录 ID 进行过滤进行过滤。</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._EnvId = params.get("EnvId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeDeployHistoryResponse(AbstractModel):
"""DescribeDeployHistory返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 发布记录总数。
:type TotalCount: int
:param _Records: 发布记录详情。
:type Records: list of DeployRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Records = None
self._RequestId = None
@property
def TotalCount(self):
"""发布记录总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Records(self):
"""发布记录详情。
:rtype: list of DeployRecord
"""
return self._Records
@Records.setter
def Records(self, Records):
self._Records = Records
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Records") is not None:
self._Records = []
for item in params.get("Records"):
obj = DeployRecord()
obj._deserialize(item)
self._Records.append(obj)
self._RequestId = params.get("RequestId")
class DescribeDnsRecordsRequest(AbstractModel):
"""DescribeDnsRecords请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量,默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目,默认值:20,上限:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为20。详细的过滤条件如下:<li>id: 按照 DNS 记录 ID 进行过滤,支持模糊查询;</li><li>name:按照 DNS 记录名称进行过滤,支持模糊查询;</li><li>content:按照 DNS 记录内容进行过滤,支持模糊查询;</li><li>type:按照 DNS 记录类型进行过滤,不支持模糊查询。可选项:<br> A:将域名指向一个外网 IPv4 地址,如 8.8.8.8;<br> AAAA:将域名指向一个外网 IPv6 地址;<br> CNAME:将域名指向另一个域名,再由该域名解析出最终 IP 地址;<br> TXT:对域名进行标识和说明,常用于域名验证和 SPF 记录(反垃圾邮件);<br> NS:如果需要将子域名交给其他 DNS 服务商解析,则需要添加 NS 记录。根域名无法添加 NS 记录;<br> CAA:指定可为本站点颁发证书的 CA;<br> SRV:标识某台服务器使用了某个服务,常见于微软系统的目录管理;<br> MX:指定收件人邮件服务器。</li><li>ttl:按照解析生效时间进行过滤,不支持模糊查询。</li>
:type Filters: list of AdvancedFilter
:param _SortBy: 排序依据,取值有:<li>content:DNS 记录内容;</li><li>created-on:DNS 记录创建时间;</li><li>name:DNS 记录名称;</li><li>ttl:缓存时间;</li><li>type:DNS 记录类型。</li>默认根据 type, name 属性组合排序。
:type SortBy: str
:param _SortOrder: 列表排序方式,取值有:<li>asc:升序排列;</li><li>desc:降序排列。</li>默认值为 asc。
:type SortOrder: str
:param _Match: 匹配方式,取值有:<li>all:返回匹配所有查询条件的记录;</li><li>any:返回匹配任意一个查询条件的记录。</li>默认值为 all。
:type Match: str
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
self._SortBy = None
self._SortOrder = None
self._Match = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量,默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目,默认值:20,上限:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为20。详细的过滤条件如下:<li>id: 按照 DNS 记录 ID 进行过滤,支持模糊查询;</li><li>name:按照 DNS 记录名称进行过滤,支持模糊查询;</li><li>content:按照 DNS 记录内容进行过滤,支持模糊查询;</li><li>type:按照 DNS 记录类型进行过滤,不支持模糊查询。可选项:<br> A:将域名指向一个外网 IPv4 地址,如 8.8.8.8;<br> AAAA:将域名指向一个外网 IPv6 地址;<br> CNAME:将域名指向另一个域名,再由该域名解析出最终 IP 地址;<br> TXT:对域名进行标识和说明,常用于域名验证和 SPF 记录(反垃圾邮件);<br> NS:如果需要将子域名交给其他 DNS 服务商解析,则需要添加 NS 记录。根域名无法添加 NS 记录;<br> CAA:指定可为本站点颁发证书的 CA;<br> SRV:标识某台服务器使用了某个服务,常见于微软系统的目录管理;<br> MX:指定收件人邮件服务器。</li><li>ttl:按照解析生效时间进行过滤,不支持模糊查询。</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def SortBy(self):
"""排序依据,取值有:<li>content:DNS 记录内容;</li><li>created-on:DNS 记录创建时间;</li><li>name:DNS 记录名称;</li><li>ttl:缓存时间;</li><li>type:DNS 记录类型。</li>默认根据 type, name 属性组合排序。
:rtype: str
"""
return self._SortBy
@SortBy.setter
def SortBy(self, SortBy):
self._SortBy = SortBy
@property
def SortOrder(self):
"""列表排序方式,取值有:<li>asc:升序排列;</li><li>desc:降序排列。</li>默认值为 asc。
:rtype: str
"""
return self._SortOrder
@SortOrder.setter
def SortOrder(self, SortOrder):
self._SortOrder = SortOrder
@property
def Match(self):
"""匹配方式,取值有:<li>all:返回匹配所有查询条件的记录;</li><li>any:返回匹配任意一个查询条件的记录。</li>默认值为 all。
:rtype: str
"""
return self._Match
@Match.setter
def Match(self, Match):
self._Match = Match
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
self._SortBy = params.get("SortBy")
self._SortOrder = params.get("SortOrder")
self._Match = params.get("Match")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeDnsRecordsResponse(AbstractModel):
"""DescribeDnsRecords返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: DNS 记录总数。
:type TotalCount: int
:param _DnsRecords: DNS 记录列表。
:type DnsRecords: list of DnsRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._DnsRecords = None
self._RequestId = None
@property
def TotalCount(self):
"""DNS 记录总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def DnsRecords(self):
"""DNS 记录列表。
:rtype: list of DnsRecord
"""
return self._DnsRecords
@DnsRecords.setter
def DnsRecords(self, DnsRecords):
self._DnsRecords = DnsRecords
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("DnsRecords") is not None:
self._DnsRecords = []
for item in params.get("DnsRecords"):
obj = DnsRecord()
obj._deserialize(item)
self._DnsRecords.append(obj)
self._RequestId = params.get("RequestId")
class DescribeEnvironmentsRequest(AbstractModel):
"""DescribeEnvironments请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
"""
self._ZoneId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeEnvironmentsResponse(AbstractModel):
"""DescribeEnvironments返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 环境总数。
:type TotalCount: int
:param _EnvInfos: 环境列表。
:type EnvInfos: list of EnvInfo
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._EnvInfos = None
self._RequestId = None
@property
def TotalCount(self):
"""环境总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def EnvInfos(self):
"""环境列表。
:rtype: list of EnvInfo
"""
return self._EnvInfos
@EnvInfos.setter
def EnvInfos(self, EnvInfos):
self._EnvInfos = EnvInfos
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("EnvInfos") is not None:
self._EnvInfos = []
for item in params.get("EnvInfos"):
obj = EnvInfo()
obj._deserialize(item)
self._EnvInfos.append(obj)
self._RequestId = params.get("RequestId")
class DescribeFunctionRulesRequest(AbstractModel):
"""DescribeFunctionRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Filters: 过滤条件列表,多个条件为且关系,Filters.Values 的上限为 20。详细的过滤条件如下:
<li>rule-id:按照【规则 ID】进行精确匹配。</li>
<li>function-id:按照【函数 ID】进行精确匹配。</li>
<li>remark:按照【规则描述】进行模糊匹配。</li>
:type Filters: list of Filter
"""
self._ZoneId = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Filters(self):
"""过滤条件列表,多个条件为且关系,Filters.Values 的上限为 20。详细的过滤条件如下:
<li>rule-id:按照【规则 ID】进行精确匹配。</li>
<li>function-id:按照【函数 ID】进行精确匹配。</li>
<li>remark:按照【规则描述】进行模糊匹配。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeFunctionRulesResponse(AbstractModel):
"""DescribeFunctionRules返回参数结构体
"""
def __init__(self):
r"""
:param _FunctionRules: 规则详情列表。
:type FunctionRules: list of FunctionRule
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._FunctionRules = None
self._RequestId = None
@property
def FunctionRules(self):
"""规则详情列表。
:rtype: list of FunctionRule
"""
return self._FunctionRules
@FunctionRules.setter
def FunctionRules(self, FunctionRules):
self._FunctionRules = FunctionRules
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("FunctionRules") is not None:
self._FunctionRules = []
for item in params.get("FunctionRules"):
obj = FunctionRule()
obj._deserialize(item)
self._FunctionRules.append(obj)
self._RequestId = params.get("RequestId")
class DescribeFunctionRuntimeEnvironmentRequest(AbstractModel):
"""DescribeFunctionRuntimeEnvironment请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _FunctionId: 函数 ID。
:type FunctionId: str
"""
self._ZoneId = None
self._FunctionId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def FunctionId(self):
"""函数 ID。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._FunctionId = params.get("FunctionId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeFunctionRuntimeEnvironmentResponse(AbstractModel):
"""DescribeFunctionRuntimeEnvironment返回参数结构体
"""
def __init__(self):
r"""
:param _EnvironmentVariables: 环境变量列表。
:type EnvironmentVariables: list of FunctionEnvironmentVariable
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._EnvironmentVariables = None
self._RequestId = None
@property
def EnvironmentVariables(self):
"""环境变量列表。
:rtype: list of FunctionEnvironmentVariable
"""
return self._EnvironmentVariables
@EnvironmentVariables.setter
def EnvironmentVariables(self, EnvironmentVariables):
self._EnvironmentVariables = EnvironmentVariables
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("EnvironmentVariables") is not None:
self._EnvironmentVariables = []
for item in params.get("EnvironmentVariables"):
obj = FunctionEnvironmentVariable()
obj._deserialize(item)
self._EnvironmentVariables.append(obj)
self._RequestId = params.get("RequestId")
class DescribeFunctionsRequest(AbstractModel):
"""DescribeFunctions请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _FunctionIds: 按照函数 ID 列表过滤。
:type FunctionIds: list of str
:param _Filters: 过滤条件列表,多个条件为且关系,Filters.Values 的上限为 20。详细的过滤条件如下:
<li>name:按照【函数名称】进行模糊匹配。</li>
<li>remark:按照【函数描述】进行模糊匹配。</li>
:type Filters: list of Filter
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:200。
:type Limit: int
"""
self._ZoneId = None
self._FunctionIds = None
self._Filters = None
self._Offset = None
self._Limit = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def FunctionIds(self):
"""按照函数 ID 列表过滤。
:rtype: list of str
"""
return self._FunctionIds
@FunctionIds.setter
def FunctionIds(self, FunctionIds):
self._FunctionIds = FunctionIds
@property
def Filters(self):
"""过滤条件列表,多个条件为且关系,Filters.Values 的上限为 20。详细的过滤条件如下:
<li>name:按照【函数名称】进行模糊匹配。</li>
<li>remark:按照【函数描述】进行模糊匹配。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:200。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._FunctionIds = params.get("FunctionIds")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeFunctionsResponse(AbstractModel):
"""DescribeFunctions返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合查询条件的函数总数。
:type TotalCount: int
:param _Functions: 符合查询条件的所有函数信息。
:type Functions: list of Function
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Functions = None
self._RequestId = None
@property
def TotalCount(self):
"""符合查询条件的函数总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Functions(self):
"""符合查询条件的所有函数信息。
:rtype: list of Function
"""
return self._Functions
@Functions.setter
def Functions(self, Functions):
self._Functions = Functions
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Functions") is not None:
self._Functions = []
for item in params.get("Functions"):
obj = Function()
obj._deserialize(item)
self._Functions.append(obj)
self._RequestId = params.get("RequestId")
class DescribeHostsSettingRequest(AbstractModel):
"""DescribeHostsSetting请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量。默认值: 0,最小值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值: 100,最大值:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>host:按照域名进行过滤。</li>
:type Filters: list of Filter
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量。默认值: 0,最小值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值: 100,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>host:按照域名进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeHostsSettingResponse(AbstractModel):
"""DescribeHostsSetting返回参数结构体
"""
def __init__(self):
r"""
:param _DetailHosts: 域名列表。
:type DetailHosts: list of DetailHost
:param _TotalNumber: 域名数量。
:type TotalNumber: int
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._DetailHosts = None
self._TotalNumber = None
self._RequestId = None
@property
def DetailHosts(self):
"""域名列表。
:rtype: list of DetailHost
"""
return self._DetailHosts
@DetailHosts.setter
def DetailHosts(self, DetailHosts):
self._DetailHosts = DetailHosts
@property
def TotalNumber(self):
"""域名数量。
:rtype: int
"""
return self._TotalNumber
@TotalNumber.setter
def TotalNumber(self, TotalNumber):
self._TotalNumber = TotalNumber
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("DetailHosts") is not None:
self._DetailHosts = []
for item in params.get("DetailHosts"):
obj = DetailHost()
obj._deserialize(item)
self._DetailHosts.append(obj)
self._TotalNumber = params.get("TotalNumber")
self._RequestId = params.get("RequestId")
class DescribeIPRegionRequest(AbstractModel):
"""DescribeIPRegion请求参数结构体
"""
def __init__(self):
r"""
:param _IPs: 待查询的 IP 列表,支持 IPV4 和 IPV6,最大可查询 100 条。
:type IPs: list of str
"""
self._IPs = None
@property
def IPs(self):
"""待查询的 IP 列表,支持 IPV4 和 IPV6,最大可查询 100 条。
:rtype: list of str
"""
return self._IPs
@IPs.setter
def IPs(self, IPs):
self._IPs = IPs
def _deserialize(self, params):
self._IPs = params.get("IPs")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeIPRegionResponse(AbstractModel):
"""DescribeIPRegion返回参数结构体
"""
def __init__(self):
r"""
:param _IPRegionInfo: IP 归属信息列表。
:type IPRegionInfo: list of IPRegionInfo
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._IPRegionInfo = None
self._RequestId = None
@property
def IPRegionInfo(self):
"""IP 归属信息列表。
:rtype: list of IPRegionInfo
"""
return self._IPRegionInfo
@IPRegionInfo.setter
def IPRegionInfo(self, IPRegionInfo):
self._IPRegionInfo = IPRegionInfo
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("IPRegionInfo") is not None:
self._IPRegionInfo = []
for item in params.get("IPRegionInfo"):
obj = IPRegionInfo()
obj._deserialize(item)
self._IPRegionInfo.append(obj)
self._RequestId = params.get("RequestId")
class DescribeIdentificationsRequest(AbstractModel):
"""DescribeIdentifications请求参数结构体
"""
def __init__(self):
r"""
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>zone-name:按照站点名称进行过滤。</li>
:type Filters: list of Filter
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
"""
self._Filters = None
self._Offset = None
self._Limit = None
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>zone-name:按照站点名称进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeIdentificationsResponse(AbstractModel):
"""DescribeIdentifications返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合条件的站点个数。
:type TotalCount: int
:param _Identifications: 站点验证信息列表。
:type Identifications: list of Identification
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Identifications = None
self._RequestId = None
@property
def TotalCount(self):
"""符合条件的站点个数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Identifications(self):
"""站点验证信息列表。
:rtype: list of Identification
"""
return self._Identifications
@Identifications.setter
def Identifications(self, Identifications):
self._Identifications = Identifications
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Identifications") is not None:
self._Identifications = []
for item in params.get("Identifications"):
obj = Identification()
obj._deserialize(item)
self._Identifications.append(obj)
self._RequestId = params.get("RequestId")
class DescribeL4ProxyRequest(AbstractModel):
"""DescribeL4Proxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 四层代理实例所属站点的 ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量,不填写时默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有四层代理实例信息。详细的过滤条件如下:
<li>proxy-id:按照四层代理实例 ID 进行过滤;</li>
<li>ddos-protection-type:按照安全防护类型进行过滤。</li>
:type Filters: list of Filter
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""四层代理实例所属站点的 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量,不填写时默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有四层代理实例信息。详细的过滤条件如下:
<li>proxy-id:按照四层代理实例 ID 进行过滤;</li>
<li>ddos-protection-type:按照安全防护类型进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeL4ProxyResponse(AbstractModel):
"""DescribeL4Proxy返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 四层代理实例的数量。
:type TotalCount: int
:param _L4Proxies: 四层代理实例列表。
:type L4Proxies: list of L4Proxy
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._L4Proxies = None
self._RequestId = None
@property
def TotalCount(self):
"""四层代理实例的数量。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def L4Proxies(self):
"""四层代理实例列表。
:rtype: list of L4Proxy
"""
return self._L4Proxies
@L4Proxies.setter
def L4Proxies(self, L4Proxies):
self._L4Proxies = L4Proxies
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("L4Proxies") is not None:
self._L4Proxies = []
for item in params.get("L4Proxies"):
obj = L4Proxy()
obj._deserialize(item)
self._L4Proxies.append(obj)
self._RequestId = params.get("RequestId")
class DescribeL4ProxyRulesRequest(AbstractModel):
"""DescribeL4ProxyRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _Offset: 分页查询偏移量,不填写时默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values的上限为20。不填写时返回当前四层实例下所有的规则信息,详细的过滤条件如下: <li>rule-id:按照规则 ID 对四层代理实例下的规则进行过滤。规则 ID 形如:rule-31vv7qig0vjy;</li> <li>rule-tag:按照规则标签对四层代理实例下的规则进行过滤。</li>
:type Filters: list of Filter
"""
self._ZoneId = None
self._ProxyId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def Offset(self):
"""分页查询偏移量,不填写时默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。不填写时返回当前四层实例下所有的规则信息,详细的过滤条件如下: <li>rule-id:按照规则 ID 对四层代理实例下的规则进行过滤。规则 ID 形如:rule-31vv7qig0vjy;</li> <li>rule-tag:按照规则标签对四层代理实例下的规则进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeL4ProxyRulesResponse(AbstractModel):
"""DescribeL4ProxyRules返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 转发规则总数。
:type TotalCount: int
:param _L4ProxyRules: 转发规则列表。
:type L4ProxyRules: list of L4ProxyRule
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._L4ProxyRules = None
self._RequestId = None
@property
def TotalCount(self):
"""转发规则总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def L4ProxyRules(self):
"""转发规则列表。
:rtype: list of L4ProxyRule
"""
return self._L4ProxyRules
@L4ProxyRules.setter
def L4ProxyRules(self, L4ProxyRules):
self._L4ProxyRules = L4ProxyRules
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("L4ProxyRules") is not None:
self._L4ProxyRules = []
for item in params.get("L4ProxyRules"):
obj = L4ProxyRule()
obj._deserialize(item)
self._L4ProxyRules.append(obj)
self._RequestId = params.get("RequestId")
class DescribeL7AccRulesRequest(AbstractModel):
"""DescribeL7AccRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Filters: 过滤条件,Filters.Values 的上限为 20,不填写此参数时默认按顺序返回站点下的规则。详细的过滤条件如下:
<li>rule-id:按照规则 ID 进行过滤。</li>
:type Filters: list of Filter
:param _Limit: 分页查询限制数目,默认值:20,上限:1000。
:type Limit: int
:param _Offset: 分页查询偏移量,默认为 0。
:type Offset: int
"""
self._ZoneId = None
self._Filters = None
self._Limit = None
self._Offset = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20,不填写此参数时默认按顺序返回站点下的规则。详细的过滤条件如下:
<li>rule-id:按照规则 ID 进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Limit(self):
"""分页查询限制数目,默认值:20,上限:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Offset(self):
"""分页查询偏移量,默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
self._Limit = params.get("Limit")
self._Offset = params.get("Offset")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeL7AccRulesResponse(AbstractModel):
"""DescribeL7AccRules返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 规则总数。
:type TotalCount: int
:param _Rules: 规则列表,规则按照从上到下的顺序执行,详情参考[规则生效优先级](https://cloud.tencent.com/document/product/1552/70901#.E4.BC.98.E5.85.88.E7.BA.A7)。
注意:此字段可能返回 null,表示取不到有效值。
:type Rules: list of RuleEngineItem
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Rules = None
self._RequestId = None
@property
def TotalCount(self):
"""规则总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Rules(self):
"""规则列表,规则按照从上到下的顺序执行,详情参考[规则生效优先级](https://cloud.tencent.com/document/product/1552/70901#.E4.BC.98.E5.85.88.E7.BA.A7)。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of RuleEngineItem
"""
return self._Rules
@Rules.setter
def Rules(self, Rules):
self._Rules = Rules
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Rules") is not None:
self._Rules = []
for item in params.get("Rules"):
obj = RuleEngineItem()
obj._deserialize(item)
self._Rules.append(obj)
self._RequestId = params.get("RequestId")
class DescribeL7AccSettingRequest(AbstractModel):
"""DescribeL7AccSetting请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
"""
self._ZoneId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeL7AccSettingResponse(AbstractModel):
"""DescribeL7AccSetting返回参数结构体
"""
def __init__(self):
r"""
:param _ZoneSetting: 站点加速全局配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ZoneSetting: :class:`tencentcloud.teo.v20220901.models.ZoneConfigParameters`
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ZoneSetting = None
self._RequestId = None
@property
def ZoneSetting(self):
"""站点加速全局配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ZoneConfigParameters`
"""
return self._ZoneSetting
@ZoneSetting.setter
def ZoneSetting(self, ZoneSetting):
self._ZoneSetting = ZoneSetting
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("ZoneSetting") is not None:
self._ZoneSetting = ZoneConfigParameters()
self._ZoneSetting._deserialize(params.get("ZoneSetting"))
self._RequestId = params.get("RequestId")
class DescribeLoadBalancerListRequest(AbstractModel):
"""DescribeLoadBalancerList请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量,默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目,默认值:20,最大值:100。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有负载均衡实例信息。详细的过滤条件如下:
<li>InstanceName:按照负载均衡实例名称进行过滤;</li>
<li>InstanceId:按照负载均衡实例 ID 进行过滤。</li>
:type Filters: list of Filter
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量,默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目,默认值:20,最大值:100。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有负载均衡实例信息。详细的过滤条件如下:
<li>InstanceName:按照负载均衡实例名称进行过滤;</li>
<li>InstanceId:按照负载均衡实例 ID 进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeLoadBalancerListResponse(AbstractModel):
"""DescribeLoadBalancerList返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 负载均衡实例总数。
:type TotalCount: int
:param _LoadBalancerList: 负载均衡实例列表。
:type LoadBalancerList: list of LoadBalancer
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._LoadBalancerList = None
self._RequestId = None
@property
def TotalCount(self):
"""负载均衡实例总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def LoadBalancerList(self):
"""负载均衡实例列表。
:rtype: list of LoadBalancer
"""
return self._LoadBalancerList
@LoadBalancerList.setter
def LoadBalancerList(self, LoadBalancerList):
self._LoadBalancerList = LoadBalancerList
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("LoadBalancerList") is not None:
self._LoadBalancerList = []
for item in params.get("LoadBalancerList"):
obj = LoadBalancer()
obj._deserialize(item)
self._LoadBalancerList.append(obj)
self._RequestId = params.get("RequestId")
class DescribeOriginGroupHealthStatusRequest(AbstractModel):
"""DescribeOriginGroupHealthStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _LBInstanceId: 负载均衡实例 ID。
:type LBInstanceId: str
:param _OriginGroupIds: 源站组 ID。不填写时默认获取负载均衡下所有源站组的健康状态。
:type OriginGroupIds: list of str
"""
self._ZoneId = None
self._LBInstanceId = None
self._OriginGroupIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def LBInstanceId(self):
"""负载均衡实例 ID。
:rtype: str
"""
return self._LBInstanceId
@LBInstanceId.setter
def LBInstanceId(self, LBInstanceId):
self._LBInstanceId = LBInstanceId
@property
def OriginGroupIds(self):
"""源站组 ID。不填写时默认获取负载均衡下所有源站组的健康状态。
:rtype: list of str
"""
return self._OriginGroupIds
@OriginGroupIds.setter
def OriginGroupIds(self, OriginGroupIds):
self._OriginGroupIds = OriginGroupIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._LBInstanceId = params.get("LBInstanceId")
self._OriginGroupIds = params.get("OriginGroupIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeOriginGroupHealthStatusResponse(AbstractModel):
"""DescribeOriginGroupHealthStatus返回参数结构体
"""
def __init__(self):
r"""
:param _OriginGroupHealthStatusList: 源站组下源站的健康状态。
:type OriginGroupHealthStatusList: list of OriginGroupHealthStatusDetail
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._OriginGroupHealthStatusList = None
self._RequestId = None
@property
def OriginGroupHealthStatusList(self):
"""源站组下源站的健康状态。
:rtype: list of OriginGroupHealthStatusDetail
"""
return self._OriginGroupHealthStatusList
@OriginGroupHealthStatusList.setter
def OriginGroupHealthStatusList(self, OriginGroupHealthStatusList):
self._OriginGroupHealthStatusList = OriginGroupHealthStatusList
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("OriginGroupHealthStatusList") is not None:
self._OriginGroupHealthStatusList = []
for item in params.get("OriginGroupHealthStatusList"):
obj = OriginGroupHealthStatusDetail()
obj._deserialize(item)
self._OriginGroupHealthStatusList.append(obj)
self._RequestId = params.get("RequestId")
class DescribeOriginGroupRequest(AbstractModel):
"""DescribeOriginGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID,此参数必填。
:type ZoneId: str
:param _Offset: 分页查询偏移量,不填默认为0。
:type Offset: int
:param _Limit: 分页查询限制数目,不填默认为20,取值:1-1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>origin-group-id<br> 按照【<strong>源站组ID</strong>】进行过滤。源站组ID形如:origin-2ccgtb24-7dc5-46s2-9r3e-95825d53dwe3a<br> 模糊查询:不支持</li><li>origin-group-name<br> 按照【<strong>源站组名称</strong>】进行过滤<br> 模糊查询:支持。使用模糊查询时,仅支持填写一个源站组名称</li>
:type Filters: list of AdvancedFilter
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点ID,此参数必填。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量,不填默认为0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目,不填默认为20,取值:1-1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>origin-group-id<br> 按照【<strong>源站组ID</strong>】进行过滤。源站组ID形如:origin-2ccgtb24-7dc5-46s2-9r3e-95825d53dwe3a<br> 模糊查询:不支持</li><li>origin-group-name<br> 按照【<strong>源站组名称</strong>】进行过滤<br> 模糊查询:支持。使用模糊查询时,仅支持填写一个源站组名称</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeOriginGroupResponse(AbstractModel):
"""DescribeOriginGroup返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 记录总数。
:type TotalCount: int
:param _OriginGroups: 源站组信息。
:type OriginGroups: list of OriginGroup
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._OriginGroups = None
self._RequestId = None
@property
def TotalCount(self):
"""记录总数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def OriginGroups(self):
"""源站组信息。
:rtype: list of OriginGroup
"""
return self._OriginGroups
@OriginGroups.setter
def OriginGroups(self, OriginGroups):
self._OriginGroups = OriginGroups
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("OriginGroups") is not None:
self._OriginGroups = []
for item in params.get("OriginGroups"):
obj = OriginGroup()
obj._deserialize(item)
self._OriginGroups.append(obj)
self._RequestId = params.get("RequestId")
class DescribeOriginProtectionRequest(AbstractModel):
"""DescribeOriginProtection请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneIds: 查询的站点ID集合。该参数必填。
:type ZoneIds: list of str
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>need-update<br> 按照【<strong>站点是否需要更新源站防护IP白名单</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> true:需要更新<br> false:无需更新<br></li>
<li>plan-support<br> 按照【<strong>站点套餐是否支持源站防护</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> true:支持<br> false:不支持<br></li>
:type Filters: list of Filter
:param _Offset: 分页查询偏移量,默认为0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
"""
self._ZoneIds = None
self._Filters = None
self._Offset = None
self._Limit = None
@property
def ZoneIds(self):
"""查询的站点ID集合。该参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>need-update<br> 按照【<strong>站点是否需要更新源站防护IP白名单</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> true:需要更新<br> false:无需更新<br></li>
<li>plan-support<br> 按照【<strong>站点套餐是否支持源站防护</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> true:支持<br> false:不支持<br></li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Offset(self):
"""分页查询偏移量,默认为0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
def _deserialize(self, params):
self._ZoneIds = params.get("ZoneIds")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeOriginProtectionResponse(AbstractModel):
"""DescribeOriginProtection返回参数结构体
"""
def __init__(self):
r"""
:param _OriginProtectionInfo: 源站防护信息。
注意:此字段可能返回 null,表示取不到有效值。
:type OriginProtectionInfo: list of OriginProtectionInfo
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._OriginProtectionInfo = None
self._RequestId = None
@property
def OriginProtectionInfo(self):
"""源站防护信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of OriginProtectionInfo
"""
return self._OriginProtectionInfo
@OriginProtectionInfo.setter
def OriginProtectionInfo(self, OriginProtectionInfo):
self._OriginProtectionInfo = OriginProtectionInfo
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("OriginProtectionInfo") is not None:
self._OriginProtectionInfo = []
for item in params.get("OriginProtectionInfo"):
obj = OriginProtectionInfo()
obj._deserialize(item)
self._OriginProtectionInfo.append(obj)
self._RequestId = params.get("RequestId")
class DescribeOverviewL7DataRequest(AbstractModel):
"""DescribeOverviewL7Data请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricNames: 查询的指标,取值有:
<li>l7Flow_outFlux: Edegone响应流量;</li>
<li>l7Flow_inFlux: Edgeone请求流量;</li>
<li>l7Flow_outBandwidth: Edegone响应带宽;</li>
<li>l7Flow_inBandwidth: Edegone请求带宽;</li>
<li>l7Flow_hit_outFlux: 缓存命中流量;</li>
<li>l7Flow_request: 访问请求数;</li>
<li>l7Flow_flux: 访问请求上行+下行流量;</li>
<li>l7Flow_bandwidth:访问请求上行+下行带宽。</li>
:type MetricNames: list of str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _Domains: 查询的域名集合,此参数已经废弃。
:type Domains: list of str
:param _Protocol: 查询的协议类型,取值有:
<li>http: http协议;</li>
<li>https: https协议;</li>
<li>http2: http2协议;</li>
<li>all: 所有协议。</li>不填默认为all,此参数暂未生效。
:type Protocol: str
:param _Interval: 查询时间粒度,取值有:
<li>min:1分钟;</li>
<li>5min:5分钟;</li>
<li>hour:1小时;</li>
<li>day:1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。
:type Interval: str
:param _Filters: 过滤条件,详细的过滤条件Key值如下:
<li>socket<br> 按照【<strong>HTTP协议类型</strong>】进行过滤。<br> 对应的Value可选项如下:<br> HTTP:HTTP 协议;<br> HTTPS:HTTPS协议;<br> QUIC:QUIC协议。</li>
<li>domain<br> 按照【<strong>域名</strong>】进行过滤。</li>
<li>tagKey<br> 按照【<strong>标签Key</strong>】进行过滤。</li>
<li>tagValue<br> 按照【<strong>标签Value</strong>】进行过滤。</li>
:type Filters: list of QueryCondition
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricNames = None
self._ZoneIds = None
self._Domains = None
self._Protocol = None
self._Interval = None
self._Filters = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricNames(self):
"""查询的指标,取值有:
<li>l7Flow_outFlux: Edegone响应流量;</li>
<li>l7Flow_inFlux: Edgeone请求流量;</li>
<li>l7Flow_outBandwidth: Edegone响应带宽;</li>
<li>l7Flow_inBandwidth: Edegone请求带宽;</li>
<li>l7Flow_hit_outFlux: 缓存命中流量;</li>
<li>l7Flow_request: 访问请求数;</li>
<li>l7Flow_flux: 访问请求上行+下行流量;</li>
<li>l7Flow_bandwidth:访问请求上行+下行带宽。</li>
:rtype: list of str
"""
return self._MetricNames
@MetricNames.setter
def MetricNames(self, MetricNames):
self._MetricNames = MetricNames
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Domains(self):
"""查询的域名集合,此参数已经废弃。
:rtype: list of str
"""
return self._Domains
@Domains.setter
def Domains(self, Domains):
self._Domains = Domains
@property
def Protocol(self):
"""查询的协议类型,取值有:
<li>http: http协议;</li>
<li>https: https协议;</li>
<li>http2: http2协议;</li>
<li>all: 所有协议。</li>不填默认为all,此参数暂未生效。
:rtype: str
"""
return self._Protocol
@Protocol.setter
def Protocol(self, Protocol):
self._Protocol = Protocol
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>min:1分钟;</li>
<li>5min:5分钟;</li>
<li>hour:1小时;</li>
<li>day:1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Filters(self):
"""过滤条件,详细的过滤条件Key值如下:
<li>socket<br> 按照【<strong>HTTP协议类型</strong>】进行过滤。<br> 对应的Value可选项如下:<br> HTTP:HTTP 协议;<br> HTTPS:HTTPS协议;<br> QUIC:QUIC协议。</li>
<li>domain<br> 按照【<strong>域名</strong>】进行过滤。</li>
<li>tagKey<br> 按照【<strong>标签Key</strong>】进行过滤。</li>
<li>tagValue<br> 按照【<strong>标签Value</strong>】进行过滤。</li>
:rtype: list of QueryCondition
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricNames = params.get("MetricNames")
self._ZoneIds = params.get("ZoneIds")
self._Domains = params.get("Domains")
self._Protocol = params.get("Protocol")
self._Interval = params.get("Interval")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = QueryCondition()
obj._deserialize(item)
self._Filters.append(obj)
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeOverviewL7DataResponse(AbstractModel):
"""DescribeOverviewL7Data返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 七层监控类时序流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TimingDataRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""七层监控类时序流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TimingDataRecord
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TimingDataRecord()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribePrefetchTasksRequest(AbstractModel):
"""DescribePrefetchTasks请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。该参数必填。
:type ZoneId: str
:param _StartTime: 查询起始时间,时间与 job-id 必填一个。
:type StartTime: str
:param _EndTime: 查询结束时间,时间与 job-id 必填一个。
:type EndTime: str
:param _Offset: 分页查询偏移量,默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目,默认值:20,上限:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为 20。详细的过滤条件如下:<li>job-id:按照任务 ID 进行过滤。job-id 形如:1379afjk91u32h,暂不支持多值,不支持模糊查询;</li><li>target:按照目标资源信息进行过滤。target 形如:http://www.qq.com/1.txt,暂不支持多值,不支持模糊查询;</li><li>domains:按照域名行过滤。domains 形如:www.qq.com,不支持模糊查询;</li><li>statuses:按照任务状态进行过滤,不支持模糊查询。可选项:<br> processing:处理中<br> success:成功<br> failed:失败<br> timeout:超时<br> invalid:无效。即源站响应非 2xx 状态码,请检查源站服务。</li>
:type Filters: list of AdvancedFilter
"""
self._ZoneId = None
self._StartTime = None
self._EndTime = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点ID。该参数必填。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def StartTime(self):
"""查询起始时间,时间与 job-id 必填一个。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""查询结束时间,时间与 job-id 必填一个。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def Offset(self):
"""分页查询偏移量,默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目,默认值:20,上限:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20。详细的过滤条件如下:<li>job-id:按照任务 ID 进行过滤。job-id 形如:1379afjk91u32h,暂不支持多值,不支持模糊查询;</li><li>target:按照目标资源信息进行过滤。target 形如:http://www.qq.com/1.txt,暂不支持多值,不支持模糊查询;</li><li>domains:按照域名行过滤。domains 形如:www.qq.com,不支持模糊查询;</li><li>statuses:按照任务状态进行过滤,不支持模糊查询。可选项:<br> processing:处理中<br> success:成功<br> failed:失败<br> timeout:超时<br> invalid:无效。即源站响应非 2xx 状态码,请检查源站服务。</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribePrefetchTasksResponse(AbstractModel):
"""DescribePrefetchTasks返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 该查询条件总共条目数。
:type TotalCount: int
:param _Tasks: 任务结果列表。
:type Tasks: list of Task
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Tasks = None
self._RequestId = None
@property
def TotalCount(self):
"""该查询条件总共条目数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Tasks(self):
"""任务结果列表。
:rtype: list of Task
"""
return self._Tasks
@Tasks.setter
def Tasks(self, Tasks):
self._Tasks = Tasks
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Tasks") is not None:
self._Tasks = []
for item in params.get("Tasks"):
obj = Task()
obj._deserialize(item)
self._Tasks.append(obj)
self._RequestId = params.get("RequestId")
class DescribePurgeTasksRequest(AbstractModel):
"""DescribePurgeTasks请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。该参数必填。
:type ZoneId: str
:param _StartTime: 查询起始时间,时间与 job-id 必填一个。
:type StartTime: str
:param _EndTime: 查询结束时间,时间与 job-id 必填一个。
:type EndTime: str
:param _Offset: 分页查询偏移量,默认为 0。
:type Offset: int
:param _Limit: 分页查询限制数目,默认值:20,最大值:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>job-id:按照任务 ID 进行过滤。job-id 形如:1379afjk91u32h,暂不支持多值,不支持模糊查询;</li>
<li>target:按照目标资源信息进行过滤,target 形如:http://www.qq.com/1.txt 或者 tag1,暂不支持多值,支持模糊查询;</li>
<li>domains:按照域名进行过滤,形如:www.qq.com,不支持模糊查询;</li>
<li>statuses:按照任务状态进行过滤,不支持模糊查询。可选项:<br> processing:处理中<br> success:成功<br> failed:失败<br> timeout:超时</li>
<li>type:按照清除缓存类型进行过滤,暂不支持多值,不支持模糊查询。可选项:<br> purge_url:URL<br> purge_prefix:前缀<br> purge_all:全部缓存内容<br> purge_host:Hostname<br> purge_cache_tag:CacheTag</li>
:type Filters: list of AdvancedFilter
"""
self._ZoneId = None
self._StartTime = None
self._EndTime = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。该参数必填。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def StartTime(self):
"""查询起始时间,时间与 job-id 必填一个。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""查询结束时间,时间与 job-id 必填一个。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def Offset(self):
"""分页查询偏移量,默认为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目,默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>job-id:按照任务 ID 进行过滤。job-id 形如:1379afjk91u32h,暂不支持多值,不支持模糊查询;</li>
<li>target:按照目标资源信息进行过滤,target 形如:http://www.qq.com/1.txt 或者 tag1,暂不支持多值,支持模糊查询;</li>
<li>domains:按照域名进行过滤,形如:www.qq.com,不支持模糊查询;</li>
<li>statuses:按照任务状态进行过滤,不支持模糊查询。可选项:<br> processing:处理中<br> success:成功<br> failed:失败<br> timeout:超时</li>
<li>type:按照清除缓存类型进行过滤,暂不支持多值,不支持模糊查询。可选项:<br> purge_url:URL<br> purge_prefix:前缀<br> purge_all:全部缓存内容<br> purge_host:Hostname<br> purge_cache_tag:CacheTag</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribePurgeTasksResponse(AbstractModel):
"""DescribePurgeTasks返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 该查询条件总共条目数。
:type TotalCount: int
:param _Tasks: 任务结果列表。
:type Tasks: list of Task
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Tasks = None
self._RequestId = None
@property
def TotalCount(self):
"""该查询条件总共条目数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Tasks(self):
"""任务结果列表。
:rtype: list of Task
"""
return self._Tasks
@Tasks.setter
def Tasks(self, Tasks):
self._Tasks = Tasks
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Tasks") is not None:
self._Tasks = []
for item in params.get("Tasks"):
obj = Task()
obj._deserialize(item)
self._Tasks.append(obj)
self._RequestId = params.get("RequestId")
class DescribeRealtimeLogDeliveryTasksRequest(AbstractModel):
"""DescribeRealtimeLogDeliveryTasks请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:1000。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有实时日志投递任务信息。详细的过滤条件如下:
<li>task-id:按照实时日志投递任务 ID进行过滤。不支持模糊查询。</li>
<li>task-name:按照实时日志投递任务名称进行过滤。支持模糊查询,使用模糊查询时,仅支持填写一个实时日志投递任务名称。</li>
<li>entity-list:按照实时日志投递任务对应的实体进行过滤。不支持模糊查询。示例值:domain.example.com 或者 sid-2s69eb5wcms7。</li>
<li>task-type:按照实时日志投递任务类型进行过滤。不支持模糊查询。可选项如下:<br> cls: 推送到腾讯云 CLS;<br> custom_endpoint:推送到自定义 HTTP(S) 地址;<br> s3:推送到 AWS S3 兼容存储桶地址。</li>
:type Filters: list of AdvancedFilter
"""
self._ZoneId = None
self._Offset = None
self._Limit = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:1000。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 zone-id 下所有实时日志投递任务信息。详细的过滤条件如下:
<li>task-id:按照实时日志投递任务 ID进行过滤。不支持模糊查询。</li>
<li>task-name:按照实时日志投递任务名称进行过滤。支持模糊查询,使用模糊查询时,仅支持填写一个实时日志投递任务名称。</li>
<li>entity-list:按照实时日志投递任务对应的实体进行过滤。不支持模糊查询。示例值:domain.example.com 或者 sid-2s69eb5wcms7。</li>
<li>task-type:按照实时日志投递任务类型进行过滤。不支持模糊查询。可选项如下:<br> cls: 推送到腾讯云 CLS;<br> custom_endpoint:推送到自定义 HTTP(S) 地址;<br> s3:推送到 AWS S3 兼容存储桶地址。</li>
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeRealtimeLogDeliveryTasksResponse(AbstractModel):
"""DescribeRealtimeLogDeliveryTasks返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合查询条件的实时日志投递任务个数。
:type TotalCount: int
:param _RealtimeLogDeliveryTasks: 符合查询条件的所有实时日志投递任务列表。
:type RealtimeLogDeliveryTasks: list of RealtimeLogDeliveryTask
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._RealtimeLogDeliveryTasks = None
self._RequestId = None
@property
def TotalCount(self):
"""符合查询条件的实时日志投递任务个数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def RealtimeLogDeliveryTasks(self):
"""符合查询条件的所有实时日志投递任务列表。
:rtype: list of RealtimeLogDeliveryTask
"""
return self._RealtimeLogDeliveryTasks
@RealtimeLogDeliveryTasks.setter
def RealtimeLogDeliveryTasks(self, RealtimeLogDeliveryTasks):
self._RealtimeLogDeliveryTasks = RealtimeLogDeliveryTasks
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("RealtimeLogDeliveryTasks") is not None:
self._RealtimeLogDeliveryTasks = []
for item in params.get("RealtimeLogDeliveryTasks"):
obj = RealtimeLogDeliveryTask()
obj._deserialize(item)
self._RealtimeLogDeliveryTasks.append(obj)
self._RequestId = params.get("RequestId")
class DescribeRulesRequest(AbstractModel):
"""DescribeRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Filters: 过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>rule-id:按照规则 ID 进行过滤。</li>
:type Filters: list of Filter
"""
self._ZoneId = None
self._Filters = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Filters(self):
"""过滤条件,Filters.Values的上限为20。详细的过滤条件如下:
<li>rule-id:按照规则 ID 进行过滤。</li>
:rtype: list of Filter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = Filter()
obj._deserialize(item)
self._Filters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeRulesResponse(AbstractModel):
"""DescribeRules返回参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleItems: 规则列表,按规则执行顺序从先往后排序。
:type RuleItems: list of RuleItem
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ZoneId = None
self._RuleItems = None
self._RequestId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleItems(self):
"""规则列表,按规则执行顺序从先往后排序。
:rtype: list of RuleItem
"""
return self._RuleItems
@RuleItems.setter
def RuleItems(self, RuleItems):
self._RuleItems = RuleItems
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("RuleItems") is not None:
self._RuleItems = []
for item in params.get("RuleItems"):
obj = RuleItem()
obj._deserialize(item)
self._RuleItems.append(obj)
self._RequestId = params.get("RequestId")
class DescribeRulesSettingRequest(AbstractModel):
"""DescribeRulesSetting请求参数结构体
"""
class DescribeRulesSettingResponse(AbstractModel):
"""DescribeRulesSetting返回参数结构体
"""
def __init__(self):
r"""
:param _Actions: 规则引擎可应用匹配请求的设置列表及其详细建议配置信息。
:type Actions: list of RulesSettingAction
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Actions = None
self._RequestId = None
@property
def Actions(self):
"""规则引擎可应用匹配请求的设置列表及其详细建议配置信息。
:rtype: list of RulesSettingAction
"""
return self._Actions
@Actions.setter
def Actions(self, Actions):
self._Actions = Actions
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("Actions") is not None:
self._Actions = []
for item in params.get("Actions"):
obj = RulesSettingAction()
obj._deserialize(item)
self._Actions.append(obj)
self._RequestId = params.get("RequestId")
class DescribeSecurityIPGroupInfoRequest(AbstractModel):
"""DescribeSecurityIPGroupInfo请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点的 ID ,用于指定查询的站点范围。
:type ZoneId: str
:param _Limit: 单次返回的最大条目数。默认值为 20 ,最大查询条目为 1000 。
:type Limit: int
:param _Offset: 分页查询的起始条目偏移量。默认值为 0 。
:type Offset: int
"""
self._ZoneId = None
self._Limit = None
self._Offset = None
@property
def ZoneId(self):
"""站点的 ID ,用于指定查询的站点范围。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Limit(self):
"""单次返回的最大条目数。默认值为 20 ,最大查询条目为 1000 。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Offset(self):
"""分页查询的起始条目偏移量。默认值为 0 。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Limit = params.get("Limit")
self._Offset = params.get("Offset")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeSecurityIPGroupInfoResponse(AbstractModel):
"""DescribeSecurityIPGroupInfo返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 返回的满足条件的 IP 组数量。
:type TotalCount: int
:param _IPGroups: IP 组的详细配置信息。包含每个 IP 组的 ID 、名称和 IP /网段列表信息。
:type IPGroups: list of IPGroup
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._IPGroups = None
self._RequestId = None
@property
def TotalCount(self):
"""返回的满足条件的 IP 组数量。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def IPGroups(self):
"""IP 组的详细配置信息。包含每个 IP 组的 ID 、名称和 IP /网段列表信息。
:rtype: list of IPGroup
"""
return self._IPGroups
@IPGroups.setter
def IPGroups(self, IPGroups):
self._IPGroups = IPGroups
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("IPGroups") is not None:
self._IPGroups = []
for item in params.get("IPGroups"):
obj = IPGroup()
obj._deserialize(item)
self._IPGroups.append(obj)
self._RequestId = params.get("RequestId")
class DescribeSecurityIPGroupRequest(AbstractModel):
"""DescribeSecurityIPGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID ,用于指定查询的站点范围。
:type ZoneId: str
:param _GroupIds: 指定安全 IP 组 ID。 <li>提供该参数时,仅查询指定 ID 的安全 IP 组配置;</li> <li>不传递参数时,返回站点下所有安全 IP 组信息。</li>
:type GroupIds: list of int
"""
self._ZoneId = None
self._GroupIds = None
@property
def ZoneId(self):
"""站点 ID ,用于指定查询的站点范围。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def GroupIds(self):
"""指定安全 IP 组 ID。 <li>提供该参数时,仅查询指定 ID 的安全 IP 组配置;</li> <li>不传递参数时,返回站点下所有安全 IP 组信息。</li>
:rtype: list of int
"""
return self._GroupIds
@GroupIds.setter
def GroupIds(self, GroupIds):
self._GroupIds = GroupIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._GroupIds = params.get("GroupIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeSecurityIPGroupResponse(AbstractModel):
"""DescribeSecurityIPGroup返回参数结构体
"""
def __init__(self):
r"""
:param _IPGroups: 安全 IP 组的详细配置信息。包含每个安全 IP 组的 ID 、名称和 IP / 网段列表信息。
:type IPGroups: list of IPGroup
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._IPGroups = None
self._RequestId = None
@property
def IPGroups(self):
"""安全 IP 组的详细配置信息。包含每个安全 IP 组的 ID 、名称和 IP / 网段列表信息。
:rtype: list of IPGroup
"""
return self._IPGroups
@IPGroups.setter
def IPGroups(self, IPGroups):
self._IPGroups = IPGroups
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("IPGroups") is not None:
self._IPGroups = []
for item in params.get("IPGroups"):
obj = IPGroup()
obj._deserialize(item)
self._IPGroups.append(obj)
self._RequestId = params.get("RequestId")
class DescribeSecurityTemplateBindingsRequest(AbstractModel):
"""DescribeSecurityTemplateBindings请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 要查询的站点 ID。
:type ZoneId: str
:param _TemplateId: 要查询的策略模板 ID。
:type TemplateId: list of str
"""
self._ZoneId = None
self._TemplateId = None
@property
def ZoneId(self):
"""要查询的站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TemplateId(self):
"""要查询的策略模板 ID。
:rtype: list of str
"""
return self._TemplateId
@TemplateId.setter
def TemplateId(self, TemplateId):
self._TemplateId = TemplateId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._TemplateId = params.get("TemplateId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeSecurityTemplateBindingsResponse(AbstractModel):
"""DescribeSecurityTemplateBindings返回参数结构体
"""
def __init__(self):
r"""
:param _SecurityTemplate: 指定策略模板的绑定关系列表。
当某个站点中的域名包含在指定策略模板的绑定关系中时,绑定关系列表 `TemplateScope` 中会包含该站点的 `ZoneId`,和该站点下的和该策略模板有关的域名绑定关系。
注意:当没有任何域名正在绑定或已经绑定到指定策略模板时,绑定关系为空。即:返回结构体中,`TemplateScope` 数组长度为 0。
绑定关系中,同一域名可能在 `EntityStatus` 列表中重复出现,并标记为不同 `Status` 。例如,正在被绑定到其他策略模板的域名,会同时标记为 `online` 和 `pending` 。
:type SecurityTemplate: list of SecurityTemplateBinding
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._SecurityTemplate = None
self._RequestId = None
@property
def SecurityTemplate(self):
"""指定策略模板的绑定关系列表。
当某个站点中的域名包含在指定策略模板的绑定关系中时,绑定关系列表 `TemplateScope` 中会包含该站点的 `ZoneId`,和该站点下的和该策略模板有关的域名绑定关系。
注意:当没有任何域名正在绑定或已经绑定到指定策略模板时,绑定关系为空。即:返回结构体中,`TemplateScope` 数组长度为 0。
绑定关系中,同一域名可能在 `EntityStatus` 列表中重复出现,并标记为不同 `Status` 。例如,正在被绑定到其他策略模板的域名,会同时标记为 `online` 和 `pending` 。
:rtype: list of SecurityTemplateBinding
"""
return self._SecurityTemplate
@SecurityTemplate.setter
def SecurityTemplate(self, SecurityTemplate):
self._SecurityTemplate = SecurityTemplate
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("SecurityTemplate") is not None:
self._SecurityTemplate = []
for item in params.get("SecurityTemplate"):
obj = SecurityTemplateBinding()
obj._deserialize(item)
self._SecurityTemplate.append(obj)
self._RequestId = params.get("RequestId")
class DescribeTimingL4DataRequest(AbstractModel):
"""DescribeTimingL4Data请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricNames: 查询指标,取值有:
<li>l4Flow_connections: 访问连接数;</li>
<li>l4Flow_flux: 访问总流量;</li>
<li>l4Flow_inFlux: 访问入流量;</li>
<li>l4Flow_outFlux: 访问出流量。</li>
:type MetricNames: list of str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _ProxyIds: 四层实例列表, 不填表示选择全部实例。
:type ProxyIds: list of str
:param _Interval: 查询时间粒度,取值有:
<li>min: 1分钟 ;</li>
<li>5min: 5分钟 ;</li>
<li>hour: 1小时 ;</li>
<li>day: 1天 。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。
:type Interval: str
:param _Filters: 过滤条件,详细的过滤条件Key值如下:
<li>ruleId:按照转发规则 ID 进行过滤。</li>
<li>proxyId:按照四层代理实例 ID 进行过滤。</li>
:type Filters: list of QueryCondition
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricNames = None
self._ZoneIds = None
self._ProxyIds = None
self._Interval = None
self._Filters = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricNames(self):
"""查询指标,取值有:
<li>l4Flow_connections: 访问连接数;</li>
<li>l4Flow_flux: 访问总流量;</li>
<li>l4Flow_inFlux: 访问入流量;</li>
<li>l4Flow_outFlux: 访问出流量。</li>
:rtype: list of str
"""
return self._MetricNames
@MetricNames.setter
def MetricNames(self, MetricNames):
self._MetricNames = MetricNames
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def ProxyIds(self):
"""四层实例列表, 不填表示选择全部实例。
:rtype: list of str
"""
return self._ProxyIds
@ProxyIds.setter
def ProxyIds(self, ProxyIds):
self._ProxyIds = ProxyIds
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>min: 1分钟 ;</li>
<li>5min: 5分钟 ;</li>
<li>hour: 1小时 ;</li>
<li>day: 1天 。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:1小时范围内以min粒度查询,2天范围内以5min粒度查询,7天范围内以hour粒度查询,超过7天以day粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Filters(self):
"""过滤条件,详细的过滤条件Key值如下:
<li>ruleId:按照转发规则 ID 进行过滤。</li>
<li>proxyId:按照四层代理实例 ID 进行过滤。</li>
:rtype: list of QueryCondition
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricNames = params.get("MetricNames")
self._ZoneIds = params.get("ZoneIds")
self._ProxyIds = params.get("ProxyIds")
self._Interval = params.get("Interval")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = QueryCondition()
obj._deserialize(item)
self._Filters.append(obj)
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeTimingL4DataResponse(AbstractModel):
"""DescribeTimingL4Data返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 四层时序流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TimingDataRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""四层时序流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TimingDataRecord
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TimingDataRecord()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeTimingL7AnalysisDataRequest(AbstractModel):
"""DescribeTimingL7AnalysisData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricNames: 指标列表,取值有:
<li>l7Flow_outFlux: L7 EdgeOne 响应流量,单位:Byte;</li>
<li>l7Flow_inFlux: L7 客户端请求流量,单位:Byte;</li>
<li>l7Flow_flux: L7 访问总流量(EdgeOne 响应+客户端请求),单位:Byte;</li>
<li>l7Flow_outBandwidth: L7 EdgeOne 响应带宽,单位:bps;</li>
<li>l7Flow_inBandwidth:L7 客户端请求带宽,单位:bps;</li>
<li>l7Flow_bandwidth:L7 访问总带宽(EdgeOne 响应+客户端请求),单位:bps;</li>
<li>l7Flow_request: L7 访问请求数,单位:次;</li>
<li> l7Flow_avgResponseTime: L7 访问平均响应耗时,单位:ms;</li>
<li> l7Flow_avgFirstByteResponseTime: L7 访问平均首字节响应耗时,单位:ms。</li>
:type MetricNames: list of str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _Interval: 查询时间粒度,取值有:
<li>min: 1分钟;</li>
<li>5min: 5分钟;</li>
<li>hour: 1小时;</li>
<li>day: 1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:2 小时范围内以 min 粒度查询,2 天范围内以 5min 粒度查询,7 天范围内以 hour 粒度查询,超过 7 天以 day 粒度查询。
:type Interval: str
:param _Filters: 过滤条件,详细的过滤条件 Key 值如下:
<li>country:按照国家/地区进行过滤,国家/地区遵循 <a href="https://baike.baidu.com/item/ISO%203166-1/5269555">ISO 3166-1 alpha-2</a> 规范。示例值:CN。</li>
<li>province:按照省份进行过滤,此参数只支持服务区域为中国大陆。省份代码参考<a href="https://cloud.tencent.com/document/product/228/6316#.E5.8C.BA.E5.9F.9F-.2F-.E8.BF.90.E8.90.A5.E5.95.86.E6.98.A0.E5.B0.84.E8.A1.A8">境内省份映射表</a>,示例值:22。</li>
<li>isp:按照运营商进行过滤,此参数只支持服务区域为中国大陆。对应的 Value 可选项如下:<br> 2:中国电信;<br> 26:中国联通;<br> 1046:中国移动;<br> 3947:中国铁通;<br> 38:教育网;<br> 43:长城宽带;<br> 0:其他运营商。</li>
<li>domain:按照子域名进行过滤,示例值: www.example.com。</li>
<li>url:按照 URL Path 进行过滤,示例值:/content 或 /content/test.jpg。若填写 url 参数,则最多可查询近 30 天的数据。</li>
<li>referer:按照 Referer 请求头部进行过滤,示例值:http://www.example.com/。若填写 referer 参数,则最多可查询近 30 天的数据;</li>
<li>resourceType:按照资源类型进行过滤,资源类型一般是文件后缀,示例值:.jpg。若填写 resourceType 参数,则最多可查询近 30 天的数据;</li>
<li>protocol:按照 HTTP 协议版本进行过滤。对应的 Value 可选项如下:<br> HTTP/1.0;<br> HTTP/1.1;<br> HTTP/2.0;<br> HTTP/3;<br> WebSocket。</li>
<li>socket:按照 HTTP协议类型进行过滤。对应的 Value 可选项如下:<br> HTTP:HTTP 协议;<br> HTTPS:HTTPS 协议;<br> QUIC:QUIC 协议。</li>
<li>statusCode:按照边缘状态码进行过滤。若填写 statusCode 参数,则最多可查询近 30 天的数据。对应的 Value 可选项如下:<br> 1XX:1xx类型的状态码;<br> 2XX:2xx类型的状态码;<br> 3XX:3xx类型的状态码;<br> 4XX:4xx类型的状态码;<br> 5XX:5xx类型的状态码;<br> 在 [0,600) 范围内的整数。</li>
<li>browserType:按照浏览器类型进行过滤。若填写 browserType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Firefox:Firefox浏览器;<br> Chrome:Chrome浏览器;<br> Safari:Safari浏览器;<br> Other:其他浏览器类型;<br> Empty:浏览器类型为空;<br> Bot:搜索引擎爬虫;<br> MicrosoftEdge:MicrosoftEdge浏览器;<br> IE:IE浏览器;<br> Opera:Opera浏览器;<br> QQBrowser:QQ浏览器;<br> LBBrowser:LB浏览器;<br> MaxthonBrowser:Maxthon浏览器;<br> SouGouBrowser:搜狗浏览器;<br> BIDUBrowser:百度浏览器;<br> TaoBrowser:淘浏览器;<br> UBrowser:UC浏览器。</li>
<li>deviceType:按照设备类型进行过滤。若填写 deviceType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TV:TV设备;<br> Tablet:Tablet设备;<br> Mobile:Mobile设备;<br> Desktop:Desktop设备;<br> Other:其他设备类型;<br> Empty:设备类型为空。</li>
<li>operatingSystemType:按照操作系统类型进行过滤。若填写 operatingSystemType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Linux:Linux操作系统;<br> MacOS:MacOs操作系统;<br> Android:Android操作系统;<br> IOS:IOS操作系统;<br> Windows:Windows操作系统;<br> NetBSD:NetBSD;<br> ChromiumOS:ChromiumOS;<br> Bot:搜索引擎爬虫;<br> Other:其他类型的操作系统;<br> Empty:操作系统为空。</li>
<li>tlsVersion:按照 TLS 版本进行过滤。若填写 tlsVersion 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TLS1.0;<br> TLS1.1;<br> TLS1.2;<br> TLS1.3。</li>
<li>ipVersion:按照 IP 版本进行过滤。对应 Value 的可选项如下:<br> 4:IPv4;<br> 6:IPv6。</li>
<li>cacheType:按照缓存状态进行过滤。对应 Value 的可选项如下:<br> hit:请求命中 EdgeOne 节点缓存,资源由节点缓存提供。资源部分命中缓存也会记录为 hit。<br> miss:请求未命中 EdgeOne 节点缓存,资源由源站提供。<br> dynamic:请求的资源无法缓存/未配置被节点缓存,资源由源站提供。<br> other:无法被识别的缓存状态。边缘函数响应的请求会记录为 other。</li>
<li>clientIp:按照客户端 IP 进行过滤。</li>
:type Filters: list of QueryCondition
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>
不填默认取值为 global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricNames = None
self._ZoneIds = None
self._Interval = None
self._Filters = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricNames(self):
"""指标列表,取值有:
<li>l7Flow_outFlux: L7 EdgeOne 响应流量,单位:Byte;</li>
<li>l7Flow_inFlux: L7 客户端请求流量,单位:Byte;</li>
<li>l7Flow_flux: L7 访问总流量(EdgeOne 响应+客户端请求),单位:Byte;</li>
<li>l7Flow_outBandwidth: L7 EdgeOne 响应带宽,单位:bps;</li>
<li>l7Flow_inBandwidth:L7 客户端请求带宽,单位:bps;</li>
<li>l7Flow_bandwidth:L7 访问总带宽(EdgeOne 响应+客户端请求),单位:bps;</li>
<li>l7Flow_request: L7 访问请求数,单位:次;</li>
<li> l7Flow_avgResponseTime: L7 访问平均响应耗时,单位:ms;</li>
<li> l7Flow_avgFirstByteResponseTime: L7 访问平均首字节响应耗时,单位:ms。</li>
:rtype: list of str
"""
return self._MetricNames
@MetricNames.setter
def MetricNames(self, MetricNames):
self._MetricNames = MetricNames
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>min: 1分钟;</li>
<li>5min: 5分钟;</li>
<li>hour: 1小时;</li>
<li>day: 1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:2 小时范围内以 min 粒度查询,2 天范围内以 5min 粒度查询,7 天范围内以 hour 粒度查询,超过 7 天以 day 粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Filters(self):
"""过滤条件,详细的过滤条件 Key 值如下:
<li>country:按照国家/地区进行过滤,国家/地区遵循 <a href="https://baike.baidu.com/item/ISO%203166-1/5269555">ISO 3166-1 alpha-2</a> 规范。示例值:CN。</li>
<li>province:按照省份进行过滤,此参数只支持服务区域为中国大陆。省份代码参考<a href="https://cloud.tencent.com/document/product/228/6316#.E5.8C.BA.E5.9F.9F-.2F-.E8.BF.90.E8.90.A5.E5.95.86.E6.98.A0.E5.B0.84.E8.A1.A8">境内省份映射表</a>,示例值:22。</li>
<li>isp:按照运营商进行过滤,此参数只支持服务区域为中国大陆。对应的 Value 可选项如下:<br> 2:中国电信;<br> 26:中国联通;<br> 1046:中国移动;<br> 3947:中国铁通;<br> 38:教育网;<br> 43:长城宽带;<br> 0:其他运营商。</li>
<li>domain:按照子域名进行过滤,示例值: www.example.com。</li>
<li>url:按照 URL Path 进行过滤,示例值:/content 或 /content/test.jpg。若填写 url 参数,则最多可查询近 30 天的数据。</li>
<li>referer:按照 Referer 请求头部进行过滤,示例值:http://www.example.com/。若填写 referer 参数,则最多可查询近 30 天的数据;</li>
<li>resourceType:按照资源类型进行过滤,资源类型一般是文件后缀,示例值:.jpg。若填写 resourceType 参数,则最多可查询近 30 天的数据;</li>
<li>protocol:按照 HTTP 协议版本进行过滤。对应的 Value 可选项如下:<br> HTTP/1.0;<br> HTTP/1.1;<br> HTTP/2.0;<br> HTTP/3;<br> WebSocket。</li>
<li>socket:按照 HTTP协议类型进行过滤。对应的 Value 可选项如下:<br> HTTP:HTTP 协议;<br> HTTPS:HTTPS 协议;<br> QUIC:QUIC 协议。</li>
<li>statusCode:按照边缘状态码进行过滤。若填写 statusCode 参数,则最多可查询近 30 天的数据。对应的 Value 可选项如下:<br> 1XX:1xx类型的状态码;<br> 2XX:2xx类型的状态码;<br> 3XX:3xx类型的状态码;<br> 4XX:4xx类型的状态码;<br> 5XX:5xx类型的状态码;<br> 在 [0,600) 范围内的整数。</li>
<li>browserType:按照浏览器类型进行过滤。若填写 browserType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Firefox:Firefox浏览器;<br> Chrome:Chrome浏览器;<br> Safari:Safari浏览器;<br> Other:其他浏览器类型;<br> Empty:浏览器类型为空;<br> Bot:搜索引擎爬虫;<br> MicrosoftEdge:MicrosoftEdge浏览器;<br> IE:IE浏览器;<br> Opera:Opera浏览器;<br> QQBrowser:QQ浏览器;<br> LBBrowser:LB浏览器;<br> MaxthonBrowser:Maxthon浏览器;<br> SouGouBrowser:搜狗浏览器;<br> BIDUBrowser:百度浏览器;<br> TaoBrowser:淘浏览器;<br> UBrowser:UC浏览器。</li>
<li>deviceType:按照设备类型进行过滤。若填写 deviceType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TV:TV设备;<br> Tablet:Tablet设备;<br> Mobile:Mobile设备;<br> Desktop:Desktop设备;<br> Other:其他设备类型;<br> Empty:设备类型为空。</li>
<li>operatingSystemType:按照操作系统类型进行过滤。若填写 operatingSystemType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Linux:Linux操作系统;<br> MacOS:MacOs操作系统;<br> Android:Android操作系统;<br> IOS:IOS操作系统;<br> Windows:Windows操作系统;<br> NetBSD:NetBSD;<br> ChromiumOS:ChromiumOS;<br> Bot:搜索引擎爬虫;<br> Other:其他类型的操作系统;<br> Empty:操作系统为空。</li>
<li>tlsVersion:按照 TLS 版本进行过滤。若填写 tlsVersion 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TLS1.0;<br> TLS1.1;<br> TLS1.2;<br> TLS1.3。</li>
<li>ipVersion:按照 IP 版本进行过滤。对应 Value 的可选项如下:<br> 4:IPv4;<br> 6:IPv6。</li>
<li>cacheType:按照缓存状态进行过滤。对应 Value 的可选项如下:<br> hit:请求命中 EdgeOne 节点缓存,资源由节点缓存提供。资源部分命中缓存也会记录为 hit。<br> miss:请求未命中 EdgeOne 节点缓存,资源由源站提供。<br> dynamic:请求的资源无法缓存/未配置被节点缓存,资源由源站提供。<br> other:无法被识别的缓存状态。边缘函数响应的请求会记录为 other。</li>
<li>clientIp:按照客户端 IP 进行过滤。</li>
:rtype: list of QueryCondition
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>
不填默认取值为 global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricNames = params.get("MetricNames")
self._ZoneIds = params.get("ZoneIds")
self._Interval = params.get("Interval")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = QueryCondition()
obj._deserialize(item)
self._Filters.append(obj)
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeTimingL7AnalysisDataResponse(AbstractModel):
"""DescribeTimingL7AnalysisData返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 时序流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TimingDataRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""时序流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TimingDataRecord
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TimingDataRecord()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeTimingL7CacheDataRequest(AbstractModel):
"""DescribeTimingL7CacheData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricNames: 查询的指标,取值有:
<li>l7Cache_outFlux:响应流量;</li>
<li>l7Cache_request:响应请求数;</li>
<li> l7Cache_outBandwidth:响应带宽。</li>
:type MetricNames: list of str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _Filters: 过滤条件,详细的过滤条件如下:
<li>domain<br> 按照【<strong>子域名</strong>】进行过滤,子域名形如: test.example.com。<br> 类型:String<br> 必选:否</li>
<li>url<br> 按照【<strong>URL</strong>】进行过滤,此参数只支持30天的时间范围,URL形如:/content。<br> 类型:String<br> 必选:否</li>
<li>resourceType<br> 按照【<strong>资源类型</strong>】进行过滤,此参数只支持30天的时间范围,资源类型形如:jpg,png。<br> 类型:String<br> 必选:否</li>
<li>cacheType<br> 按照【<strong>缓存类型</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> hit:命中缓存;<br> dynamic:资源不可缓存;<br> miss:未命中缓存。</li>
<li>statusCode<br> 按照【<strong>状态码</strong>】进行过滤,此参数只支持30天的时间范围。<br> 类型:String<br> 必选:否<br> 可选项:<br> 1XX:1xx类型的状态码;<br> 100:100状态码;<br> 101:101状态码;<br> 102:102状态码;<br> 2XX:2xx类型的状态码;<br> 200:200状态码;<br> 201:201状态码;<br> 202:202状态码;<br> 203:203状态码;<br> 204:204状态码;<br> 100:100状态码;<br> 206:206状态码;<br> 207:207状态码;<br> 3XX:3xx类型的状态码;<br> 300:300状态码;<br> 301:301状态码;<br> 302:302状态码;<br> 303:303状态码;<br> 304:304状态码;<br> 305:305状态码;<br> 307:307状态码;<br> 4XX:4xx类型的状态码;<br> 400:400状态码;<br> 401:401状态码;<br> 402:402状态码;<br> 403:403状态码;<br> 404:404状态码;<br> 405:405状态码;<br> 406:406状态码;<br> 407:407状态码;<br> 408:408状态码;<br> 409:409状态码;<br> 410:410状态码;<br> 411:411状态码;<br> 412:412状态码;<br> 412:413状态码;<br> 414:414状态码;<br> 415:415状态码;<br> 416:416状态码;<br> 417:417状态码;<br> 422:422状态码;<br> 423:423状态码;<br> 424:424状态码;<br> 426:426状态码;<br> 451:451状态码;<br> 5XX:5xx类型的状态码;<br> 500:500状态码;<br> 501:501状态码;<br> 502:502状态码;<br> 503:503状态码;<br> 504:504状态码;<br> 505:505状态码;<br> 506:506状态码;<br> 507:507状态码;<br> 510:510状态码;<br> 514:514状态码;<br> 544:544状态码。</li>
<li>tagKey<br> 按照【<strong>标签Key</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
<li>tagValue<br> 按照【<strong>标签Value</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
:type Filters: list of QueryCondition
:param _Interval: 查询时间粒度,可选的值有:
<li>min:1分钟的时间粒度;</li>
<li>5min:5分钟的时间粒度;</li>
<li>hour:1小时的时间粒度;</li>
<li>day:1天的时间粒度。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。
:type Interval: str
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricNames = None
self._ZoneIds = None
self._Filters = None
self._Interval = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricNames(self):
"""查询的指标,取值有:
<li>l7Cache_outFlux:响应流量;</li>
<li>l7Cache_request:响应请求数;</li>
<li> l7Cache_outBandwidth:响应带宽。</li>
:rtype: list of str
"""
return self._MetricNames
@MetricNames.setter
def MetricNames(self, MetricNames):
self._MetricNames = MetricNames
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Filters(self):
"""过滤条件,详细的过滤条件如下:
<li>domain<br> 按照【<strong>子域名</strong>】进行过滤,子域名形如: test.example.com。<br> 类型:String<br> 必选:否</li>
<li>url<br> 按照【<strong>URL</strong>】进行过滤,此参数只支持30天的时间范围,URL形如:/content。<br> 类型:String<br> 必选:否</li>
<li>resourceType<br> 按照【<strong>资源类型</strong>】进行过滤,此参数只支持30天的时间范围,资源类型形如:jpg,png。<br> 类型:String<br> 必选:否</li>
<li>cacheType<br> 按照【<strong>缓存类型</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> hit:命中缓存;<br> dynamic:资源不可缓存;<br> miss:未命中缓存。</li>
<li>statusCode<br> 按照【<strong>状态码</strong>】进行过滤,此参数只支持30天的时间范围。<br> 类型:String<br> 必选:否<br> 可选项:<br> 1XX:1xx类型的状态码;<br> 100:100状态码;<br> 101:101状态码;<br> 102:102状态码;<br> 2XX:2xx类型的状态码;<br> 200:200状态码;<br> 201:201状态码;<br> 202:202状态码;<br> 203:203状态码;<br> 204:204状态码;<br> 100:100状态码;<br> 206:206状态码;<br> 207:207状态码;<br> 3XX:3xx类型的状态码;<br> 300:300状态码;<br> 301:301状态码;<br> 302:302状态码;<br> 303:303状态码;<br> 304:304状态码;<br> 305:305状态码;<br> 307:307状态码;<br> 4XX:4xx类型的状态码;<br> 400:400状态码;<br> 401:401状态码;<br> 402:402状态码;<br> 403:403状态码;<br> 404:404状态码;<br> 405:405状态码;<br> 406:406状态码;<br> 407:407状态码;<br> 408:408状态码;<br> 409:409状态码;<br> 410:410状态码;<br> 411:411状态码;<br> 412:412状态码;<br> 412:413状态码;<br> 414:414状态码;<br> 415:415状态码;<br> 416:416状态码;<br> 417:417状态码;<br> 422:422状态码;<br> 423:423状态码;<br> 424:424状态码;<br> 426:426状态码;<br> 451:451状态码;<br> 5XX:5xx类型的状态码;<br> 500:500状态码;<br> 501:501状态码;<br> 502:502状态码;<br> 503:503状态码;<br> 504:504状态码;<br> 505:505状态码;<br> 506:506状态码;<br> 507:507状态码;<br> 510:510状态码;<br> 514:514状态码;<br> 544:544状态码。</li>
<li>tagKey<br> 按照【<strong>标签Key</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
<li>tagValue<br> 按照【<strong>标签Value</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
:rtype: list of QueryCondition
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Interval(self):
"""查询时间粒度,可选的值有:
<li>min:1分钟的时间粒度;</li>
<li>5min:5分钟的时间粒度;</li>
<li>hour:1小时的时间粒度;</li>
<li>day:1天的时间粒度。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricNames = params.get("MetricNames")
self._ZoneIds = params.get("ZoneIds")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = QueryCondition()
obj._deserialize(item)
self._Filters.append(obj)
self._Interval = params.get("Interval")
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeTimingL7CacheDataResponse(AbstractModel):
"""DescribeTimingL7CacheData返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 七层缓存分析时序类流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TimingDataRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""七层缓存分析时序类流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TimingDataRecord
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TimingDataRecord()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeTopL7AnalysisDataRequest(AbstractModel):
"""DescribeTopL7AnalysisData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricName: 查询的指标,取值有:
<li> l7Flow_outFlux_country:按国家/地区维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_province:按中国大陆境内省份维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_statusCode:按状态码维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_domain:按域名维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_url:按 URL Path 维度统计 L7 EdgeOne 响应流量指标; </li>
<li> l7Flow_outFlux_resourceType:按资源类型维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_sip:按客户端 IP 维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_referers:按 Referer 维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_ua_device:按设备类型维度统计 L7 EdgeOne 响应流量指标; </li>
<li> l7Flow_outFlux_ua_browser:按浏览器类型维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_ua_os:按操作系统类型维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_request_country:按国家/地区维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_province:按中国大陆境内省份维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_statusCode:按状态码维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_domain:按域名维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_url:按 URL Path 维度统计 L7 访问请求数指标; </li>
<li> l7Flow_request_resourceType:按资源类型维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_sip:按客户端 IP 维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_referer:按 Referer 维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_ua_device:按设备类型维度统计 L7 访问请求数指标; </li>
<li> l7Flow_request_ua_browser:按浏览器类型维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_ua_os:按操作系统类型维度统计 L7 访问请求数指标。</li>
:type MetricName: str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _Limit: 查询前多少个 top 数据,最大值为1000。不填默认为10,表示查询 top10 的数据。
:type Limit: int
:param _Filters: 过滤条件,详细的过滤条件 Key 值如下:
<li>country:按照国家/地区进行过滤,国家/地区遵循 <a href="https://baike.baidu.com/item/ISO%203166-1/5269555">ISO 3166-1 alpha-2</a> 规范。示例值:CN。</li>
<li>province:按照省份进行过滤,此参数只支持服务区域为中国大陆。省份代码参考<a href="https://cloud.tencent.com/document/product/228/6316#.E5.8C.BA.E5.9F.9F-.2F-.E8.BF.90.E8.90.A5.E5.95.86.E6.98.A0.E5.B0.84.E8.A1.A8">境内省份映射表</a>,示例值:22。</li>
<li>isp:按照运营商进行过滤,此参数只支持服务区域为中国大陆。对应的 Value 可选项如下:<br> 2:中国电信;<br> 26:中国联通;<br> 1046:中国移动;<br> 3947:中国铁通;<br> 38:教育网;<br> 43:长城宽带;<br> 0:其他运营商。</li>
<li>domain:按照子域名进行过滤,示例值: www.example.com。</li>
<li>url:按照 URL Path 进行过滤,示例值:/content 或 /content/test.jpg。若填写 url 参数,则最多可查询近 30 天的数据。</li>
<li>referer:按照 Referer 请求头部进行过滤,示例值:http://www.example.com/。若填写 referer 参数,则最多可查询近 30 天的数据;</li>
<li>resourceType:按照资源类型进行过滤,资源类型一般是文件后缀,示例值:.jpg。若填写 resourceType 参数,则最多可查询近 30 天的数据;</li>
<li>protocol:按照 HTTP 协议版本进行过滤。对应的 Value 可选项如下:<br> HTTP/1.0;<br> HTTP/1.1;<br> HTTP/2.0;<br> HTTP/3;<br> WebSocket。</li>
<li>socket:按照 HTTP协议类型进行过滤。对应的 Value 可选项如下:<br> HTTP:HTTP 协议;<br> HTTPS:HTTPS 协议;<br> QUIC:QUIC 协议。</li>
<li>statusCode:按照边缘状态码进行过滤。若填写 statusCode 参数,则最多可查询近 30 天的数据。对应的 Value 可选项如下:<br> 1XX:1xx类型的状态码;<br> 2XX:2xx类型的状态码;<br> 3XX:3xx类型的状态码;<br> 4XX:4xx类型的状态码;<br> 5XX:5xx类型的状态码;<br> 在 [0,600) 范围内的整数。</li>
<li>browserType:按照浏览器类型进行过滤。若填写 browserType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Firefox:Firefox浏览器;<br> Chrome:Chrome浏览器;<br> Safari:Safari浏览器;<br> Other:其他浏览器类型;<br> Empty:浏览器类型为空;<br> Bot:搜索引擎爬虫;<br> MicrosoftEdge:MicrosoftEdge浏览器;<br> IE:IE浏览器;<br> Opera:Opera浏览器;<br> QQBrowser:QQ浏览器;<br> LBBrowser:LB浏览器;<br> MaxthonBrowser:Maxthon浏览器;<br> SouGouBrowser:搜狗浏览器;<br> BIDUBrowser:百度浏览器;<br> TaoBrowser:淘浏览器;<br> UBrowser:UC浏览器。</li>
<li>deviceType:按照设备类型进行过滤。若填写 deviceType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TV:TV设备;<br> Tablet:Tablet设备;<br> Mobile:Mobile设备;<br> Desktop:Desktop设备;<br> Other:其他设备类型;<br> Empty:设备类型为空。</li>
<li>operatingSystemType:按照操作系统类型进行过滤。若填写 operatingSystemType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Linux:Linux操作系统;<br> MacOS:MacOs操作系统;<br> Android:Android操作系统;<br> IOS:IOS操作系统;<br> Windows:Windows操作系统;<br> NetBSD:NetBSD;<br> ChromiumOS:ChromiumOS;<br> Bot:搜索引擎爬虫;<br> Other:其他类型的操作系统;<br> Empty:操作系统为空。</li>
<li>tlsVersion:按照 TLS 版本进行过滤。若填写 tlsVersion 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TLS1.0;<br> TLS1.1;<br> TLS1.2;<br> TLS1.3。</li>
<li>ipVersion:按照 IP 版本进行过滤。对应 Value 的可选项如下:<br> 4:IPv4;<br> 6:IPv6。</li>
<li>cacheType:按照缓存状态进行过滤。对应 Value 的可选项如下:<br> hit:请求命中 EdgeOne 节点缓存,资源由节点缓存提供。资源部分命中缓存也会记录为 hit。<br> miss:请求未命中 EdgeOne 节点缓存,资源由源站提供。<br> dynamic:请求的资源无法缓存/未配置被节点缓存,资源由源站提供。<br> other:无法被识别的缓存状态。边缘函数响应的请求会记录为 other。</li>
<li>clientIp:按照客户端 IP 进行过滤。</li>
:type Filters: list of QueryCondition
:param _Interval: 查询时间粒度,取值有:
<li>min: 1分钟;</li>
<li>5min: 5分钟;</li>
<li>hour: 1小时;</li>
<li>day: 1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:2 小时范围内以 min 粒度查询,2 天范围内以 5min 粒度查询,7 天范围内以 hour 粒度查询,超过 7 天以 day 粒度查询。
:type Interval: str
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricName = None
self._ZoneIds = None
self._Limit = None
self._Filters = None
self._Interval = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricName(self):
"""查询的指标,取值有:
<li> l7Flow_outFlux_country:按国家/地区维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_province:按中国大陆境内省份维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_statusCode:按状态码维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_domain:按域名维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_url:按 URL Path 维度统计 L7 EdgeOne 响应流量指标; </li>
<li> l7Flow_outFlux_resourceType:按资源类型维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_sip:按客户端 IP 维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_referers:按 Referer 维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_ua_device:按设备类型维度统计 L7 EdgeOne 响应流量指标; </li>
<li> l7Flow_outFlux_ua_browser:按浏览器类型维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_outFlux_ua_os:按操作系统类型维度统计 L7 EdgeOne 响应流量指标;</li>
<li> l7Flow_request_country:按国家/地区维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_province:按中国大陆境内省份维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_statusCode:按状态码维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_domain:按域名维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_url:按 URL Path 维度统计 L7 访问请求数指标; </li>
<li> l7Flow_request_resourceType:按资源类型维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_sip:按客户端 IP 维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_referer:按 Referer 维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_ua_device:按设备类型维度统计 L7 访问请求数指标; </li>
<li> l7Flow_request_ua_browser:按浏览器类型维度统计 L7 访问请求数指标;</li>
<li> l7Flow_request_ua_os:按操作系统类型维度统计 L7 访问请求数指标。</li>
:rtype: str
"""
return self._MetricName
@MetricName.setter
def MetricName(self, MetricName):
self._MetricName = MetricName
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Limit(self):
"""查询前多少个 top 数据,最大值为1000。不填默认为10,表示查询 top10 的数据。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,详细的过滤条件 Key 值如下:
<li>country:按照国家/地区进行过滤,国家/地区遵循 <a href="https://baike.baidu.com/item/ISO%203166-1/5269555">ISO 3166-1 alpha-2</a> 规范。示例值:CN。</li>
<li>province:按照省份进行过滤,此参数只支持服务区域为中国大陆。省份代码参考<a href="https://cloud.tencent.com/document/product/228/6316#.E5.8C.BA.E5.9F.9F-.2F-.E8.BF.90.E8.90.A5.E5.95.86.E6.98.A0.E5.B0.84.E8.A1.A8">境内省份映射表</a>,示例值:22。</li>
<li>isp:按照运营商进行过滤,此参数只支持服务区域为中国大陆。对应的 Value 可选项如下:<br> 2:中国电信;<br> 26:中国联通;<br> 1046:中国移动;<br> 3947:中国铁通;<br> 38:教育网;<br> 43:长城宽带;<br> 0:其他运营商。</li>
<li>domain:按照子域名进行过滤,示例值: www.example.com。</li>
<li>url:按照 URL Path 进行过滤,示例值:/content 或 /content/test.jpg。若填写 url 参数,则最多可查询近 30 天的数据。</li>
<li>referer:按照 Referer 请求头部进行过滤,示例值:http://www.example.com/。若填写 referer 参数,则最多可查询近 30 天的数据;</li>
<li>resourceType:按照资源类型进行过滤,资源类型一般是文件后缀,示例值:.jpg。若填写 resourceType 参数,则最多可查询近 30 天的数据;</li>
<li>protocol:按照 HTTP 协议版本进行过滤。对应的 Value 可选项如下:<br> HTTP/1.0;<br> HTTP/1.1;<br> HTTP/2.0;<br> HTTP/3;<br> WebSocket。</li>
<li>socket:按照 HTTP协议类型进行过滤。对应的 Value 可选项如下:<br> HTTP:HTTP 协议;<br> HTTPS:HTTPS 协议;<br> QUIC:QUIC 协议。</li>
<li>statusCode:按照边缘状态码进行过滤。若填写 statusCode 参数,则最多可查询近 30 天的数据。对应的 Value 可选项如下:<br> 1XX:1xx类型的状态码;<br> 2XX:2xx类型的状态码;<br> 3XX:3xx类型的状态码;<br> 4XX:4xx类型的状态码;<br> 5XX:5xx类型的状态码;<br> 在 [0,600) 范围内的整数。</li>
<li>browserType:按照浏览器类型进行过滤。若填写 browserType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Firefox:Firefox浏览器;<br> Chrome:Chrome浏览器;<br> Safari:Safari浏览器;<br> Other:其他浏览器类型;<br> Empty:浏览器类型为空;<br> Bot:搜索引擎爬虫;<br> MicrosoftEdge:MicrosoftEdge浏览器;<br> IE:IE浏览器;<br> Opera:Opera浏览器;<br> QQBrowser:QQ浏览器;<br> LBBrowser:LB浏览器;<br> MaxthonBrowser:Maxthon浏览器;<br> SouGouBrowser:搜狗浏览器;<br> BIDUBrowser:百度浏览器;<br> TaoBrowser:淘浏览器;<br> UBrowser:UC浏览器。</li>
<li>deviceType:按照设备类型进行过滤。若填写 deviceType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TV:TV设备;<br> Tablet:Tablet设备;<br> Mobile:Mobile设备;<br> Desktop:Desktop设备;<br> Other:其他设备类型;<br> Empty:设备类型为空。</li>
<li>operatingSystemType:按照操作系统类型进行过滤。若填写 operatingSystemType 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> Linux:Linux操作系统;<br> MacOS:MacOs操作系统;<br> Android:Android操作系统;<br> IOS:IOS操作系统;<br> Windows:Windows操作系统;<br> NetBSD:NetBSD;<br> ChromiumOS:ChromiumOS;<br> Bot:搜索引擎爬虫;<br> Other:其他类型的操作系统;<br> Empty:操作系统为空。</li>
<li>tlsVersion:按照 TLS 版本进行过滤。若填写 tlsVersion 参数,则最多可查询近 30 天的数据。对应 Value 的可选项如下:<br> TLS1.0;<br> TLS1.1;<br> TLS1.2;<br> TLS1.3。</li>
<li>ipVersion:按照 IP 版本进行过滤。对应 Value 的可选项如下:<br> 4:IPv4;<br> 6:IPv6。</li>
<li>cacheType:按照缓存状态进行过滤。对应 Value 的可选项如下:<br> hit:请求命中 EdgeOne 节点缓存,资源由节点缓存提供。资源部分命中缓存也会记录为 hit。<br> miss:请求未命中 EdgeOne 节点缓存,资源由源站提供。<br> dynamic:请求的资源无法缓存/未配置被节点缓存,资源由源站提供。<br> other:无法被识别的缓存状态。边缘函数响应的请求会记录为 other。</li>
<li>clientIp:按照客户端 IP 进行过滤。</li>
:rtype: list of QueryCondition
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>min: 1分钟;</li>
<li>5min: 5分钟;</li>
<li>hour: 1小时;</li>
<li>day: 1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:2 小时范围内以 min 粒度查询,2 天范围内以 5min 粒度查询,7 天范围内以 hour 粒度查询,超过 7 天以 day 粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricName = params.get("MetricName")
self._ZoneIds = params.get("ZoneIds")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = QueryCondition()
obj._deserialize(item)
self._Filters.append(obj)
self._Interval = params.get("Interval")
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeTopL7AnalysisDataResponse(AbstractModel):
"""DescribeTopL7AnalysisData返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 七层访问数据按照 MetricName 指定统计维度的前 topN 数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TopDataRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""七层访问数据按照 MetricName 指定统计维度的前 topN 数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TopDataRecord
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TopDataRecord()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeTopL7CacheDataRequest(AbstractModel):
"""DescribeTopL7CacheData请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _MetricName: 查询的指标,取值有:
<li> l7Cache_outFlux_domain:host/域名;</li>
<li> l7Cache_outFlux_url:url地址;</li>
<li> l7Cache_outFlux_resourceType:资源类型;</li>
<li> l7Cache_outFlux_statusCode:状态码。</li>
:type MetricName: str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _Limit: 查询前多少个数据,最大值为1000,不填默认为10, 表示查询前top 10的数据。
:type Limit: int
:param _Filters: 过滤条件,详细的过滤条件如下:
<li>domain<br> 按照【<strong>子域名</strong>】进行过滤,子域名形如: test.example.com。<br> 类型:String<br> 必选:否</li>
<li>url<br> 按照【<strong>URL</strong>】进行过滤,此参数只支持30天的时间范围,URL形如:/content。<br> 类型:String<br> 必选:否</li>
<li>resourceType<br> 按照【<strong>资源类型</strong>】进行过滤,此参数只支持30天的时间范围,资源类型形如:jpg,png。<br> 类型:String<br> 必选:否</li>
<li>cacheType<br> 按照【<strong>缓存类型</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> hit:命中缓存;<br> dynamic:资源不可缓存;<br> miss:未命中缓存。</li>
<li>statusCode<br> 按照【<strong>状态码</strong>】进行过滤,此参数只支持30天的时间范围。<br> 类型:String<br> 必选:否<br> 可选项:<br> 1XX:1xx类型的状态码;<br> 100:100状态码;<br> 101:101状态码;<br> 102:102状态码;<br> 2XX:2xx类型的状态码;<br> 200:200状态码;<br> 201:201状态码;<br> 202:202状态码;<br> 203:203状态码;<br> 204:204状态码;<br> 100:100状态码;<br> 206:206状态码;<br> 207:207状态码;<br> 3XX:3xx类型的状态码;<br> 300:300状态码;<br> 301:301状态码;<br> 302:302状态码;<br> 303:303状态码;<br> 304:304状态码;<br> 305:305状态码;<br> 307:307状态码;<br> 4XX:4xx类型的状态码;<br> 400:400状态码;<br> 401:401状态码;<br> 402:402状态码;<br> 403:403状态码;<br> 404:404状态码;<br> 405:405状态码;<br> 406:406状态码;<br> 407:407状态码;<br> 408:408状态码;<br> 409:409状态码;<br> 410:410状态码;<br> 411:411状态码;<br> 412:412状态码;<br> 412:413状态码;<br> 414:414状态码;<br> 415:415状态码;<br> 416:416状态码;<br> 417:417状态码;<br> 422:422状态码;<br> 423:423状态码;<br> 424:424状态码;<br> 426:426状态码;<br> 451:451状态码;<br> 5XX:5xx类型的状态码;<br> 500:500状态码;<br> 501:501状态码;<br> 502:502状态码;<br> 503:503状态码;<br> 504:504状态码;<br> 505:505状态码;<br> 506:506状态码;<br> 507:507状态码;<br> 510:510状态码;<br> 514:514状态码;<br> 544:544状态码。</li>
<li>tagKey<br> 按照【<strong>标签Key</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
<li>tagValue<br> 按照【<strong>标签Value</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
:type Filters: list of QueryCondition
:param _Interval: 查询时间粒度,取值有:
<li>min: 1分钟;</li>
<li>5min: 5分钟;</li>
<li>hour: 1小时;</li>
<li>day: 1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。
:type Interval: str
:param _Area: 数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:type Area: str
"""
self._StartTime = None
self._EndTime = None
self._MetricName = None
self._ZoneIds = None
self._Limit = None
self._Filters = None
self._Interval = None
self._Area = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def MetricName(self):
"""查询的指标,取值有:
<li> l7Cache_outFlux_domain:host/域名;</li>
<li> l7Cache_outFlux_url:url地址;</li>
<li> l7Cache_outFlux_resourceType:资源类型;</li>
<li> l7Cache_outFlux_statusCode:状态码。</li>
:rtype: str
"""
return self._MetricName
@MetricName.setter
def MetricName(self, MetricName):
self._MetricName = MetricName
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Limit(self):
"""查询前多少个数据,最大值为1000,不填默认为10, 表示查询前top 10的数据。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,详细的过滤条件如下:
<li>domain<br> 按照【<strong>子域名</strong>】进行过滤,子域名形如: test.example.com。<br> 类型:String<br> 必选:否</li>
<li>url<br> 按照【<strong>URL</strong>】进行过滤,此参数只支持30天的时间范围,URL形如:/content。<br> 类型:String<br> 必选:否</li>
<li>resourceType<br> 按照【<strong>资源类型</strong>】进行过滤,此参数只支持30天的时间范围,资源类型形如:jpg,png。<br> 类型:String<br> 必选:否</li>
<li>cacheType<br> 按照【<strong>缓存类型</strong>】进行过滤。<br> 类型:String<br> 必选:否<br> 可选项:<br> hit:命中缓存;<br> dynamic:资源不可缓存;<br> miss:未命中缓存。</li>
<li>statusCode<br> 按照【<strong>状态码</strong>】进行过滤,此参数只支持30天的时间范围。<br> 类型:String<br> 必选:否<br> 可选项:<br> 1XX:1xx类型的状态码;<br> 100:100状态码;<br> 101:101状态码;<br> 102:102状态码;<br> 2XX:2xx类型的状态码;<br> 200:200状态码;<br> 201:201状态码;<br> 202:202状态码;<br> 203:203状态码;<br> 204:204状态码;<br> 100:100状态码;<br> 206:206状态码;<br> 207:207状态码;<br> 3XX:3xx类型的状态码;<br> 300:300状态码;<br> 301:301状态码;<br> 302:302状态码;<br> 303:303状态码;<br> 304:304状态码;<br> 305:305状态码;<br> 307:307状态码;<br> 4XX:4xx类型的状态码;<br> 400:400状态码;<br> 401:401状态码;<br> 402:402状态码;<br> 403:403状态码;<br> 404:404状态码;<br> 405:405状态码;<br> 406:406状态码;<br> 407:407状态码;<br> 408:408状态码;<br> 409:409状态码;<br> 410:410状态码;<br> 411:411状态码;<br> 412:412状态码;<br> 412:413状态码;<br> 414:414状态码;<br> 415:415状态码;<br> 416:416状态码;<br> 417:417状态码;<br> 422:422状态码;<br> 423:423状态码;<br> 424:424状态码;<br> 426:426状态码;<br> 451:451状态码;<br> 5XX:5xx类型的状态码;<br> 500:500状态码;<br> 501:501状态码;<br> 502:502状态码;<br> 503:503状态码;<br> 504:504状态码;<br> 505:505状态码;<br> 506:506状态码;<br> 507:507状态码;<br> 510:510状态码;<br> 514:514状态码;<br> 544:544状态码。</li>
<li>tagKey<br> 按照【<strong>标签Key</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
<li>tagValue<br> 按照【<strong>标签Value</strong>】进行过滤。<br> 类型:String<br> 必选:否</li>
:rtype: list of QueryCondition
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Interval(self):
"""查询时间粒度,取值有:
<li>min: 1分钟;</li>
<li>5min: 5分钟;</li>
<li>hour: 1小时;</li>
<li>day: 1天。</li>不填将根据开始时间跟结束时间的间距自动推算粒度,具体为:一小时范围内以min粒度查询,两天范围内以5min粒度查询,七天范围内以hour粒度查询,超过七天以day粒度查询。
:rtype: str
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Area(self):
"""数据归属地区,取值有:
<li>overseas:全球(除中国大陆地区)数据;</li>
<li>mainland:中国大陆地区数据;</li>
<li>global:全球数据。</li>不填默认取值为global。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._MetricName = params.get("MetricName")
self._ZoneIds = params.get("ZoneIds")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = QueryCondition()
obj._deserialize(item)
self._Filters.append(obj)
self._Interval = params.get("Interval")
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeTopL7CacheDataResponse(AbstractModel):
"""DescribeTopL7CacheData返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 七层缓存TopN流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Data: list of TopDataRecord
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""七层缓存TopN流量数据列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TopDataRecord
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = TopDataRecord()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DescribeZoneConfigImportResultRequest(AbstractModel):
"""DescribeZoneConfigImportResult请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _TaskId: 表示需要查询结果的导入配置任务 Id,导入任务 Id 仅支持查询最近 7 天的导入任务。
:type TaskId: str
"""
self._ZoneId = None
self._TaskId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TaskId(self):
"""表示需要查询结果的导入配置任务 Id,导入任务 Id 仅支持查询最近 7 天的导入任务。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._TaskId = params.get("TaskId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeZoneConfigImportResultResponse(AbstractModel):
"""DescribeZoneConfigImportResult返回参数结构体
"""
def __init__(self):
r"""
:param _Status: 本次导入任务的导入状态。取值有: <li>success:表示配置项导入成功;</li> <li>failure:表示配置项导入失败;</li> <li>doing:表示配置项正在导入中。</li>
:type Status: str
:param _Message: 本次导入任务的状态的提示信息。当配置项导入失败时,可通过本字段查看失败原因。
:type Message: str
:param _Content: 本次导入任务的配置内容。
:type Content: str
:param _ImportTime: 本次导入任务的开始时间。
:type ImportTime: str
:param _FinishTime: 本次导入任务的结束时间。
:type FinishTime: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Status = None
self._Message = None
self._Content = None
self._ImportTime = None
self._FinishTime = None
self._RequestId = None
@property
def Status(self):
"""本次导入任务的导入状态。取值有: <li>success:表示配置项导入成功;</li> <li>failure:表示配置项导入失败;</li> <li>doing:表示配置项正在导入中。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Message(self):
"""本次导入任务的状态的提示信息。当配置项导入失败时,可通过本字段查看失败原因。
:rtype: str
"""
return self._Message
@Message.setter
def Message(self, Message):
self._Message = Message
@property
def Content(self):
"""本次导入任务的配置内容。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def ImportTime(self):
"""本次导入任务的开始时间。
:rtype: str
"""
return self._ImportTime
@ImportTime.setter
def ImportTime(self, ImportTime):
self._ImportTime = ImportTime
@property
def FinishTime(self):
"""本次导入任务的结束时间。
:rtype: str
"""
return self._FinishTime
@FinishTime.setter
def FinishTime(self, FinishTime):
self._FinishTime = FinishTime
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._Status = params.get("Status")
self._Message = params.get("Message")
self._Content = params.get("Content")
self._ImportTime = params.get("ImportTime")
self._FinishTime = params.get("FinishTime")
self._RequestId = params.get("RequestId")
class DescribeZoneSettingRequest(AbstractModel):
"""DescribeZoneSetting请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
"""
self._ZoneId = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeZoneSettingResponse(AbstractModel):
"""DescribeZoneSetting返回参数结构体
"""
def __init__(self):
r"""
:param _ZoneSetting: 站点配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ZoneSetting: :class:`tencentcloud.teo.v20220901.models.ZoneSetting`
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._ZoneSetting = None
self._RequestId = None
@property
def ZoneSetting(self):
"""站点配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ZoneSetting`
"""
return self._ZoneSetting
@ZoneSetting.setter
def ZoneSetting(self, ZoneSetting):
self._ZoneSetting = ZoneSetting
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("ZoneSetting") is not None:
self._ZoneSetting = ZoneSetting()
self._ZoneSetting._deserialize(params.get("ZoneSetting"))
self._RequestId = params.get("RequestId")
class DescribeZonesRequest(AbstractModel):
"""DescribeZones请求参数结构体
"""
def __init__(self):
r"""
:param _Offset: 分页查询偏移量。默认值:0。
:type Offset: int
:param _Limit: 分页查询限制数目。默认值:20,最大值:100。
:type Limit: int
:param _Filters: 过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 appid 下有权限的所有站点信息。详细的过滤条件如下:
<li>zone-name:按照站点名称进行过滤;</li><li>zone-id:按照站点 ID进行过滤。站点 ID 形如:zone-2noz78a8ev6k;</li><li>status:按照站点状态进行过滤;</li><li>tag-key:按照标签键进行过滤;</li><li>tag-value: 按照标签值进行过滤。</li><li>alias-zone-name: 按照同名站点标识进行过滤。</li>模糊查询时支持过滤字段名为 zone-name 或 alias-zone-name。
:type Filters: list of AdvancedFilter
:param _Order: 可根据该字段对返回结果进行排序,取值有:
<li> type:接入类型;</li>
<li> area:加速区域;</li>
<li> create-time:创建时间;</li>
<li> zone-name:站点名称;</li>
<li> use-time:最近使用时间;</li>
<li> active-status:生效状态。</li>不填写时对返回结果默认按照 create-time 排序。
:type Order: str
:param _Direction: 排序方向,如果是字段值为数字,则根据数字大小排序;如果字段值为文本,则根据 ascill 码的大小排序。取值有:
<li> asc:从小到大排序;</li>
<li> desc:从大到小排序。</li>不填写使用默认值 desc。
:type Direction: str
"""
self._Offset = None
self._Limit = None
self._Filters = None
self._Order = None
self._Direction = None
@property
def Offset(self):
"""分页查询偏移量。默认值:0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
@property
def Limit(self):
"""分页查询限制数目。默认值:20,最大值:100。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Filters(self):
"""过滤条件,Filters.Values 的上限为 20。该参数不填写时,返回当前 appid 下有权限的所有站点信息。详细的过滤条件如下:
<li>zone-name:按照站点名称进行过滤;</li><li>zone-id:按照站点 ID进行过滤。站点 ID 形如:zone-2noz78a8ev6k;</li><li>status:按照站点状态进行过滤;</li><li>tag-key:按照标签键进行过滤;</li><li>tag-value: 按照标签值进行过滤。</li><li>alias-zone-name: 按照同名站点标识进行过滤。</li>模糊查询时支持过滤字段名为 zone-name 或 alias-zone-name。
:rtype: list of AdvancedFilter
"""
return self._Filters
@Filters.setter
def Filters(self, Filters):
self._Filters = Filters
@property
def Order(self):
"""可根据该字段对返回结果进行排序,取值有:
<li> type:接入类型;</li>
<li> area:加速区域;</li>
<li> create-time:创建时间;</li>
<li> zone-name:站点名称;</li>
<li> use-time:最近使用时间;</li>
<li> active-status:生效状态。</li>不填写时对返回结果默认按照 create-time 排序。
:rtype: str
"""
return self._Order
@Order.setter
def Order(self, Order):
self._Order = Order
@property
def Direction(self):
"""排序方向,如果是字段值为数字,则根据数字大小排序;如果字段值为文本,则根据 ascill 码的大小排序。取值有:
<li> asc:从小到大排序;</li>
<li> desc:从大到小排序。</li>不填写使用默认值 desc。
:rtype: str
"""
return self._Direction
@Direction.setter
def Direction(self, Direction):
self._Direction = Direction
def _deserialize(self, params):
self._Offset = params.get("Offset")
self._Limit = params.get("Limit")
if params.get("Filters") is not None:
self._Filters = []
for item in params.get("Filters"):
obj = AdvancedFilter()
obj._deserialize(item)
self._Filters.append(obj)
self._Order = params.get("Order")
self._Direction = params.get("Direction")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DescribeZonesResponse(AbstractModel):
"""DescribeZones返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 符合条件的站点个数。
:type TotalCount: int
:param _Zones: 站点详细信息。
:type Zones: list of Zone
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Zones = None
self._RequestId = None
@property
def TotalCount(self):
"""符合条件的站点个数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Zones(self):
"""站点详细信息。
:rtype: list of Zone
"""
return self._Zones
@Zones.setter
def Zones(self, Zones):
self._Zones = Zones
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Zones") is not None:
self._Zones = []
for item in params.get("Zones"):
obj = Zone()
obj._deserialize(item)
self._Zones.append(obj)
self._RequestId = params.get("RequestId")
class DestroyPlanRequest(AbstractModel):
"""DestroyPlan请求参数结构体
"""
def __init__(self):
r"""
:param _PlanId: 套餐 ID,形如 edgeone-2wdo315m2y4c。
:type PlanId: str
"""
self._PlanId = None
@property
def PlanId(self):
"""套餐 ID,形如 edgeone-2wdo315m2y4c。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
def _deserialize(self, params):
self._PlanId = params.get("PlanId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DestroyPlanResponse(AbstractModel):
"""DestroyPlan返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class DetailHost(AbstractModel):
"""域名配置信息
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _Status: 加速服务状态,取值为:
<li> process:部署中;</li>
<li> online:已启动;</li>
<li> offline:已关闭。</li>
:type Status: str
:param _Host: 域名。
:type Host: str
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _Cname: 分配的Cname域名
:type Cname: str
:param _Id: 资源ID。
:type Id: str
:param _InstanceId: 实例ID。
:type InstanceId: str
:param _Lock: 锁状态。
:type Lock: int
:param _Mode: 域名状态类型。
:type Mode: int
:param _Area: 域名加速地域,取值有:
<li> global:全球;</li>
<li> mainland:中国大陆;</li>
<li> overseas:境外区域。</li>
:type Area: str
:param _AccelerateType: 加速类型配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type AccelerateType: :class:`tencentcloud.teo.v20220901.models.AccelerateType`
:param _Https: Https配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type Https: :class:`tencentcloud.teo.v20220901.models.Https`
:param _CacheConfig: 缓存配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheConfig: :class:`tencentcloud.teo.v20220901.models.CacheConfig`
:param _Origin: 源站配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type Origin: :class:`tencentcloud.teo.v20220901.models.Origin`
:param _SecurityType: 安全类型。
注意:此字段可能返回 null,表示取不到有效值。
:type SecurityType: :class:`tencentcloud.teo.v20220901.models.SecurityType`
:param _CacheKey: 缓存键配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheKey: :class:`tencentcloud.teo.v20220901.models.CacheKey`
:param _Compression: 智能压缩配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type Compression: :class:`tencentcloud.teo.v20220901.models.Compression`
:param _Waf: Waf防护配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type Waf: :class:`tencentcloud.teo.v20220901.models.Waf`
:param _CC: CC防护配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type CC: :class:`tencentcloud.teo.v20220901.models.CC`
:param _DDoS: DDoS防护配置。
注意:此字段可能返回 null,表示取不到有效值。
:type DDoS: :class:`tencentcloud.teo.v20220901.models.DDoS`
:param _SmartRouting: 智能路由配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type SmartRouting: :class:`tencentcloud.teo.v20220901.models.SmartRouting`
:param _Ipv6: Ipv6访问配置项。
注意:此字段可能返回 null,表示取不到有效值。
:type Ipv6: :class:`tencentcloud.teo.v20220901.models.Ipv6`
:param _ClientIpCountry: 回源时是否携带客户端IP所属地域信息的配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIpCountry: :class:`tencentcloud.teo.v20220901.models.ClientIpCountry`
"""
self._ZoneId = None
self._Status = None
self._Host = None
self._ZoneName = None
self._Cname = None
self._Id = None
self._InstanceId = None
self._Lock = None
self._Mode = None
self._Area = None
self._AccelerateType = None
self._Https = None
self._CacheConfig = None
self._Origin = None
self._SecurityType = None
self._CacheKey = None
self._Compression = None
self._Waf = None
self._CC = None
self._DDoS = None
self._SmartRouting = None
self._Ipv6 = None
self._ClientIpCountry = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Status(self):
"""加速服务状态,取值为:
<li> process:部署中;</li>
<li> online:已启动;</li>
<li> offline:已关闭。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Host(self):
"""域名。
:rtype: str
"""
return self._Host
@Host.setter
def Host(self, Host):
self._Host = Host
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def Cname(self):
"""分配的Cname域名
:rtype: str
"""
return self._Cname
@Cname.setter
def Cname(self, Cname):
self._Cname = Cname
@property
def Id(self):
"""资源ID。
:rtype: str
"""
return self._Id
@Id.setter
def Id(self, Id):
self._Id = Id
@property
def InstanceId(self):
"""实例ID。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
@property
def Lock(self):
"""锁状态。
:rtype: int
"""
return self._Lock
@Lock.setter
def Lock(self, Lock):
self._Lock = Lock
@property
def Mode(self):
"""域名状态类型。
:rtype: int
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def Area(self):
"""域名加速地域,取值有:
<li> global:全球;</li>
<li> mainland:中国大陆;</li>
<li> overseas:境外区域。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def AccelerateType(self):
"""加速类型配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerateType`
"""
return self._AccelerateType
@AccelerateType.setter
def AccelerateType(self, AccelerateType):
self._AccelerateType = AccelerateType
@property
def Https(self):
"""Https配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Https`
"""
return self._Https
@Https.setter
def Https(self, Https):
self._Https = Https
@property
def CacheConfig(self):
"""缓存配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheConfig`
"""
return self._CacheConfig
@CacheConfig.setter
def CacheConfig(self, CacheConfig):
self._CacheConfig = CacheConfig
@property
def Origin(self):
"""源站配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Origin`
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def SecurityType(self):
"""安全类型。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityType`
"""
return self._SecurityType
@SecurityType.setter
def SecurityType(self, SecurityType):
self._SecurityType = SecurityType
@property
def CacheKey(self):
"""缓存键配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKey`
"""
return self._CacheKey
@CacheKey.setter
def CacheKey(self, CacheKey):
self._CacheKey = CacheKey
@property
def Compression(self):
"""智能压缩配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Compression`
"""
return self._Compression
@Compression.setter
def Compression(self, Compression):
self._Compression = Compression
@property
def Waf(self):
"""Waf防护配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Waf`
"""
return self._Waf
@Waf.setter
def Waf(self, Waf):
self._Waf = Waf
@property
def CC(self):
"""CC防护配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CC`
"""
return self._CC
@CC.setter
def CC(self, CC):
self._CC = CC
@property
def DDoS(self):
"""DDoS防护配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DDoS`
"""
return self._DDoS
@DDoS.setter
def DDoS(self, DDoS):
self._DDoS = DDoS
@property
def SmartRouting(self):
"""智能路由配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SmartRouting`
"""
return self._SmartRouting
@SmartRouting.setter
def SmartRouting(self, SmartRouting):
self._SmartRouting = SmartRouting
@property
def Ipv6(self):
"""Ipv6访问配置项。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Ipv6`
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def ClientIpCountry(self):
"""回源时是否携带客户端IP所属地域信息的配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIpCountry`
"""
return self._ClientIpCountry
@ClientIpCountry.setter
def ClientIpCountry(self, ClientIpCountry):
self._ClientIpCountry = ClientIpCountry
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Status = params.get("Status")
self._Host = params.get("Host")
self._ZoneName = params.get("ZoneName")
self._Cname = params.get("Cname")
self._Id = params.get("Id")
self._InstanceId = params.get("InstanceId")
self._Lock = params.get("Lock")
self._Mode = params.get("Mode")
self._Area = params.get("Area")
if params.get("AccelerateType") is not None:
self._AccelerateType = AccelerateType()
self._AccelerateType._deserialize(params.get("AccelerateType"))
if params.get("Https") is not None:
self._Https = Https()
self._Https._deserialize(params.get("Https"))
if params.get("CacheConfig") is not None:
self._CacheConfig = CacheConfig()
self._CacheConfig._deserialize(params.get("CacheConfig"))
if params.get("Origin") is not None:
self._Origin = Origin()
self._Origin._deserialize(params.get("Origin"))
if params.get("SecurityType") is not None:
self._SecurityType = SecurityType()
self._SecurityType._deserialize(params.get("SecurityType"))
if params.get("CacheKey") is not None:
self._CacheKey = CacheKey()
self._CacheKey._deserialize(params.get("CacheKey"))
if params.get("Compression") is not None:
self._Compression = Compression()
self._Compression._deserialize(params.get("Compression"))
if params.get("Waf") is not None:
self._Waf = Waf()
self._Waf._deserialize(params.get("Waf"))
if params.get("CC") is not None:
self._CC = CC()
self._CC._deserialize(params.get("CC"))
if params.get("DDoS") is not None:
self._DDoS = DDoS()
self._DDoS._deserialize(params.get("DDoS"))
if params.get("SmartRouting") is not None:
self._SmartRouting = SmartRouting()
self._SmartRouting._deserialize(params.get("SmartRouting"))
if params.get("Ipv6") is not None:
self._Ipv6 = Ipv6()
self._Ipv6._deserialize(params.get("Ipv6"))
if params.get("ClientIpCountry") is not None:
self._ClientIpCountry = ClientIpCountry()
self._ClientIpCountry._deserialize(params.get("ClientIpCountry"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DiffIPWhitelist(AbstractModel):
"""最新IP白名单列表相比于当前IP白名单列表的区别
"""
def __init__(self):
r"""
:param _LatestIPWhitelist: 最新IP白名单列表。
:type LatestIPWhitelist: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
:param _AddedIPWhitelist: 最新IP白名单列表相比于当前IP白名单列表,新增部分。
:type AddedIPWhitelist: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
:param _RemovedIPWhitelist: 最新IP白名单列表相比于当前IP白名单列表,删减部分。
:type RemovedIPWhitelist: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
:param _NoChangeIPWhitelist: 最新IP白名单列表相比于当前IP白名单列表,不变部分。
:type NoChangeIPWhitelist: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
"""
self._LatestIPWhitelist = None
self._AddedIPWhitelist = None
self._RemovedIPWhitelist = None
self._NoChangeIPWhitelist = None
@property
def LatestIPWhitelist(self):
"""最新IP白名单列表。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
"""
return self._LatestIPWhitelist
@LatestIPWhitelist.setter
def LatestIPWhitelist(self, LatestIPWhitelist):
self._LatestIPWhitelist = LatestIPWhitelist
@property
def AddedIPWhitelist(self):
"""最新IP白名单列表相比于当前IP白名单列表,新增部分。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
"""
return self._AddedIPWhitelist
@AddedIPWhitelist.setter
def AddedIPWhitelist(self, AddedIPWhitelist):
self._AddedIPWhitelist = AddedIPWhitelist
@property
def RemovedIPWhitelist(self):
"""最新IP白名单列表相比于当前IP白名单列表,删减部分。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
"""
return self._RemovedIPWhitelist
@RemovedIPWhitelist.setter
def RemovedIPWhitelist(self, RemovedIPWhitelist):
self._RemovedIPWhitelist = RemovedIPWhitelist
@property
def NoChangeIPWhitelist(self):
"""最新IP白名单列表相比于当前IP白名单列表,不变部分。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
"""
return self._NoChangeIPWhitelist
@NoChangeIPWhitelist.setter
def NoChangeIPWhitelist(self, NoChangeIPWhitelist):
self._NoChangeIPWhitelist = NoChangeIPWhitelist
def _deserialize(self, params):
if params.get("LatestIPWhitelist") is not None:
self._LatestIPWhitelist = IPWhitelist()
self._LatestIPWhitelist._deserialize(params.get("LatestIPWhitelist"))
if params.get("AddedIPWhitelist") is not None:
self._AddedIPWhitelist = IPWhitelist()
self._AddedIPWhitelist._deserialize(params.get("AddedIPWhitelist"))
if params.get("RemovedIPWhitelist") is not None:
self._RemovedIPWhitelist = IPWhitelist()
self._RemovedIPWhitelist._deserialize(params.get("RemovedIPWhitelist"))
if params.get("NoChangeIPWhitelist") is not None:
self._NoChangeIPWhitelist = IPWhitelist()
self._NoChangeIPWhitelist._deserialize(params.get("NoChangeIPWhitelist"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DnsRecord(AbstractModel):
"""DNS 记录
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。<br>注意:ZoneId 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:type ZoneId: str
:param _RecordId: DNS 记录 ID。
:type RecordId: str
:param _Name: DNS 记录名。
:type Name: str
:param _Type: DNS 记录类型,取值有:
<li>A:将域名指向一个外网 IPv4 地址,如 8.8.8.8;</li>
<li>AAAA:将域名指向一个外网 IPv6 地址;</li>
<li>MX:用于邮箱服务器。存在多条 MX 记录时,优先级越低越优先;</li>
<li>CNAME:将域名指向另一个域名,再由该域名解析出最终 IP 地址;</li>
<li>TXT:对域名进行标识和说明,常用于域名验证和 SPF 记录(反垃圾邮件);</li>
<li>NS:如果需要将子域名交给其他 DNS 服务商解析,则需要添加 NS 记录。根域名无法添加 NS 记录;</li>
<li>CAA:指定可为本站点颁发证书的 CA;</li>
<li>SRV:标识某台服务器使用了某个服务,常见于微软系统的目录管理。</li>
:type Type: str
:param _Location: DNS 记录解析线路,不指定默认为 Default,表示默认解析线路,代表全部地域生效。<br>解析线路配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。<br>取值请参考:[解析线路及对应代码枚举](https://cloud.tencent.com/document/product/1552/112542)。
:type Location: str
:param _Content: DNS 记录内容。根据 Type 值填入与之相对应的内容。
:type Content: str
:param _TTL: 缓存时间,取值范围 60~86400,数值越小,修改记录各地生效时间越快,单位:秒。
:type TTL: int
:param _Weight: DNS 记录权重,取值范围 -1~100,为 -1 时表示不分配权重,为 0 时表示不解析。权重配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。
:type Weight: int
:param _Priority: MX 记录优先级,取值范围 0~50,数值越小越优先。
:type Priority: int
:param _Status: DNS 记录解析状态,取值有:<li>enable:已生效;</li><li>disable:已停用。</li>注意:Status 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:type Status: str
:param _CreatedOn: 创建时间。<br>注意:CreatedOn 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:type CreatedOn: str
:param _ModifiedOn: 修改时间。<br>注意:ModifiedOn 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:type ModifiedOn: str
"""
self._ZoneId = None
self._RecordId = None
self._Name = None
self._Type = None
self._Location = None
self._Content = None
self._TTL = None
self._Weight = None
self._Priority = None
self._Status = None
self._CreatedOn = None
self._ModifiedOn = None
@property
def ZoneId(self):
"""站点 ID。<br>注意:ZoneId 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RecordId(self):
"""DNS 记录 ID。
:rtype: str
"""
return self._RecordId
@RecordId.setter
def RecordId(self, RecordId):
self._RecordId = RecordId
@property
def Name(self):
"""DNS 记录名。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""DNS 记录类型,取值有:
<li>A:将域名指向一个外网 IPv4 地址,如 8.8.8.8;</li>
<li>AAAA:将域名指向一个外网 IPv6 地址;</li>
<li>MX:用于邮箱服务器。存在多条 MX 记录时,优先级越低越优先;</li>
<li>CNAME:将域名指向另一个域名,再由该域名解析出最终 IP 地址;</li>
<li>TXT:对域名进行标识和说明,常用于域名验证和 SPF 记录(反垃圾邮件);</li>
<li>NS:如果需要将子域名交给其他 DNS 服务商解析,则需要添加 NS 记录。根域名无法添加 NS 记录;</li>
<li>CAA:指定可为本站点颁发证书的 CA;</li>
<li>SRV:标识某台服务器使用了某个服务,常见于微软系统的目录管理。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Location(self):
"""DNS 记录解析线路,不指定默认为 Default,表示默认解析线路,代表全部地域生效。<br>解析线路配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。<br>取值请参考:[解析线路及对应代码枚举](https://cloud.tencent.com/document/product/1552/112542)。
:rtype: str
"""
return self._Location
@Location.setter
def Location(self, Location):
self._Location = Location
@property
def Content(self):
"""DNS 记录内容。根据 Type 值填入与之相对应的内容。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def TTL(self):
"""缓存时间,取值范围 60~86400,数值越小,修改记录各地生效时间越快,单位:秒。
:rtype: int
"""
return self._TTL
@TTL.setter
def TTL(self, TTL):
self._TTL = TTL
@property
def Weight(self):
"""DNS 记录权重,取值范围 -1~100,为 -1 时表示不分配权重,为 0 时表示不解析。权重配置仅适用于当 Type(DNS 记录类型)为 A、AAAA、CNAME 时。
:rtype: int
"""
return self._Weight
@Weight.setter
def Weight(self, Weight):
self._Weight = Weight
@property
def Priority(self):
"""MX 记录优先级,取值范围 0~50,数值越小越优先。
:rtype: int
"""
return self._Priority
@Priority.setter
def Priority(self, Priority):
self._Priority = Priority
@property
def Status(self):
"""DNS 记录解析状态,取值有:<li>enable:已生效;</li><li>disable:已停用。</li>注意:Status 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def CreatedOn(self):
"""创建时间。<br>注意:CreatedOn 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:rtype: str
"""
return self._CreatedOn
@CreatedOn.setter
def CreatedOn(self, CreatedOn):
self._CreatedOn = CreatedOn
@property
def ModifiedOn(self):
"""修改时间。<br>注意:ModifiedOn 仅做出参使用,在 ModifyDnsRecords 不可作为入参使用,如有传此参数,会忽略。
:rtype: str
"""
return self._ModifiedOn
@ModifiedOn.setter
def ModifiedOn(self, ModifiedOn):
self._ModifiedOn = ModifiedOn
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RecordId = params.get("RecordId")
self._Name = params.get("Name")
self._Type = params.get("Type")
self._Location = params.get("Location")
self._Content = params.get("Content")
self._TTL = params.get("TTL")
self._Weight = params.get("Weight")
self._Priority = params.get("Priority")
self._Status = params.get("Status")
self._CreatedOn = params.get("CreatedOn")
self._ModifiedOn = params.get("ModifiedOn")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DnsVerification(AbstractModel):
"""CNAME 接入,使用 DNS 解析验证时所需的信息。
"""
def __init__(self):
r"""
:param _Subdomain: 主机记录。
:type Subdomain: str
:param _RecordType: 记录类型。
:type RecordType: str
:param _RecordValue: 记录值。
:type RecordValue: str
"""
self._Subdomain = None
self._RecordType = None
self._RecordValue = None
@property
def Subdomain(self):
"""主机记录。
:rtype: str
"""
return self._Subdomain
@Subdomain.setter
def Subdomain(self, Subdomain):
self._Subdomain = Subdomain
@property
def RecordType(self):
"""记录类型。
:rtype: str
"""
return self._RecordType
@RecordType.setter
def RecordType(self, RecordType):
self._RecordType = RecordType
@property
def RecordValue(self):
"""记录值。
:rtype: str
"""
return self._RecordValue
@RecordValue.setter
def RecordValue(self, RecordValue):
self._RecordValue = RecordValue
def _deserialize(self, params):
self._Subdomain = params.get("Subdomain")
self._RecordType = params.get("RecordType")
self._RecordValue = params.get("RecordValue")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DownloadL4LogsRequest(AbstractModel):
"""DownloadL4Logs请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _ZoneIds: 站点 ID 集合,此参数必填。
:type ZoneIds: list of str
:param _ProxyIds: 四层实例 ID 集合。
:type ProxyIds: list of str
:param _Limit: 分页查询的限制数目,默认值为 20,最大查询条目为 300。
:type Limit: int
:param _Offset: 分页的偏移量,默认值为 0。
:type Offset: int
"""
self._StartTime = None
self._EndTime = None
self._ZoneIds = None
self._ProxyIds = None
self._Limit = None
self._Offset = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def ZoneIds(self):
"""站点 ID 集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def ProxyIds(self):
"""四层实例 ID 集合。
:rtype: list of str
"""
return self._ProxyIds
@ProxyIds.setter
def ProxyIds(self, ProxyIds):
self._ProxyIds = ProxyIds
@property
def Limit(self):
"""分页查询的限制数目,默认值为 20,最大查询条目为 300。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Offset(self):
"""分页的偏移量,默认值为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._ZoneIds = params.get("ZoneIds")
self._ProxyIds = params.get("ProxyIds")
self._Limit = params.get("Limit")
self._Offset = params.get("Offset")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DownloadL4LogsResponse(AbstractModel):
"""DownloadL4Logs返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 四层离线日志数据列表。
:type Data: list of L4OfflineLog
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""四层离线日志数据列表。
:rtype: list of L4OfflineLog
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = L4OfflineLog()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DownloadL7LogsRequest(AbstractModel):
"""DownloadL7Logs请求参数结构体
"""
def __init__(self):
r"""
:param _StartTime: 开始时间。
:type StartTime: str
:param _EndTime: 结束时间。
:type EndTime: str
:param _ZoneIds: 站点ID集合,此参数必填。
:type ZoneIds: list of str
:param _Domains: 子域名集合,不填默认选择全部子域名。
:type Domains: list of str
:param _Limit: 分页查询的限制数目,默认值为 20,最大查询条目为 300。
:type Limit: int
:param _Offset: 分页的偏移量,默认值为 0。
:type Offset: int
"""
self._StartTime = None
self._EndTime = None
self._ZoneIds = None
self._Domains = None
self._Limit = None
self._Offset = None
@property
def StartTime(self):
"""开始时间。
:rtype: str
"""
return self._StartTime
@StartTime.setter
def StartTime(self, StartTime):
self._StartTime = StartTime
@property
def EndTime(self):
"""结束时间。
:rtype: str
"""
return self._EndTime
@EndTime.setter
def EndTime(self, EndTime):
self._EndTime = EndTime
@property
def ZoneIds(self):
"""站点ID集合,此参数必填。
:rtype: list of str
"""
return self._ZoneIds
@ZoneIds.setter
def ZoneIds(self, ZoneIds):
self._ZoneIds = ZoneIds
@property
def Domains(self):
"""子域名集合,不填默认选择全部子域名。
:rtype: list of str
"""
return self._Domains
@Domains.setter
def Domains(self, Domains):
self._Domains = Domains
@property
def Limit(self):
"""分页查询的限制数目,默认值为 20,最大查询条目为 300。
:rtype: int
"""
return self._Limit
@Limit.setter
def Limit(self, Limit):
self._Limit = Limit
@property
def Offset(self):
"""分页的偏移量,默认值为 0。
:rtype: int
"""
return self._Offset
@Offset.setter
def Offset(self, Offset):
self._Offset = Offset
def _deserialize(self, params):
self._StartTime = params.get("StartTime")
self._EndTime = params.get("EndTime")
self._ZoneIds = params.get("ZoneIds")
self._Domains = params.get("Domains")
self._Limit = params.get("Limit")
self._Offset = params.get("Offset")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DownloadL7LogsResponse(AbstractModel):
"""DownloadL7Logs返回参数结构体
"""
def __init__(self):
r"""
:param _TotalCount: 查询结果的总条数。
:type TotalCount: int
:param _Data: 七层离线日志数据列表。
:type Data: list of L7OfflineLog
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TotalCount = None
self._Data = None
self._RequestId = None
@property
def TotalCount(self):
"""查询结果的总条数。
:rtype: int
"""
return self._TotalCount
@TotalCount.setter
def TotalCount(self, TotalCount):
self._TotalCount = TotalCount
@property
def Data(self):
"""七层离线日志数据列表。
:rtype: list of L7OfflineLog
"""
return self._Data
@Data.setter
def Data(self, Data):
self._Data = Data
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TotalCount = params.get("TotalCount")
if params.get("Data") is not None:
self._Data = []
for item in params.get("Data"):
obj = L7OfflineLog()
obj._deserialize(item)
self._Data.append(obj)
self._RequestId = params.get("RequestId")
class DropPageConfig(AbstractModel):
"""拦截页面的总体配置,用于配置各个模块的拦截后行为。
"""
def __init__(self):
r"""
:param _Switch: 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _WafDropPageDetail: Waf(托管规则)模块的拦截页面配置。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type WafDropPageDetail: :class:`tencentcloud.teo.v20220901.models.DropPageDetail`
:param _AclDropPageDetail: 自定义页面的拦截页面配置。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type AclDropPageDetail: :class:`tencentcloud.teo.v20220901.models.DropPageDetail`
"""
self._Switch = None
self._WafDropPageDetail = None
self._AclDropPageDetail = None
@property
def Switch(self):
"""配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def WafDropPageDetail(self):
"""Waf(托管规则)模块的拦截页面配置。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DropPageDetail`
"""
return self._WafDropPageDetail
@WafDropPageDetail.setter
def WafDropPageDetail(self, WafDropPageDetail):
self._WafDropPageDetail = WafDropPageDetail
@property
def AclDropPageDetail(self):
"""自定义页面的拦截页面配置。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DropPageDetail`
"""
return self._AclDropPageDetail
@AclDropPageDetail.setter
def AclDropPageDetail(self, AclDropPageDetail):
self._AclDropPageDetail = AclDropPageDetail
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("WafDropPageDetail") is not None:
self._WafDropPageDetail = DropPageDetail()
self._WafDropPageDetail._deserialize(params.get("WafDropPageDetail"))
if params.get("AclDropPageDetail") is not None:
self._AclDropPageDetail = DropPageDetail()
self._AclDropPageDetail._deserialize(params.get("AclDropPageDetail"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class DropPageDetail(AbstractModel):
"""拦截页面的配置信息
"""
def __init__(self):
r"""
:param _PageId: 拦截页面的唯一 Id。系统默认包含一个自带拦截页面,Id 值为0。
该 Id 可通过创建拦截页面接口进行上传获取。如传入0,代表使用系统默认拦截页面。该参数已废弃。
:type PageId: int
:param _StatusCode: 拦截页面的 HTTP 状态码。状态码取值:100~600,不支持 3xx 状态码。托管规则拦截页面默认:566,安全防护(除托管规则外)拦截页面默认:567.
:type StatusCode: int
:param _Name: 页面文件名或 url。
:type Name: str
:param _Type: 页面的类型,取值有:
<li>page:指定页面。</li>
:type Type: str
:param _CustomResponseId: 自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Type 类型是 page 时必填,且不能为空。
:type CustomResponseId: str
"""
self._PageId = None
self._StatusCode = None
self._Name = None
self._Type = None
self._CustomResponseId = None
@property
def PageId(self):
"""拦截页面的唯一 Id。系统默认包含一个自带拦截页面,Id 值为0。
该 Id 可通过创建拦截页面接口进行上传获取。如传入0,代表使用系统默认拦截页面。该参数已废弃。
:rtype: int
"""
return self._PageId
@PageId.setter
def PageId(self, PageId):
self._PageId = PageId
@property
def StatusCode(self):
"""拦截页面的 HTTP 状态码。状态码取值:100~600,不支持 3xx 状态码。托管规则拦截页面默认:566,安全防护(除托管规则外)拦截页面默认:567.
:rtype: int
"""
return self._StatusCode
@StatusCode.setter
def StatusCode(self, StatusCode):
self._StatusCode = StatusCode
@property
def Name(self):
"""页面文件名或 url。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""页面的类型,取值有:
<li>page:指定页面。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def CustomResponseId(self):
"""自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Type 类型是 page 时必填,且不能为空。
:rtype: str
"""
return self._CustomResponseId
@CustomResponseId.setter
def CustomResponseId(self, CustomResponseId):
self._CustomResponseId = CustomResponseId
def _deserialize(self, params):
self._PageId = params.get("PageId")
self._StatusCode = params.get("StatusCode")
self._Name = params.get("Name")
self._Type = params.get("Type")
self._CustomResponseId = params.get("CustomResponseId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class EntityStatus(AbstractModel):
"""安全实例状态。
"""
def __init__(self):
r"""
:param _Entity: 实例名,现在只有子域名。
:type Entity: str
:param _Status: 实例配置下发状态,取值有:
<li>online:配置已生效;</li><li>fail:配置失败;</li><li> process:配置下发中。</li>
:type Status: str
:param _Message: 实例配置下发信息提示。
:type Message: str
"""
self._Entity = None
self._Status = None
self._Message = None
@property
def Entity(self):
"""实例名,现在只有子域名。
:rtype: str
"""
return self._Entity
@Entity.setter
def Entity(self, Entity):
self._Entity = Entity
@property
def Status(self):
"""实例配置下发状态,取值有:
<li>online:配置已生效;</li><li>fail:配置失败;</li><li> process:配置下发中。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Message(self):
"""实例配置下发信息提示。
:rtype: str
"""
return self._Message
@Message.setter
def Message(self, Message):
self._Message = Message
def _deserialize(self, params):
self._Entity = params.get("Entity")
self._Status = params.get("Status")
self._Message = params.get("Message")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class EnvInfo(AbstractModel):
"""环境信息。
"""
def __init__(self):
r"""
:param _EnvId: 环境 ID。
:type EnvId: str
:param _EnvType: 环境类型,取值有:
<li>production: 生产环境;</li><li>staging: 测试环境。</li>
:type EnvType: str
:param _Status: 环境状态,取值有:
<li>creating:创建中;</li>
<li>running:稳定运行中,可进行版本变更;</li>
<li>version_deploying:版本部署中,不能进行新的变更。</li>
:type Status: str
:param _Scope: 当前环境的配置生效范围:
<li>当 EnvType 取值为 production 时,该参数值为 ["ALL"],代表全网生效;</li>
<li>当 EnvType 取值为 staging 时,会返回测试节点 IP,可用于绑定 host 测试。</li>
:type Scope: list of str
:param _CurrentConfigGroupVersionInfos: 当前环境中各配置组实际生效的版本,根据 Status 的取值有以下两种情况:
<li>当 Status 取值为 version_deploying 时,本字段返回的值为执行变更动作之前生效的版本,即新版本部署期间,实际生效的版本为执行变更动作之前的版本;</li>
<li>当 Status 取值为 running 时,本字段返回的值即为当前实际生效的版本。</li>
:type CurrentConfigGroupVersionInfos: list of ConfigGroupVersionInfo
:param _CreateTime: 创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type CreateTime: str
:param _UpdateTime: 更新时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type UpdateTime: str
"""
self._EnvId = None
self._EnvType = None
self._Status = None
self._Scope = None
self._CurrentConfigGroupVersionInfos = None
self._CreateTime = None
self._UpdateTime = None
@property
def EnvId(self):
"""环境 ID。
:rtype: str
"""
return self._EnvId
@EnvId.setter
def EnvId(self, EnvId):
self._EnvId = EnvId
@property
def EnvType(self):
"""环境类型,取值有:
<li>production: 生产环境;</li><li>staging: 测试环境。</li>
:rtype: str
"""
return self._EnvType
@EnvType.setter
def EnvType(self, EnvType):
self._EnvType = EnvType
@property
def Status(self):
"""环境状态,取值有:
<li>creating:创建中;</li>
<li>running:稳定运行中,可进行版本变更;</li>
<li>version_deploying:版本部署中,不能进行新的变更。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Scope(self):
"""当前环境的配置生效范围:
<li>当 EnvType 取值为 production 时,该参数值为 ["ALL"],代表全网生效;</li>
<li>当 EnvType 取值为 staging 时,会返回测试节点 IP,可用于绑定 host 测试。</li>
:rtype: list of str
"""
return self._Scope
@Scope.setter
def Scope(self, Scope):
self._Scope = Scope
@property
def CurrentConfigGroupVersionInfos(self):
"""当前环境中各配置组实际生效的版本,根据 Status 的取值有以下两种情况:
<li>当 Status 取值为 version_deploying 时,本字段返回的值为执行变更动作之前生效的版本,即新版本部署期间,实际生效的版本为执行变更动作之前的版本;</li>
<li>当 Status 取值为 running 时,本字段返回的值即为当前实际生效的版本。</li>
:rtype: list of ConfigGroupVersionInfo
"""
return self._CurrentConfigGroupVersionInfos
@CurrentConfigGroupVersionInfos.setter
def CurrentConfigGroupVersionInfos(self, CurrentConfigGroupVersionInfos):
self._CurrentConfigGroupVersionInfos = CurrentConfigGroupVersionInfos
@property
def CreateTime(self):
"""创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def UpdateTime(self):
"""更新时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._EnvId = params.get("EnvId")
self._EnvType = params.get("EnvType")
self._Status = params.get("Status")
self._Scope = params.get("Scope")
if params.get("CurrentConfigGroupVersionInfos") is not None:
self._CurrentConfigGroupVersionInfos = []
for item in params.get("CurrentConfigGroupVersionInfos"):
obj = ConfigGroupVersionInfo()
obj._deserialize(item)
self._CurrentConfigGroupVersionInfos.append(obj)
self._CreateTime = params.get("CreateTime")
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ErrorPage(AbstractModel):
"""自定义错误页面。
"""
def __init__(self):
r"""
:param _StatusCode: 状态码。支持范围为 400、403、404、405、414、416、451、500、501、502、503、504。
:type StatusCode: int
:param _RedirectURL: 重定向 URL,需要为完整跳转路径,如 https://www.test.com/error.html。
:type RedirectURL: str
"""
self._StatusCode = None
self._RedirectURL = None
@property
def StatusCode(self):
"""状态码。支持范围为 400、403、404、405、414、416、451、500、501、502、503、504。
:rtype: int
"""
return self._StatusCode
@StatusCode.setter
def StatusCode(self, StatusCode):
self._StatusCode = StatusCode
@property
def RedirectURL(self):
"""重定向 URL,需要为完整跳转路径,如 https://www.test.com/error.html。
:rtype: str
"""
return self._RedirectURL
@RedirectURL.setter
def RedirectURL(self, RedirectURL):
self._RedirectURL = RedirectURL
def _deserialize(self, params):
self._StatusCode = params.get("StatusCode")
self._RedirectURL = params.get("RedirectURL")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ErrorPageParameters(AbstractModel):
"""自定义错误页面配置参数。
"""
def __init__(self):
r"""
:param _ErrorPageParams: 自定义错误页面配置列表。
注意:此字段可能返回 null,表示取不到有效值。
:type ErrorPageParams: list of ErrorPage
"""
self._ErrorPageParams = None
@property
def ErrorPageParams(self):
"""自定义错误页面配置列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of ErrorPage
"""
return self._ErrorPageParams
@ErrorPageParams.setter
def ErrorPageParams(self, ErrorPageParams):
self._ErrorPageParams = ErrorPageParams
def _deserialize(self, params):
if params.get("ErrorPageParams") is not None:
self._ErrorPageParams = []
for item in params.get("ErrorPageParams"):
obj = ErrorPage()
obj._deserialize(item)
self._ErrorPageParams.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ErrorPageReference(AbstractModel):
"""自定义错误页面被引用的来源
"""
def __init__(self):
r"""
:param _BusinessId: 引用的业务 ID,如自定义拦截规则 ID。
:type BusinessId: str
"""
self._BusinessId = None
@property
def BusinessId(self):
"""引用的业务 ID,如自定义拦截规则 ID。
:rtype: str
"""
return self._BusinessId
@BusinessId.setter
def BusinessId(self, BusinessId):
self._BusinessId = BusinessId
def _deserialize(self, params):
self._BusinessId = params.get("BusinessId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ExceptConfig(AbstractModel):
"""例外规则,用于配置需要跳过特定场景的规则
"""
def __init__(self):
r"""
:param _Switch: 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _ExceptUserRules: 例外规则详情。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ExceptUserRules: list of ExceptUserRule
"""
self._Switch = None
self._ExceptUserRules = None
@property
def Switch(self):
"""配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def ExceptUserRules(self):
"""例外规则详情。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of ExceptUserRule
"""
return self._ExceptUserRules
@ExceptUserRules.setter
def ExceptUserRules(self, ExceptUserRules):
self._ExceptUserRules = ExceptUserRules
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("ExceptUserRules") is not None:
self._ExceptUserRules = []
for item in params.get("ExceptUserRules"):
obj = ExceptUserRule()
obj._deserialize(item)
self._ExceptUserRules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ExceptUserRule(AbstractModel):
"""例外规则的配置,包含生效的条件,生效的范围。
"""
def __init__(self):
r"""
:param _RuleName: 规则名称,不可使用中文。
:type RuleName: str
:param _Action: 规则的处置方式,当前仅支持skip:跳过全部托管规则。
:type Action: str
:param _RuleStatus: 规则生效状态,取值有:
<li>on:生效;</li>
<li>off:失效。</li>
:type RuleStatus: str
:param _RuleID: 规则ID。仅出参使用。默认由底层生成。
:type RuleID: int
:param _UpdateTime: 更新时间,如果为null,默认由底层按当前时间生成。
注意:此字段可能返回 null,表示取不到有效值。
:type UpdateTime: str
:param _ExceptUserRuleConditions: 匹配条件。
注意:此字段可能返回 null,表示取不到有效值。
:type ExceptUserRuleConditions: list of ExceptUserRuleCondition
:param _ExceptUserRuleScope: 规则生效的范围。
注意:此字段可能返回 null,表示取不到有效值。
:type ExceptUserRuleScope: :class:`tencentcloud.teo.v20220901.models.ExceptUserRuleScope`
:param _RulePriority: 优先级,取值范围0-100。如果为null,默认由底层设置为0。
:type RulePriority: int
"""
self._RuleName = None
self._Action = None
self._RuleStatus = None
self._RuleID = None
self._UpdateTime = None
self._ExceptUserRuleConditions = None
self._ExceptUserRuleScope = None
self._RulePriority = None
@property
def RuleName(self):
"""规则名称,不可使用中文。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Action(self):
"""规则的处置方式,当前仅支持skip:跳过全部托管规则。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RuleStatus(self):
"""规则生效状态,取值有:
<li>on:生效;</li>
<li>off:失效。</li>
:rtype: str
"""
return self._RuleStatus
@RuleStatus.setter
def RuleStatus(self, RuleStatus):
self._RuleStatus = RuleStatus
@property
def RuleID(self):
"""规则ID。仅出参使用。默认由底层生成。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def UpdateTime(self):
"""更新时间,如果为null,默认由底层按当前时间生成。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def ExceptUserRuleConditions(self):
"""匹配条件。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of ExceptUserRuleCondition
"""
return self._ExceptUserRuleConditions
@ExceptUserRuleConditions.setter
def ExceptUserRuleConditions(self, ExceptUserRuleConditions):
self._ExceptUserRuleConditions = ExceptUserRuleConditions
@property
def ExceptUserRuleScope(self):
"""规则生效的范围。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ExceptUserRuleScope`
"""
return self._ExceptUserRuleScope
@ExceptUserRuleScope.setter
def ExceptUserRuleScope(self, ExceptUserRuleScope):
self._ExceptUserRuleScope = ExceptUserRuleScope
@property
def RulePriority(self):
"""优先级,取值范围0-100。如果为null,默认由底层设置为0。
:rtype: int
"""
return self._RulePriority
@RulePriority.setter
def RulePriority(self, RulePriority):
self._RulePriority = RulePriority
def _deserialize(self, params):
self._RuleName = params.get("RuleName")
self._Action = params.get("Action")
self._RuleStatus = params.get("RuleStatus")
self._RuleID = params.get("RuleID")
self._UpdateTime = params.get("UpdateTime")
if params.get("ExceptUserRuleConditions") is not None:
self._ExceptUserRuleConditions = []
for item in params.get("ExceptUserRuleConditions"):
obj = ExceptUserRuleCondition()
obj._deserialize(item)
self._ExceptUserRuleConditions.append(obj)
if params.get("ExceptUserRuleScope") is not None:
self._ExceptUserRuleScope = ExceptUserRuleScope()
self._ExceptUserRuleScope._deserialize(params.get("ExceptUserRuleScope"))
self._RulePriority = params.get("RulePriority")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ExceptUserRuleCondition(AbstractModel):
"""例外规则生效的具体条件。
"""
def __init__(self):
r"""
:param _MatchFrom: 匹配项,取值有:
<li>host:请求域名;</li>
<li>sip:客户端IP;</li>
<li>ua:User-Agent;</li>
<li>cookie:会话 Cookie;</li>
<li>cgi:CGI 脚本;</li>
<li>xff:XFF 扩展头部;</li>
<li>url:请求 URL;</li>
<li>accept:请求内容类型;</li>
<li>method:请求方式;</li>
<li>header:请求头部;</li>
<li>sip_proto:网络层协议。</li>
:type MatchFrom: str
:param _MatchParam: 匹配项的参数。仅当 MatchFrom 为 header 时,可以使用本参数,值可填入 header 的 key 作为参数。
:type MatchParam: str
:param _Operator: 匹配操作符,取值有:
<li>equal:字符串等于;</li>
<li>not_equal:数值不等于;</li>
<li>include:字符包含;</li>
<li>not_include:字符不包含;</li>
<li>match:ip匹配;</li>
<li>not_match:ip不匹配;</li>
<li>include_area:地域包含;</li>
<li>is_empty:存在字段但值为空;</li>
<li>not_exists:不存在关键字段;</li>
<li>regexp:正则匹配;</li>
<li>len_gt:数值大于;</li>
<li>len_lt:数值小于;</li>
<li>len_eq:数值等于;</li>
<li>match_prefix:前缀匹配;</li>
<li>match_suffix:后缀匹配;</li>
<li>wildcard:通配符。</li>
:type Operator: str
:param _MatchContent: 匹配值。
:type MatchContent: str
"""
self._MatchFrom = None
self._MatchParam = None
self._Operator = None
self._MatchContent = None
@property
def MatchFrom(self):
"""匹配项,取值有:
<li>host:请求域名;</li>
<li>sip:客户端IP;</li>
<li>ua:User-Agent;</li>
<li>cookie:会话 Cookie;</li>
<li>cgi:CGI 脚本;</li>
<li>xff:XFF 扩展头部;</li>
<li>url:请求 URL;</li>
<li>accept:请求内容类型;</li>
<li>method:请求方式;</li>
<li>header:请求头部;</li>
<li>sip_proto:网络层协议。</li>
:rtype: str
"""
return self._MatchFrom
@MatchFrom.setter
def MatchFrom(self, MatchFrom):
self._MatchFrom = MatchFrom
@property
def MatchParam(self):
"""匹配项的参数。仅当 MatchFrom 为 header 时,可以使用本参数,值可填入 header 的 key 作为参数。
:rtype: str
"""
return self._MatchParam
@MatchParam.setter
def MatchParam(self, MatchParam):
self._MatchParam = MatchParam
@property
def Operator(self):
"""匹配操作符,取值有:
<li>equal:字符串等于;</li>
<li>not_equal:数值不等于;</li>
<li>include:字符包含;</li>
<li>not_include:字符不包含;</li>
<li>match:ip匹配;</li>
<li>not_match:ip不匹配;</li>
<li>include_area:地域包含;</li>
<li>is_empty:存在字段但值为空;</li>
<li>not_exists:不存在关键字段;</li>
<li>regexp:正则匹配;</li>
<li>len_gt:数值大于;</li>
<li>len_lt:数值小于;</li>
<li>len_eq:数值等于;</li>
<li>match_prefix:前缀匹配;</li>
<li>match_suffix:后缀匹配;</li>
<li>wildcard:通配符。</li>
:rtype: str
"""
return self._Operator
@Operator.setter
def Operator(self, Operator):
self._Operator = Operator
@property
def MatchContent(self):
"""匹配值。
:rtype: str
"""
return self._MatchContent
@MatchContent.setter
def MatchContent(self, MatchContent):
self._MatchContent = MatchContent
def _deserialize(self, params):
self._MatchFrom = params.get("MatchFrom")
self._MatchParam = params.get("MatchParam")
self._Operator = params.get("Operator")
self._MatchContent = params.get("MatchContent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ExceptUserRuleScope(AbstractModel):
"""例外规则的生效范围。
"""
def __init__(self):
r"""
:param _Type: 例外规则类型。其中complete模式代表全量数据进行例外,partial模式代表可选择指定模块指定字段进行例外,该字段取值有:
<li>complete:完全跳过模式;</li>
<li>partial:部分跳过模式。</li>
:type Type: str
:param _Modules: 生效的模块,该字段取值有:
<li>waf:托管规则;</li>
<li>rate:速率限制;</li>
<li>acl:自定义规则;</li>
<li>cc:cc攻击防护;</li>
<li>bot:Bot防护。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Modules: list of str
:param _PartialModules: 跳过部分规则ID的例外规则详情。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type PartialModules: list of PartialModule
:param _SkipConditions: 跳过具体字段不去扫描的例外规则详情。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type SkipConditions: list of SkipCondition
"""
self._Type = None
self._Modules = None
self._PartialModules = None
self._SkipConditions = None
@property
def Type(self):
"""例外规则类型。其中complete模式代表全量数据进行例外,partial模式代表可选择指定模块指定字段进行例外,该字段取值有:
<li>complete:完全跳过模式;</li>
<li>partial:部分跳过模式。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Modules(self):
"""生效的模块,该字段取值有:
<li>waf:托管规则;</li>
<li>rate:速率限制;</li>
<li>acl:自定义规则;</li>
<li>cc:cc攻击防护;</li>
<li>bot:Bot防护。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._Modules
@Modules.setter
def Modules(self, Modules):
self._Modules = Modules
@property
def PartialModules(self):
"""跳过部分规则ID的例外规则详情。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of PartialModule
"""
return self._PartialModules
@PartialModules.setter
def PartialModules(self, PartialModules):
self._PartialModules = PartialModules
@property
def SkipConditions(self):
"""跳过具体字段不去扫描的例外规则详情。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of SkipCondition
"""
return self._SkipConditions
@SkipConditions.setter
def SkipConditions(self, SkipConditions):
self._SkipConditions = SkipConditions
def _deserialize(self, params):
self._Type = params.get("Type")
self._Modules = params.get("Modules")
if params.get("PartialModules") is not None:
self._PartialModules = []
for item in params.get("PartialModules"):
obj = PartialModule()
obj._deserialize(item)
self._PartialModules.append(obj)
if params.get("SkipConditions") is not None:
self._SkipConditions = []
for item in params.get("SkipConditions"):
obj = SkipCondition()
obj._deserialize(item)
self._SkipConditions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ExportZoneConfigRequest(AbstractModel):
"""ExportZoneConfig请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Types: 导出配置项的类型列表,不填表示导出所有类型的配置,当前支持的取值有:<li>L7AccelerationConfig:表示导出七层加速配置,对应控制台「站点加速-全局加速配置」和「站点加速-规则引擎」。</li>
需注意:后续支持导出的类型会随着迭代增加,导出所有类型时需要注意导出文件大小,建议使用时指定需要导出的配置类型,以便控制请求响应包负载大小。
:type Types: list of str
"""
self._ZoneId = None
self._Types = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Types(self):
"""导出配置项的类型列表,不填表示导出所有类型的配置,当前支持的取值有:<li>L7AccelerationConfig:表示导出七层加速配置,对应控制台「站点加速-全局加速配置」和「站点加速-规则引擎」。</li>
需注意:后续支持导出的类型会随着迭代增加,导出所有类型时需要注意导出文件大小,建议使用时指定需要导出的配置类型,以便控制请求响应包负载大小。
:rtype: list of str
"""
return self._Types
@Types.setter
def Types(self, Types):
self._Types = Types
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Types = params.get("Types")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ExportZoneConfigResponse(AbstractModel):
"""ExportZoneConfig返回参数结构体
"""
def __init__(self):
r"""
:param _Content: 导出的配置的具体内容。以 JSON 格式返回,按照 UTF-8 方式进行编码。配置内容可参考下方示例。
:type Content: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Content = None
self._RequestId = None
@property
def Content(self):
"""导出的配置的具体内容。以 JSON 格式返回,按照 UTF-8 方式进行编码。配置内容可参考下方示例。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._Content = params.get("Content")
self._RequestId = params.get("RequestId")
class FailReason(AbstractModel):
"""失败原因
"""
def __init__(self):
r"""
:param _Reason: 失败原因。
:type Reason: str
:param _Targets: 处理失败的资源列表。
:type Targets: list of str
"""
self._Reason = None
self._Targets = None
@property
def Reason(self):
"""失败原因。
:rtype: str
"""
return self._Reason
@Reason.setter
def Reason(self, Reason):
self._Reason = Reason
@property
def Targets(self):
"""处理失败的资源列表。
:rtype: list of str
"""
return self._Targets
@Targets.setter
def Targets(self, Targets):
self._Targets = Targets
def _deserialize(self, params):
self._Reason = params.get("Reason")
self._Targets = params.get("Targets")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FileAscriptionInfo(AbstractModel):
"""站点归属权校验——文件校验信息。
"""
def __init__(self):
r"""
:param _IdentifyPath: 文件校验目录。
:type IdentifyPath: str
:param _IdentifyContent: 文件校验内容。
:type IdentifyContent: str
"""
self._IdentifyPath = None
self._IdentifyContent = None
@property
def IdentifyPath(self):
"""文件校验目录。
:rtype: str
"""
return self._IdentifyPath
@IdentifyPath.setter
def IdentifyPath(self, IdentifyPath):
self._IdentifyPath = IdentifyPath
@property
def IdentifyContent(self):
"""文件校验内容。
:rtype: str
"""
return self._IdentifyContent
@IdentifyContent.setter
def IdentifyContent(self, IdentifyContent):
self._IdentifyContent = IdentifyContent
def _deserialize(self, params):
self._IdentifyPath = params.get("IdentifyPath")
self._IdentifyContent = params.get("IdentifyContent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FileVerification(AbstractModel):
"""CNAME 接入,使用文件验证时所需的信息。
"""
def __init__(self):
r"""
:param _Path: EdgeOne 后台服务器将通过 Scheme + Host + URL Path 的格式(例如 https://www.example.com/.well-known/teo-verification/z12h416twn.txt)获取文件验证信息。该字段为您需要创建的 URL Path 部分。
:type Path: str
:param _Content: 验证文件的内容。该字段的内容需要您填写至 Path 字段返回的 txt 文件中。
:type Content: str
"""
self._Path = None
self._Content = None
@property
def Path(self):
"""EdgeOne 后台服务器将通过 Scheme + Host + URL Path 的格式(例如 https://www.example.com/.well-known/teo-verification/z12h416twn.txt)获取文件验证信息。该字段为您需要创建的 URL Path 部分。
:rtype: str
"""
return self._Path
@Path.setter
def Path(self, Path):
self._Path = Path
@property
def Content(self):
"""验证文件的内容。该字段的内容需要您填写至 Path 字段返回的 txt 文件中。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
def _deserialize(self, params):
self._Path = params.get("Path")
self._Content = params.get("Content")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Filter(AbstractModel):
"""描述键值对过滤器,用于条件过滤查询。例如过滤ID、名称、状态等。
若存在多个Filter时,Filter间的关系为逻辑与(AND)关系。
若同一个Filter存在多个Values,同一Filter下Values间的关系为逻辑或(OR)关系。
"""
def __init__(self):
r"""
:param _Name: 需要过滤的字段。
:type Name: str
:param _Values: 字段的过滤值。
:type Values: list of str
"""
self._Name = None
self._Values = None
@property
def Name(self):
"""需要过滤的字段。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Values(self):
"""字段的过滤值。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Name = params.get("Name")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FirstPartConfig(AbstractModel):
"""慢速攻击的首段包配置。
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Switch: str
:param _StatTime: 首段包的统计时长,单位是秒,即期望首段包的统计时长是多少,默认5秒。
注意:此字段可能返回 null,表示取不到有效值。
:type StatTime: int
"""
self._Switch = None
self._StatTime = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def StatTime(self):
"""首段包的统计时长,单位是秒,即期望首段包的统计时长是多少,默认5秒。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._StatTime
@StatTime.setter
def StatTime(self, StatTime):
self._StatTime = StatTime
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._StatTime = params.get("StatTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FollowOrigin(AbstractModel):
"""缓存遵循源站配置。
"""
def __init__(self):
r"""
:param _Switch: 遵循源站配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _DefaultCache: 源站未返回 Cache-Control 头时,缓存/不缓存开关。当 Switch 为 on 时,此字段必填,当 Switch 为 off 时,无需填写此字段,若填写则不生效。取值有:
<li>on:缓存;</li>
<li>off:不缓存。</li>
:type DefaultCache: str
:param _DefaultCacheStrategy: 源站未返回 Cache-Control 头时,使用/不使用默认缓存策略开关。当 DefaultCache 为 on 时,此字段必填,否则此字段不生效;当 DefaultCacheTime 不为 0 时,此字段必须为 off。取值有:
<li>on:使用默认缓存策略;</li>
<li>off:不使用默认缓存策略。</li>
:type DefaultCacheStrategy: str
:param _DefaultCacheTime: 源站未返回 Cache-Control 头时,表示默认的缓存时间,单位为秒,取值:0-315360000。当 DefaultCache 为 on 时,此字段必填,否则此字段不生效;当 DefaultCacheStrategy 为 on 时, 此字段必须为 0。
:type DefaultCacheTime: int
"""
self._Switch = None
self._DefaultCache = None
self._DefaultCacheStrategy = None
self._DefaultCacheTime = None
@property
def Switch(self):
"""遵循源站配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def DefaultCache(self):
"""源站未返回 Cache-Control 头时,缓存/不缓存开关。当 Switch 为 on 时,此字段必填,当 Switch 为 off 时,无需填写此字段,若填写则不生效。取值有:
<li>on:缓存;</li>
<li>off:不缓存。</li>
:rtype: str
"""
return self._DefaultCache
@DefaultCache.setter
def DefaultCache(self, DefaultCache):
self._DefaultCache = DefaultCache
@property
def DefaultCacheStrategy(self):
"""源站未返回 Cache-Control 头时,使用/不使用默认缓存策略开关。当 DefaultCache 为 on 时,此字段必填,否则此字段不生效;当 DefaultCacheTime 不为 0 时,此字段必须为 off。取值有:
<li>on:使用默认缓存策略;</li>
<li>off:不使用默认缓存策略。</li>
:rtype: str
"""
return self._DefaultCacheStrategy
@DefaultCacheStrategy.setter
def DefaultCacheStrategy(self, DefaultCacheStrategy):
self._DefaultCacheStrategy = DefaultCacheStrategy
@property
def DefaultCacheTime(self):
"""源站未返回 Cache-Control 头时,表示默认的缓存时间,单位为秒,取值:0-315360000。当 DefaultCache 为 on 时,此字段必填,否则此字段不生效;当 DefaultCacheStrategy 为 on 时, 此字段必须为 0。
:rtype: int
"""
return self._DefaultCacheTime
@DefaultCacheTime.setter
def DefaultCacheTime(self, DefaultCacheTime):
self._DefaultCacheTime = DefaultCacheTime
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._DefaultCache = params.get("DefaultCache")
self._DefaultCacheStrategy = params.get("DefaultCacheStrategy")
self._DefaultCacheTime = params.get("DefaultCacheTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ForceRedirect(AbstractModel):
"""访问协议强制 HTTPS 跳转配置。
"""
def __init__(self):
r"""
:param _Switch: 访问强制跳转配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _RedirectStatusCode: 重定向状态码,取值有:
<li>301:301跳转;</li>
<li>302:302跳转。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type RedirectStatusCode: int
"""
self._Switch = None
self._RedirectStatusCode = None
@property
def Switch(self):
"""访问强制跳转配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def RedirectStatusCode(self):
"""重定向状态码,取值有:
<li>301:301跳转;</li>
<li>302:302跳转。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._RedirectStatusCode
@RedirectStatusCode.setter
def RedirectStatusCode(self, RedirectStatusCode):
self._RedirectStatusCode = RedirectStatusCode
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._RedirectStatusCode = params.get("RedirectStatusCode")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ForceRedirectHTTPSParameters(AbstractModel):
"""访问协议强制 HTTPS 跳转配置。
"""
def __init__(self):
r"""
:param _Switch: 访问强制跳转配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _RedirectStatusCode: 重定向状态码。当 Switch 为 on 时,此字段必填,否则此字段不生效。取值有:
<li>301:301跳转;</li>
<li>302:302跳转。</li>
:type RedirectStatusCode: int
"""
self._Switch = None
self._RedirectStatusCode = None
@property
def Switch(self):
"""访问强制跳转配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def RedirectStatusCode(self):
"""重定向状态码。当 Switch 为 on 时,此字段必填,否则此字段不生效。取值有:
<li>301:301跳转;</li>
<li>302:302跳转。</li>
:rtype: int
"""
return self._RedirectStatusCode
@RedirectStatusCode.setter
def RedirectStatusCode(self, RedirectStatusCode):
self._RedirectStatusCode = RedirectStatusCode
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._RedirectStatusCode = params.get("RedirectStatusCode")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Function(AbstractModel):
"""边缘函数详情
"""
def __init__(self):
r"""
:param _FunctionId: 函数 ID。
:type FunctionId: str
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: 函数名字。
:type Name: str
:param _Remark: 函数描述。
:type Remark: str
:param _Content: 函数内容。
:type Content: str
:param _Domain: 函数默认域名。
:type Domain: str
:param _CreateTime: 创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type CreateTime: str
:param _UpdateTime: 修改时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type UpdateTime: str
"""
self._FunctionId = None
self._ZoneId = None
self._Name = None
self._Remark = None
self._Content = None
self._Domain = None
self._CreateTime = None
self._UpdateTime = None
@property
def FunctionId(self):
"""函数 ID。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""函数名字。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Remark(self):
"""函数描述。
:rtype: str
"""
return self._Remark
@Remark.setter
def Remark(self, Remark):
self._Remark = Remark
@property
def Content(self):
"""函数内容。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
@property
def Domain(self):
"""函数默认域名。
:rtype: str
"""
return self._Domain
@Domain.setter
def Domain(self, Domain):
self._Domain = Domain
@property
def CreateTime(self):
"""创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def UpdateTime(self):
"""修改时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._FunctionId = params.get("FunctionId")
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._Remark = params.get("Remark")
self._Content = params.get("Content")
self._Domain = params.get("Domain")
self._CreateTime = params.get("CreateTime")
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FunctionEnvironmentVariable(AbstractModel):
"""边缘函数环境变量
"""
def __init__(self):
r"""
:param _Key: 变量的名称,限制只能包含大小写字母、数字,特殊字符仅支持 @ . - _ ,最大 64 个字节,不支持重复。
:type Key: str
:param _Value: 变量的值,限制最大 5000 字节,默认值为空。
:type Value: str
:param _Type: 变量的类型,取值有:
<li>string:字符串类型;</li>
<li>json:json 对象类型。</li>默认值为:string。
:type Type: str
"""
self._Key = None
self._Value = None
self._Type = None
@property
def Key(self):
"""变量的名称,限制只能包含大小写字母、数字,特殊字符仅支持 @ . - _ ,最大 64 个字节,不支持重复。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Value(self):
"""变量的值,限制最大 5000 字节,默认值为空。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
@property
def Type(self):
"""变量的类型,取值有:
<li>string:字符串类型;</li>
<li>json:json 对象类型。</li>默认值为:string。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
def _deserialize(self, params):
self._Key = params.get("Key")
self._Value = params.get("Value")
self._Type = params.get("Type")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FunctionRule(AbstractModel):
"""边缘函数触发规则。
"""
def __init__(self):
r"""
:param _RuleId: 规则ID。
:type RuleId: str
:param _FunctionRuleConditions: 规则条件列表,列表项之间为或关系。
:type FunctionRuleConditions: list of FunctionRuleCondition
:param _FunctionId: 函数 ID,命中触发规则条件后执行的函数。
:type FunctionId: str
:param _Remark: 规则描述。
:type Remark: str
:param _FunctionName: 函数名称。
:type FunctionName: str
:param _Priority: 函数触发规则优先级,数值越大,优先级越高。
:type Priority: int
:param _CreateTime: 创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type CreateTime: str
:param _UpdateTime: 更新时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:type UpdateTime: str
"""
self._RuleId = None
self._FunctionRuleConditions = None
self._FunctionId = None
self._Remark = None
self._FunctionName = None
self._Priority = None
self._CreateTime = None
self._UpdateTime = None
@property
def RuleId(self):
"""规则ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def FunctionRuleConditions(self):
"""规则条件列表,列表项之间为或关系。
:rtype: list of FunctionRuleCondition
"""
return self._FunctionRuleConditions
@FunctionRuleConditions.setter
def FunctionRuleConditions(self, FunctionRuleConditions):
self._FunctionRuleConditions = FunctionRuleConditions
@property
def FunctionId(self):
"""函数 ID,命中触发规则条件后执行的函数。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def Remark(self):
"""规则描述。
:rtype: str
"""
return self._Remark
@Remark.setter
def Remark(self, Remark):
self._Remark = Remark
@property
def FunctionName(self):
"""函数名称。
:rtype: str
"""
return self._FunctionName
@FunctionName.setter
def FunctionName(self, FunctionName):
self._FunctionName = FunctionName
@property
def Priority(self):
"""函数触发规则优先级,数值越大,优先级越高。
:rtype: int
"""
return self._Priority
@Priority.setter
def Priority(self, Priority):
self._Priority = Priority
@property
def CreateTime(self):
"""创建时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def UpdateTime(self):
"""更新时间。时间为世界标准时间(UTC), 遵循 ISO 8601 标准的日期和时间格式。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
if params.get("FunctionRuleConditions") is not None:
self._FunctionRuleConditions = []
for item in params.get("FunctionRuleConditions"):
obj = FunctionRuleCondition()
obj._deserialize(item)
self._FunctionRuleConditions.append(obj)
self._FunctionId = params.get("FunctionId")
self._Remark = params.get("Remark")
self._FunctionName = params.get("FunctionName")
self._Priority = params.get("Priority")
self._CreateTime = params.get("CreateTime")
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class FunctionRuleCondition(AbstractModel):
"""边缘函数触发规则条件。
"""
def __init__(self):
r"""
:param _RuleConditions: 边缘函数触发规则条件,该列表内所有项全部满足即判断该条件满足。
:type RuleConditions: list of RuleCondition
"""
self._RuleConditions = None
@property
def RuleConditions(self):
"""边缘函数触发规则条件,该列表内所有项全部满足即判断该条件满足。
:rtype: list of RuleCondition
"""
return self._RuleConditions
@RuleConditions.setter
def RuleConditions(self, RuleConditions):
self._RuleConditions = RuleConditions
def _deserialize(self, params):
if params.get("RuleConditions") is not None:
self._RuleConditions = []
for item in params.get("RuleConditions"):
obj = RuleCondition()
obj._deserialize(item)
self._RuleConditions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Grpc(AbstractModel):
"""Grpc配置项
"""
def __init__(self):
r"""
:param _Switch: 是否开启 Grpc 配置,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""是否开启 Grpc 配置,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class GrpcParameters(AbstractModel):
"""gRPC 配置项。
"""
def __init__(self):
r"""
:param _Switch: gRPC 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""gRPC 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HSTSParameters(AbstractModel):
"""HSTS 配置参数。
"""
def __init__(self):
r"""
:param _Switch: HSTS 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Timeout: 缓存 HSTS 头部时间,单位为秒,取值:1-31536000。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Timeout: int
:param _IncludeSubDomains: 是否允许其他子域名继承相同的 HSTS 头部,取值有:
<li>on:允许其他子域名继承相同的 HSTS 头部;</li>
<li>off:不允许其他子域名继承相同的 HSTS 头部。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type IncludeSubDomains: str
:param _Preload: 是否允许浏览器预加载 HSTS 头部,取值有:
<li>on:允许浏览器预加载 HSTS 头部;</li>
<li>off:不允许浏览器预加载 HSTS 头部。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Preload: str
"""
self._Switch = None
self._Timeout = None
self._IncludeSubDomains = None
self._Preload = None
@property
def Switch(self):
"""HSTS 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Timeout(self):
"""缓存 HSTS 头部时间,单位为秒,取值:1-31536000。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: int
"""
return self._Timeout
@Timeout.setter
def Timeout(self, Timeout):
self._Timeout = Timeout
@property
def IncludeSubDomains(self):
"""是否允许其他子域名继承相同的 HSTS 头部,取值有:
<li>on:允许其他子域名继承相同的 HSTS 头部;</li>
<li>off:不允许其他子域名继承相同的 HSTS 头部。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._IncludeSubDomains
@IncludeSubDomains.setter
def IncludeSubDomains(self, IncludeSubDomains):
self._IncludeSubDomains = IncludeSubDomains
@property
def Preload(self):
"""是否允许浏览器预加载 HSTS 头部,取值有:
<li>on:允许浏览器预加载 HSTS 头部;</li>
<li>off:不允许浏览器预加载 HSTS 头部。</li>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._Preload
@Preload.setter
def Preload(self, Preload):
self._Preload = Preload
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Timeout = params.get("Timeout")
self._IncludeSubDomains = params.get("IncludeSubDomains")
self._Preload = params.get("Preload")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HTTP2Parameters(AbstractModel):
"""HTTP2 接入配置参数。
"""
def __init__(self):
r"""
:param _Switch: HTTP2 接入配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""HTTP2 接入配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HTTPResponseParameters(AbstractModel):
"""HTTP 应答配置参数。
"""
def __init__(self):
r"""
:param _StatusCode: 响应状态码。支持 2XX、4XX、5XX,不包括 499、514、101、301、302、303、509、520-599。
:type StatusCode: int
:param _ResponsePage: 响应页面 ID。
:type ResponsePage: str
"""
self._StatusCode = None
self._ResponsePage = None
@property
def StatusCode(self):
"""响应状态码。支持 2XX、4XX、5XX,不包括 499、514、101、301、302、303、509、520-599。
:rtype: int
"""
return self._StatusCode
@StatusCode.setter
def StatusCode(self, StatusCode):
self._StatusCode = StatusCode
@property
def ResponsePage(self):
"""响应页面 ID。
:rtype: str
"""
return self._ResponsePage
@ResponsePage.setter
def ResponsePage(self, ResponsePage):
self._ResponsePage = ResponsePage
def _deserialize(self, params):
self._StatusCode = params.get("StatusCode")
self._ResponsePage = params.get("ResponsePage")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HTTPUpstreamTimeoutParameters(AbstractModel):
"""七层回源超时配置。
"""
def __init__(self):
r"""
:param _ResponseTimeout: HTTP 应答超时时间,单位为秒,取值:5~600。
:type ResponseTimeout: int
"""
self._ResponseTimeout = None
@property
def ResponseTimeout(self):
"""HTTP 应答超时时间,单位为秒,取值:5~600。
:rtype: int
"""
return self._ResponseTimeout
@ResponseTimeout.setter
def ResponseTimeout(self, ResponseTimeout):
self._ResponseTimeout = ResponseTimeout
def _deserialize(self, params):
self._ResponseTimeout = params.get("ResponseTimeout")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HandleFunctionRuntimeEnvironmentRequest(AbstractModel):
"""HandleFunctionRuntimeEnvironment请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _FunctionId: 函数 ID。
:type FunctionId: str
:param _Operation: 操作类型,取值有:
<li>setEnvironmentVariable:设置环境变量,当环境变量存在时为修改行为,否则为添加行为;</li>
<li>deleteEnvironmentVariable:删除环境变量变量;</li>
<li>clearEnvironmentVariable:清空环境变量变量;</li>
<li>resetEnvironmentVariable:重置环境变量变量。</li>
:type Operation: str
:param _EnvironmentVariables: 环境变量列表,函数运行环境最多支持 64 个变量。当 Operation 取值为 setEnvironmentVariable、deleteEnvironmentVariable、resetEnvironmentVariable 时必填。
:type EnvironmentVariables: list of FunctionEnvironmentVariable
"""
self._ZoneId = None
self._FunctionId = None
self._Operation = None
self._EnvironmentVariables = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def FunctionId(self):
"""函数 ID。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def Operation(self):
"""操作类型,取值有:
<li>setEnvironmentVariable:设置环境变量,当环境变量存在时为修改行为,否则为添加行为;</li>
<li>deleteEnvironmentVariable:删除环境变量变量;</li>
<li>clearEnvironmentVariable:清空环境变量变量;</li>
<li>resetEnvironmentVariable:重置环境变量变量。</li>
:rtype: str
"""
return self._Operation
@Operation.setter
def Operation(self, Operation):
self._Operation = Operation
@property
def EnvironmentVariables(self):
"""环境变量列表,函数运行环境最多支持 64 个变量。当 Operation 取值为 setEnvironmentVariable、deleteEnvironmentVariable、resetEnvironmentVariable 时必填。
:rtype: list of FunctionEnvironmentVariable
"""
return self._EnvironmentVariables
@EnvironmentVariables.setter
def EnvironmentVariables(self, EnvironmentVariables):
self._EnvironmentVariables = EnvironmentVariables
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._FunctionId = params.get("FunctionId")
self._Operation = params.get("Operation")
if params.get("EnvironmentVariables") is not None:
self._EnvironmentVariables = []
for item in params.get("EnvironmentVariables"):
obj = FunctionEnvironmentVariable()
obj._deserialize(item)
self._EnvironmentVariables.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HandleFunctionRuntimeEnvironmentResponse(AbstractModel):
"""HandleFunctionRuntimeEnvironment返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class Header(AbstractModel):
"""刷新预热附带的头部信息
"""
def __init__(self):
r"""
:param _Name: HTTP头部名称。
:type Name: str
:param _Value: HTTP头部值。
:type Value: str
"""
self._Name = None
self._Value = None
@property
def Name(self):
"""HTTP头部名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Value(self):
"""HTTP头部值。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Name = params.get("Name")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HeaderAction(AbstractModel):
"""HTTP 头部设置规则。
"""
def __init__(self):
r"""
:param _Action: HTTP 头部设置方式。取值有:
<li>set:设置。变更指定头部参数的取值为设置后的值;</li>
<li>del:删除。删除指定的头部参数;</li>
<li>add:增加。增加指定的头部参数。</li>
:type Action: str
:param _Name: HTTP 头部名称。
:type Name: str
:param _Value: HTTP 头部值。当 Action 取值为 set 或者 add 时,该参数必填;当 Action 取值为 del 时,该参数无需填写。
:type Value: str
"""
self._Action = None
self._Name = None
self._Value = None
@property
def Action(self):
"""HTTP 头部设置方式。取值有:
<li>set:设置。变更指定头部参数的取值为设置后的值;</li>
<li>del:删除。删除指定的头部参数;</li>
<li>add:增加。增加指定的头部参数。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Name(self):
"""HTTP 头部名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Value(self):
"""HTTP 头部值。当 Action 取值为 set 或者 add 时,该参数必填;当 Action 取值为 del 时,该参数无需填写。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Action = params.get("Action")
self._Name = params.get("Name")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HealthChecker(AbstractModel):
"""负载均衡实例健康检查策略。
"""
def __init__(self):
r"""
:param _Type: 健康检查策略,取值有:
<li>HTTP;</li>
<li>HTTPS;</li>
<li>TCP;</li>
<li>UDP;</li>
<li>ICMP Ping;</li>
<li>NoCheck。</li>
注意:NoCheck 表示不启用健康检查策略。
:type Type: str
:param _Port: 检查端口。当 Type=HTTP 或 Type=HTTPS 或 Type=TCP 或 Type=UDP 时为必填。
:type Port: int
:param _Interval: 检查频率,表示多久发起一次健康检查任务,单位为秒。可取值有:30,60,180,300 或 600。
:type Interval: int
:param _Timeout: 每一次健康检查的超时时间,若健康检查消耗时间大于此值,则检查结果判定为”不健康“, 单位为秒,默认值为 5s,取值必须小于 Interval。
:type Timeout: int
:param _HealthThreshold: 健康阈值,表示连续几次健康检查结果为"健康",则判断源站为"健康",单位为次,默认 3 次,最小取值 1 次。
:type HealthThreshold: int
:param _CriticalThreshold: 不健康阈值,表示连续几次健康检查结果为"不健康",则判断源站为"不健康",单位为次,默认 2 次。
:type CriticalThreshold: int
:param _Path: 该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示探测路径,需要填写完整的 host/path,不包含协议部分,例如:www.example.com/test。
:type Path: str
:param _Method: 该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示请求方法,取值有:
<li>GET;</li>
<li>HEAD。</li>
:type Method: str
:param _ExpectedCodes: 该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示探测节点向源站发起健康检查时,响应哪些状态码可用于认定探测结果为健康。
:type ExpectedCodes: list of str
:param _Headers: 该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示探测请求携带的自定义 HTTP 请求头,至多可配置 10 个。
:type Headers: list of CustomizedHeader
:param _FollowRedirect: 该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示是否启用遵循 301/302 重定向。启用后,301/302 默认为"健康"的状态码,默认跳转 3 次。
:type FollowRedirect: str
:param _SendContext: 该参数仅当 Type=UDP 时有效,表示健康检查发送的内容。只允许 ASCII 可见字符,最大长度限制 500 个字符。
:type SendContext: str
:param _RecvContext: 该参数仅当 Type=UDP 时有效,表示健康检查期望源站返回结果。只允许 ASCII 可见字符,最大长度限制 500 个字符。
:type RecvContext: str
"""
self._Type = None
self._Port = None
self._Interval = None
self._Timeout = None
self._HealthThreshold = None
self._CriticalThreshold = None
self._Path = None
self._Method = None
self._ExpectedCodes = None
self._Headers = None
self._FollowRedirect = None
self._SendContext = None
self._RecvContext = None
@property
def Type(self):
"""健康检查策略,取值有:
<li>HTTP;</li>
<li>HTTPS;</li>
<li>TCP;</li>
<li>UDP;</li>
<li>ICMP Ping;</li>
<li>NoCheck。</li>
注意:NoCheck 表示不启用健康检查策略。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Port(self):
"""检查端口。当 Type=HTTP 或 Type=HTTPS 或 Type=TCP 或 Type=UDP 时为必填。
:rtype: int
"""
return self._Port
@Port.setter
def Port(self, Port):
self._Port = Port
@property
def Interval(self):
"""检查频率,表示多久发起一次健康检查任务,单位为秒。可取值有:30,60,180,300 或 600。
:rtype: int
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Timeout(self):
"""每一次健康检查的超时时间,若健康检查消耗时间大于此值,则检查结果判定为”不健康“, 单位为秒,默认值为 5s,取值必须小于 Interval。
:rtype: int
"""
return self._Timeout
@Timeout.setter
def Timeout(self, Timeout):
self._Timeout = Timeout
@property
def HealthThreshold(self):
"""健康阈值,表示连续几次健康检查结果为"健康",则判断源站为"健康",单位为次,默认 3 次,最小取值 1 次。
:rtype: int
"""
return self._HealthThreshold
@HealthThreshold.setter
def HealthThreshold(self, HealthThreshold):
self._HealthThreshold = HealthThreshold
@property
def CriticalThreshold(self):
"""不健康阈值,表示连续几次健康检查结果为"不健康",则判断源站为"不健康",单位为次,默认 2 次。
:rtype: int
"""
return self._CriticalThreshold
@CriticalThreshold.setter
def CriticalThreshold(self, CriticalThreshold):
self._CriticalThreshold = CriticalThreshold
@property
def Path(self):
"""该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示探测路径,需要填写完整的 host/path,不包含协议部分,例如:www.example.com/test。
:rtype: str
"""
return self._Path
@Path.setter
def Path(self, Path):
self._Path = Path
@property
def Method(self):
"""该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示请求方法,取值有:
<li>GET;</li>
<li>HEAD。</li>
:rtype: str
"""
return self._Method
@Method.setter
def Method(self, Method):
self._Method = Method
@property
def ExpectedCodes(self):
"""该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示探测节点向源站发起健康检查时,响应哪些状态码可用于认定探测结果为健康。
:rtype: list of str
"""
return self._ExpectedCodes
@ExpectedCodes.setter
def ExpectedCodes(self, ExpectedCodes):
self._ExpectedCodes = ExpectedCodes
@property
def Headers(self):
"""该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示探测请求携带的自定义 HTTP 请求头,至多可配置 10 个。
:rtype: list of CustomizedHeader
"""
return self._Headers
@Headers.setter
def Headers(self, Headers):
self._Headers = Headers
@property
def FollowRedirect(self):
"""该参数仅当 Type=HTTP 或 Type=HTTPS 时有效,表示是否启用遵循 301/302 重定向。启用后,301/302 默认为"健康"的状态码,默认跳转 3 次。
:rtype: str
"""
return self._FollowRedirect
@FollowRedirect.setter
def FollowRedirect(self, FollowRedirect):
self._FollowRedirect = FollowRedirect
@property
def SendContext(self):
"""该参数仅当 Type=UDP 时有效,表示健康检查发送的内容。只允许 ASCII 可见字符,最大长度限制 500 个字符。
:rtype: str
"""
return self._SendContext
@SendContext.setter
def SendContext(self, SendContext):
self._SendContext = SendContext
@property
def RecvContext(self):
"""该参数仅当 Type=UDP 时有效,表示健康检查期望源站返回结果。只允许 ASCII 可见字符,最大长度限制 500 个字符。
:rtype: str
"""
return self._RecvContext
@RecvContext.setter
def RecvContext(self, RecvContext):
self._RecvContext = RecvContext
def _deserialize(self, params):
self._Type = params.get("Type")
self._Port = params.get("Port")
self._Interval = params.get("Interval")
self._Timeout = params.get("Timeout")
self._HealthThreshold = params.get("HealthThreshold")
self._CriticalThreshold = params.get("CriticalThreshold")
self._Path = params.get("Path")
self._Method = params.get("Method")
self._ExpectedCodes = params.get("ExpectedCodes")
if params.get("Headers") is not None:
self._Headers = []
for item in params.get("Headers"):
obj = CustomizedHeader()
obj._deserialize(item)
self._Headers.append(obj)
self._FollowRedirect = params.get("FollowRedirect")
self._SendContext = params.get("SendContext")
self._RecvContext = params.get("RecvContext")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HostHeaderParameters(AbstractModel):
"""Host Header 重写配置参数。
"""
def __init__(self):
r"""
:param _Action: 执行动作,取值有:
<li>followOrigin:跟随源站域名;</li>
<li>custom:自定义。</li>
:type Action: str
:param _ServerName: Host Header 重写,需要填写完整域名。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type ServerName: str
"""
self._Action = None
self._ServerName = None
@property
def Action(self):
"""执行动作,取值有:
<li>followOrigin:跟随源站域名;</li>
<li>custom:自定义。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def ServerName(self):
"""Host Header 重写,需要填写完整域名。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._ServerName
@ServerName.setter
def ServerName(self, ServerName):
self._ServerName = ServerName
def _deserialize(self, params):
self._Action = params.get("Action")
self._ServerName = params.get("ServerName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class HostName(AbstractModel):
"""访问 URL 重定向 HostName 配置参数。
"""
def __init__(self):
r"""
:param _Action: 目标 HostName 配置,取值有:
<li>follow:跟随请求;</li>
<li>custom:自定义。</li>
:type Action: str
:param _Value: 目标 HostName 自定义取值,最大长度 1024。<br>注意:当 Action 为 custom 时,此字段必填;当 Action 为 follow 时,此字段不生效。
:type Value: str
"""
self._Action = None
self._Value = None
@property
def Action(self):
"""目标 HostName 配置,取值有:
<li>follow:跟随请求;</li>
<li>custom:自定义。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Value(self):
"""目标 HostName 自定义取值,最大长度 1024。<br>注意:当 Action 为 custom 时,此字段必填;当 Action 为 follow 时,此字段不生效。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Action = params.get("Action")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Hsts(AbstractModel):
"""Hsts配置
"""
def __init__(self):
r"""
:param _Switch: 是否开启,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _MaxAge: MaxAge 数值。单位为秒,最大值为1天。
注意:此字段可能返回 null,表示取不到有效值。
:type MaxAge: int
:param _IncludeSubDomains: 是否包含子域名,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type IncludeSubDomains: str
:param _Preload: 是否开启预加载,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Preload: str
"""
self._Switch = None
self._MaxAge = None
self._IncludeSubDomains = None
self._Preload = None
@property
def Switch(self):
"""是否开启,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def MaxAge(self):
"""MaxAge 数值。单位为秒,最大值为1天。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._MaxAge
@MaxAge.setter
def MaxAge(self, MaxAge):
self._MaxAge = MaxAge
@property
def IncludeSubDomains(self):
"""是否包含子域名,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._IncludeSubDomains
@IncludeSubDomains.setter
def IncludeSubDomains(self, IncludeSubDomains):
self._IncludeSubDomains = IncludeSubDomains
@property
def Preload(self):
"""是否开启预加载,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Preload
@Preload.setter
def Preload(self, Preload):
self._Preload = Preload
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._MaxAge = params.get("MaxAge")
self._IncludeSubDomains = params.get("IncludeSubDomains")
self._Preload = params.get("Preload")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Https(AbstractModel):
"""域名 https 加速配置,默认为关闭状态
"""
def __init__(self):
r"""
:param _Http2: http2 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Http2: str
:param _OcspStapling: OCSP 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type OcspStapling: str
:param _TlsVersion: Tls 版本设置,取值有:
<li>TLSv1:TLSv1版本;</li>
<li>TLSV1.1:TLSv1.1版本;</li>
<li>TLSV1.2:TLSv1.2版本;</li>
<li>TLSv1.3:TLSv1.3版本。</li>修改时必须开启连续的版本。
注意:此字段可能返回 null,表示取不到有效值。
:type TlsVersion: list of str
:param _Hsts: HSTS 配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Hsts: :class:`tencentcloud.teo.v20220901.models.Hsts`
:param _CertInfo: 证书配置。
注意:此字段可能返回 null,表示取不到有效值。
:type CertInfo: list of ServerCertInfo
:param _ApplyType: 申请类型,取值有:
<li>apply:托管EdgeOne;</li>
<li>none:不托管EdgeOne。</li>不填,默认取值为none。
注意:此字段可能返回 null,表示取不到有效值。
:type ApplyType: str
:param _CipherSuite: 密码套件,取值有:
<li>loose-v2023:提供高兼容性,安全性一般,支持 TLS 1.0-1.3 密码套件;</li>
<li>general-v2023:提供较高兼容性,安全性中等,支持 TLS 1.2-1.3 密码套件;</li>
<li>strict-v2023:提供高安全性能,禁用所有含不安全隐患的加密套件,支持 TLS 1.2-1.3 密码套件。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type CipherSuite: str
"""
self._Http2 = None
self._OcspStapling = None
self._TlsVersion = None
self._Hsts = None
self._CertInfo = None
self._ApplyType = None
self._CipherSuite = None
@property
def Http2(self):
"""http2 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Http2
@Http2.setter
def Http2(self, Http2):
self._Http2 = Http2
@property
def OcspStapling(self):
"""OCSP 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._OcspStapling
@OcspStapling.setter
def OcspStapling(self, OcspStapling):
self._OcspStapling = OcspStapling
@property
def TlsVersion(self):
"""Tls 版本设置,取值有:
<li>TLSv1:TLSv1版本;</li>
<li>TLSV1.1:TLSv1.1版本;</li>
<li>TLSV1.2:TLSv1.2版本;</li>
<li>TLSv1.3:TLSv1.3版本。</li>修改时必须开启连续的版本。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._TlsVersion
@TlsVersion.setter
def TlsVersion(self, TlsVersion):
self._TlsVersion = TlsVersion
@property
def Hsts(self):
"""HSTS 配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Hsts`
"""
return self._Hsts
@Hsts.setter
def Hsts(self, Hsts):
self._Hsts = Hsts
@property
def CertInfo(self):
"""证书配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of ServerCertInfo
"""
return self._CertInfo
@CertInfo.setter
def CertInfo(self, CertInfo):
self._CertInfo = CertInfo
@property
def ApplyType(self):
"""申请类型,取值有:
<li>apply:托管EdgeOne;</li>
<li>none:不托管EdgeOne。</li>不填,默认取值为none。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._ApplyType
@ApplyType.setter
def ApplyType(self, ApplyType):
self._ApplyType = ApplyType
@property
def CipherSuite(self):
"""密码套件,取值有:
<li>loose-v2023:提供高兼容性,安全性一般,支持 TLS 1.0-1.3 密码套件;</li>
<li>general-v2023:提供较高兼容性,安全性中等,支持 TLS 1.2-1.3 密码套件;</li>
<li>strict-v2023:提供高安全性能,禁用所有含不安全隐患的加密套件,支持 TLS 1.2-1.3 密码套件。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._CipherSuite
@CipherSuite.setter
def CipherSuite(self, CipherSuite):
self._CipherSuite = CipherSuite
def _deserialize(self, params):
self._Http2 = params.get("Http2")
self._OcspStapling = params.get("OcspStapling")
self._TlsVersion = params.get("TlsVersion")
if params.get("Hsts") is not None:
self._Hsts = Hsts()
self._Hsts._deserialize(params.get("Hsts"))
if params.get("CertInfo") is not None:
self._CertInfo = []
for item in params.get("CertInfo"):
obj = ServerCertInfo()
obj._deserialize(item)
self._CertInfo.append(obj)
self._ApplyType = params.get("ApplyType")
self._CipherSuite = params.get("CipherSuite")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IPGroup(AbstractModel):
"""IP 网段组
"""
def __init__(self):
r"""
:param _GroupId: 组 Id,创建时填 0 即可。
:type GroupId: int
:param _Name: 组名称。
:type Name: str
:param _Content: IP 组内容,仅支持 IP 及 IP 掩码。
:type Content: list of str
"""
self._GroupId = None
self._Name = None
self._Content = None
@property
def GroupId(self):
"""组 Id,创建时填 0 即可。
:rtype: int
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def Name(self):
"""组名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Content(self):
"""IP 组内容,仅支持 IP 及 IP 掩码。
:rtype: list of str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
def _deserialize(self, params):
self._GroupId = params.get("GroupId")
self._Name = params.get("Name")
self._Content = params.get("Content")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IPRegionInfo(AbstractModel):
"""IP 归属信息查询
"""
def __init__(self):
r"""
:param _IP: IP 地址,IPV4 或 IPV6。
:type IP: str
:param _IsEdgeOneIP: IP 是否属于 EdgeOne 节点,取值有:
<li>yes:该 IP 属于 EdgeOne 节点;</li>
<li>no:该 IP 不属于 EdgeOne 节点。</li>
:type IsEdgeOneIP: str
"""
self._IP = None
self._IsEdgeOneIP = None
@property
def IP(self):
"""IP 地址,IPV4 或 IPV6。
:rtype: str
"""
return self._IP
@IP.setter
def IP(self, IP):
self._IP = IP
@property
def IsEdgeOneIP(self):
"""IP 是否属于 EdgeOne 节点,取值有:
<li>yes:该 IP 属于 EdgeOne 节点;</li>
<li>no:该 IP 不属于 EdgeOne 节点。</li>
:rtype: str
"""
return self._IsEdgeOneIP
@IsEdgeOneIP.setter
def IsEdgeOneIP(self, IsEdgeOneIP):
self._IsEdgeOneIP = IsEdgeOneIP
def _deserialize(self, params):
self._IP = params.get("IP")
self._IsEdgeOneIP = params.get("IsEdgeOneIP")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IPWhitelist(AbstractModel):
"""源站防护IP白名单
"""
def __init__(self):
r"""
:param _IPv4: IPv4列表。
:type IPv4: list of str
:param _IPv6: IPv6列表。
:type IPv6: list of str
"""
self._IPv4 = None
self._IPv6 = None
@property
def IPv4(self):
"""IPv4列表。
:rtype: list of str
"""
return self._IPv4
@IPv4.setter
def IPv4(self, IPv4):
self._IPv4 = IPv4
@property
def IPv6(self):
"""IPv6列表。
:rtype: list of str
"""
return self._IPv6
@IPv6.setter
def IPv6(self, IPv6):
self._IPv6 = IPv6
def _deserialize(self, params):
self._IPv4 = params.get("IPv4")
self._IPv6 = params.get("IPv6")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IPv6Parameters(AbstractModel):
"""IPv6 访问配置。
"""
def __init__(self):
r"""
:param _Switch: IPv6 访问功能配置,取值有:
<li>on:开启 IPv6 访问功能;</li>
<li>off:关闭 IPv6 访问功能。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""IPv6 访问功能配置,取值有:
<li>on:开启 IPv6 访问功能;</li>
<li>off:关闭 IPv6 访问功能。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Identification(AbstractModel):
"""站点验证信息
"""
def __init__(self):
r"""
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _Domain: 验证子域名。验证站点时,该值为空。验证子域名是为具体子域名。
注意:此字段可能返回 null,表示取不到有效值。
:type Domain: str
:param _Status: 验证状态,取值有:
<li> pending:验证中;</li>
<li> finished:验证完成。</li>
:type Status: str
:param _Ascription: 站点归属权校验:Dns校验信息。
:type Ascription: :class:`tencentcloud.teo.v20220901.models.AscriptionInfo`
:param _OriginalNameServers: 域名当前的 NS 记录。
注意:此字段可能返回 null,表示取不到有效值。
:type OriginalNameServers: list of str
:param _FileAscription: 站点归属权校验:文件校验信息。
:type FileAscription: :class:`tencentcloud.teo.v20220901.models.FileAscriptionInfo`
"""
self._ZoneName = None
self._Domain = None
self._Status = None
self._Ascription = None
self._OriginalNameServers = None
self._FileAscription = None
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def Domain(self):
"""验证子域名。验证站点时,该值为空。验证子域名是为具体子域名。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Domain
@Domain.setter
def Domain(self, Domain):
self._Domain = Domain
@property
def Status(self):
"""验证状态,取值有:
<li> pending:验证中;</li>
<li> finished:验证完成。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Ascription(self):
"""站点归属权校验:Dns校验信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.AscriptionInfo`
"""
return self._Ascription
@Ascription.setter
def Ascription(self, Ascription):
self._Ascription = Ascription
@property
def OriginalNameServers(self):
"""域名当前的 NS 记录。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._OriginalNameServers
@OriginalNameServers.setter
def OriginalNameServers(self, OriginalNameServers):
self._OriginalNameServers = OriginalNameServers
@property
def FileAscription(self):
"""站点归属权校验:文件校验信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.FileAscriptionInfo`
"""
return self._FileAscription
@FileAscription.setter
def FileAscription(self, FileAscription):
self._FileAscription = FileAscription
def _deserialize(self, params):
self._ZoneName = params.get("ZoneName")
self._Domain = params.get("Domain")
self._Status = params.get("Status")
if params.get("Ascription") is not None:
self._Ascription = AscriptionInfo()
self._Ascription._deserialize(params.get("Ascription"))
self._OriginalNameServers = params.get("OriginalNameServers")
if params.get("FileAscription") is not None:
self._FileAscription = FileAscriptionInfo()
self._FileAscription._deserialize(params.get("FileAscription"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IdentifyZoneRequest(AbstractModel):
"""IdentifyZone请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _Domain: 站点下的子域名。如果验证站点下的子域名,则传该值,否则为空。
:type Domain: str
"""
self._ZoneName = None
self._Domain = None
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def Domain(self):
"""站点下的子域名。如果验证站点下的子域名,则传该值,否则为空。
:rtype: str
"""
return self._Domain
@Domain.setter
def Domain(self, Domain):
self._Domain = Domain
def _deserialize(self, params):
self._ZoneName = params.get("ZoneName")
self._Domain = params.get("Domain")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IdentifyZoneResponse(AbstractModel):
"""IdentifyZone返回参数结构体
"""
def __init__(self):
r"""
:param _Ascription: 站点归属校验:Dns校验信息。
:type Ascription: :class:`tencentcloud.teo.v20220901.models.AscriptionInfo`
:param _FileAscription: 站点归属权校验:文件校验信息。
:type FileAscription: :class:`tencentcloud.teo.v20220901.models.FileAscriptionInfo`
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Ascription = None
self._FileAscription = None
self._RequestId = None
@property
def Ascription(self):
"""站点归属校验:Dns校验信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.AscriptionInfo`
"""
return self._Ascription
@Ascription.setter
def Ascription(self, Ascription):
self._Ascription = Ascription
@property
def FileAscription(self):
"""站点归属权校验:文件校验信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.FileAscriptionInfo`
"""
return self._FileAscription
@FileAscription.setter
def FileAscription(self, FileAscription):
self._FileAscription = FileAscription
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
if params.get("Ascription") is not None:
self._Ascription = AscriptionInfo()
self._Ascription._deserialize(params.get("Ascription"))
if params.get("FileAscription") is not None:
self._FileAscription = FileAscriptionInfo()
self._FileAscription._deserialize(params.get("FileAscription"))
self._RequestId = params.get("RequestId")
class ImageOptimize(AbstractModel):
"""图片优化配置。
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ImportZoneConfigRequest(AbstractModel):
"""ImportZoneConfig请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Content: 待导入的配置内容。要求采用 JSON 格式,按照 UTF-8 方式进行编码。配置内容可通过站点配置导出接口(ExportZoneConfig)获取。您可以单独导入「站点加速-全局加速配置」或「站点加速-规则引擎」,传入对应的字段即可,详情可以参考下方示例。
:type Content: str
"""
self._ZoneId = None
self._Content = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Content(self):
"""待导入的配置内容。要求采用 JSON 格式,按照 UTF-8 方式进行编码。配置内容可通过站点配置导出接口(ExportZoneConfig)获取。您可以单独导入「站点加速-全局加速配置」或「站点加速-规则引擎」,传入对应的字段即可,详情可以参考下方示例。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Content = params.get("Content")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ImportZoneConfigResponse(AbstractModel):
"""ImportZoneConfig返回参数结构体
"""
def __init__(self):
r"""
:param _TaskId: 表示该次导入配置的任务 Id,通过查询站点配置导入结果接口(DescribeZoneConfigImportResult)获取本次导入任务执行的结果。注意:导入任务 Id 仅支持查询最近 7 天的导入任务。
:type TaskId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._TaskId = None
self._RequestId = None
@property
def TaskId(self):
"""表示该次导入配置的任务 Id,通过查询站点配置导入结果接口(DescribeZoneConfigImportResult)获取本次导入任务执行的结果。注意:导入任务 Id 仅支持查询最近 7 天的导入任务。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._TaskId = params.get("TaskId")
self._RequestId = params.get("RequestId")
class IncreasePlanQuotaRequest(AbstractModel):
"""IncreasePlanQuota请求参数结构体
"""
def __init__(self):
r"""
:param _PlanId: 套餐 ID, 形如 edgeone-2unuvzjmmn2q。
:type PlanId: str
:param _QuotaType: 新增的套餐配额类型,取值有:<li> site:站点数;</li><li> precise_access_control_rule:Web 防护 - 自定义规则 - 精准匹配策略的规则配额;</li><li> rate_limiting_rule:Web 防护 - 速率限制 - 精准速率限制模块的规则配额。</li>
:type QuotaType: str
:param _QuotaNumber: 新增的配额个数。单次新增的配额个数上限为 100。
:type QuotaNumber: int
"""
self._PlanId = None
self._QuotaType = None
self._QuotaNumber = None
@property
def PlanId(self):
"""套餐 ID, 形如 edgeone-2unuvzjmmn2q。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def QuotaType(self):
"""新增的套餐配额类型,取值有:<li> site:站点数;</li><li> precise_access_control_rule:Web 防护 - 自定义规则 - 精准匹配策略的规则配额;</li><li> rate_limiting_rule:Web 防护 - 速率限制 - 精准速率限制模块的规则配额。</li>
:rtype: str
"""
return self._QuotaType
@QuotaType.setter
def QuotaType(self, QuotaType):
self._QuotaType = QuotaType
@property
def QuotaNumber(self):
"""新增的配额个数。单次新增的配额个数上限为 100。
:rtype: int
"""
return self._QuotaNumber
@QuotaNumber.setter
def QuotaNumber(self, QuotaNumber):
self._QuotaNumber = QuotaNumber
def _deserialize(self, params):
self._PlanId = params.get("PlanId")
self._QuotaType = params.get("QuotaType")
self._QuotaNumber = params.get("QuotaNumber")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IncreasePlanQuotaResponse(AbstractModel):
"""IncreasePlanQuota返回参数结构体
"""
def __init__(self):
r"""
:param _DealName: 订单号。
:type DealName: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._DealName = None
self._RequestId = None
@property
def DealName(self):
"""订单号。
:rtype: str
"""
return self._DealName
@DealName.setter
def DealName(self, DealName):
self._DealName = DealName
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._DealName = params.get("DealName")
self._RequestId = params.get("RequestId")
class IntelligenceRule(AbstractModel):
"""智能分析规则
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Switch: str
:param _IntelligenceRuleItems: 规则详情。
注意:此字段可能返回 null,表示取不到有效值。
:type IntelligenceRuleItems: list of IntelligenceRuleItem
"""
self._Switch = None
self._IntelligenceRuleItems = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def IntelligenceRuleItems(self):
"""规则详情。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of IntelligenceRuleItem
"""
return self._IntelligenceRuleItems
@IntelligenceRuleItems.setter
def IntelligenceRuleItems(self, IntelligenceRuleItems):
self._IntelligenceRuleItems = IntelligenceRuleItems
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("IntelligenceRuleItems") is not None:
self._IntelligenceRuleItems = []
for item in params.get("IntelligenceRuleItems"):
obj = IntelligenceRuleItem()
obj._deserialize(item)
self._IntelligenceRuleItems.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IntelligenceRuleItem(AbstractModel):
"""Bot智能分析规则详情
"""
def __init__(self):
r"""
:param _Label: 智能分析标签,取值有:
<li>evil_bot:恶意bot;</li>
<li>suspect_bot:疑似bot;</li>
<li>good_bot:良好bot;</li>
<li>normal:正常请求。</li>
:type Label: str
:param _Action: 触发智能分析标签对应的处置方式,取值有:
<li>drop:拦截;</li>
<li>trans:放行;</li>
<li>alg:Javascript挑战;</li>
<li>captcha:数字验证码;</li>
<li>monitor:观察。</li>
:type Action: str
"""
self._Label = None
self._Action = None
@property
def Label(self):
"""智能分析标签,取值有:
<li>evil_bot:恶意bot;</li>
<li>suspect_bot:疑似bot;</li>
<li>good_bot:良好bot;</li>
<li>normal:正常请求。</li>
:rtype: str
"""
return self._Label
@Label.setter
def Label(self, Label):
self._Label = Label
@property
def Action(self):
"""触发智能分析标签对应的处置方式,取值有:
<li>drop:拦截;</li>
<li>trans:放行;</li>
<li>alg:Javascript挑战;</li>
<li>captcha:数字验证码;</li>
<li>monitor:观察。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
def _deserialize(self, params):
self._Label = params.get("Label")
self._Action = params.get("Action")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IpTableConfig(AbstractModel):
"""IP黑白名单及IP区域控制配置
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭;</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Switch: str
:param _IpTableRules: 基础管控规则。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type IpTableRules: list of IpTableRule
"""
self._Switch = None
self._IpTableRules = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭;</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def IpTableRules(self):
"""基础管控规则。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of IpTableRule
"""
return self._IpTableRules
@IpTableRules.setter
def IpTableRules(self, IpTableRules):
self._IpTableRules = IpTableRules
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("IpTableRules") is not None:
self._IpTableRules = []
for item in params.get("IpTableRules"):
obj = IpTableRule()
obj._deserialize(item)
self._IpTableRules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class IpTableRule(AbstractModel):
"""自定义规则-基础访问管控配置。
"""
def __init__(self):
r"""
:param _Action: 动作,取值有:
<li> drop:拦截;</li>
<li> trans:放行;</li>
<li> monitor:观察。</li>
:type Action: str
:param _MatchFrom: 根据类型匹配,取值有:
<li>ip:客户端 IP 进行匹配;</li>
<li>area:客户端 IP 所属地区匹配;</li>
<li>asn:客户端所属的自治系统进行匹配;</li>
<li>referer:请求头 Referer 进行匹配;</li>
<li>ua:请求头 User-Agent 进行匹配;</li>
<li>url:请求 URL 进行匹配。</li>
:type MatchFrom: str
:param _Operator: 规则的匹配方式。取值有:
<li> match:匹配,适用于 MatchFrom 为 ip;</li>
<li> not_match:不匹配,适用于 MatchFrom 为 ip;</li>
<li> include_area:地域包含,适用于 MatchFrom 为 area;</li>
<li> not_include_area:地域不包含,适用于 MatchFrom 为 area;</li>
<li> asn_match:ASN 包含,适用于 MatchFrom 为 asn;</li>
<li> asn_not_match:ASN 不包含,适用于 MatchFrom 为 asn;</li>
<li> equal:等于,适用于 MatchFrom 为 ua , referer;</li>
<li> not_equal:不等于,适用于 MatchFrom 为 ua , referer;</li>
<li> include:通配符匹配,适用于 MatchFrom 为 ua , referer , url;</li>
<li> not_include:通配符不匹配,适用于 MatchFrom 为 ua , referer;</li>
<li> is_emty:配置内容为空,适用于 MatchFrom 为 ua , referer;</li>
<li> not_exists:配置内容不存在,适用于 MatchFrom 为 ua , referer。</li>
:type Operator: str
:param _RuleID: 规则id。仅出参使用。
:type RuleID: int
:param _UpdateTime: 更新时间。仅出参使用。
:type UpdateTime: str
:param _Status: 规则启用状态。取值有:
<li> on:启用;</li>
<li> off:未启用。</li>
当入参缺省时,按 on 取值。
:type Status: str
:param _RuleName: 规则名。
注意:此字段可能返回 null,表示取不到有效值。
:type RuleName: str
:param _MatchContent: 匹配内容。支持多值输入。
<li>当输入多个匹配值时,请使用英文逗号分隔;</li>
<li>当 MatchFrom 为 ua 时,不支持多值输入;</li>
<li>当 Operator 为 is_empty 或 not_exists 时,本字段入参值无效。</li>
:type MatchContent: str
"""
self._Action = None
self._MatchFrom = None
self._Operator = None
self._RuleID = None
self._UpdateTime = None
self._Status = None
self._RuleName = None
self._MatchContent = None
@property
def Action(self):
"""动作,取值有:
<li> drop:拦截;</li>
<li> trans:放行;</li>
<li> monitor:观察。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def MatchFrom(self):
"""根据类型匹配,取值有:
<li>ip:客户端 IP 进行匹配;</li>
<li>area:客户端 IP 所属地区匹配;</li>
<li>asn:客户端所属的自治系统进行匹配;</li>
<li>referer:请求头 Referer 进行匹配;</li>
<li>ua:请求头 User-Agent 进行匹配;</li>
<li>url:请求 URL 进行匹配。</li>
:rtype: str
"""
return self._MatchFrom
@MatchFrom.setter
def MatchFrom(self, MatchFrom):
self._MatchFrom = MatchFrom
@property
def Operator(self):
"""规则的匹配方式。取值有:
<li> match:匹配,适用于 MatchFrom 为 ip;</li>
<li> not_match:不匹配,适用于 MatchFrom 为 ip;</li>
<li> include_area:地域包含,适用于 MatchFrom 为 area;</li>
<li> not_include_area:地域不包含,适用于 MatchFrom 为 area;</li>
<li> asn_match:ASN 包含,适用于 MatchFrom 为 asn;</li>
<li> asn_not_match:ASN 不包含,适用于 MatchFrom 为 asn;</li>
<li> equal:等于,适用于 MatchFrom 为 ua , referer;</li>
<li> not_equal:不等于,适用于 MatchFrom 为 ua , referer;</li>
<li> include:通配符匹配,适用于 MatchFrom 为 ua , referer , url;</li>
<li> not_include:通配符不匹配,适用于 MatchFrom 为 ua , referer;</li>
<li> is_emty:配置内容为空,适用于 MatchFrom 为 ua , referer;</li>
<li> not_exists:配置内容不存在,适用于 MatchFrom 为 ua , referer。</li>
:rtype: str
"""
return self._Operator
@Operator.setter
def Operator(self, Operator):
self._Operator = Operator
@property
def RuleID(self):
"""规则id。仅出参使用。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def UpdateTime(self):
"""更新时间。仅出参使用。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def Status(self):
"""规则启用状态。取值有:
<li> on:启用;</li>
<li> off:未启用。</li>
当入参缺省时,按 on 取值。
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def RuleName(self):
"""规则名。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def MatchContent(self):
"""匹配内容。支持多值输入。
<li>当输入多个匹配值时,请使用英文逗号分隔;</li>
<li>当 MatchFrom 为 ua 时,不支持多值输入;</li>
<li>当 Operator 为 is_empty 或 not_exists 时,本字段入参值无效。</li>
:rtype: str
"""
return self._MatchContent
@MatchContent.setter
def MatchContent(self, MatchContent):
self._MatchContent = MatchContent
def _deserialize(self, params):
self._Action = params.get("Action")
self._MatchFrom = params.get("MatchFrom")
self._Operator = params.get("Operator")
self._RuleID = params.get("RuleID")
self._UpdateTime = params.get("UpdateTime")
self._Status = params.get("Status")
self._RuleName = params.get("RuleName")
self._MatchContent = params.get("MatchContent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Ipv6(AbstractModel):
"""Ipv6访问配置
"""
def __init__(self):
r"""
:param _Switch: Ipv6 访问功能配置,取值有:
<li>on:开启Ipv6访问功能;</li>
<li>off:关闭Ipv6访问功能。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""Ipv6 访问功能配置,取值有:
<li>on:开启Ipv6访问功能;</li>
<li>off:关闭Ipv6访问功能。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class JITVideoProcess(AbstractModel):
"""视频即时处理配置
"""
def __init__(self):
r"""
:param _Switch: 视频即时处理配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""视频即时处理配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class L4OfflineLog(AbstractModel):
"""离线日志详细信息
"""
def __init__(self):
r"""
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _Area: 日志所属区域,取值有:
<li>mainland:中国大陆境内;</li>
<li>overseas:全球(不含中国大陆)。</li>
:type Area: str
:param _LogPacketName: 离线日志数据包名。
:type LogPacketName: str
:param _Url: 离线日志下载地址。
:type Url: str
:param _LogTime: 日志打包时间,此参数已经废弃。
:type LogTime: int
:param _LogStartTime: 日志打包开始时间。
:type LogStartTime: str
:param _LogEndTime: 日志打包结束时间。
:type LogEndTime: str
:param _Size: 日志大小,单位为 Byte。
:type Size: int
"""
self._ProxyId = None
self._Area = None
self._LogPacketName = None
self._Url = None
self._LogTime = None
self._LogStartTime = None
self._LogEndTime = None
self._Size = None
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def Area(self):
"""日志所属区域,取值有:
<li>mainland:中国大陆境内;</li>
<li>overseas:全球(不含中国大陆)。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def LogPacketName(self):
"""离线日志数据包名。
:rtype: str
"""
return self._LogPacketName
@LogPacketName.setter
def LogPacketName(self, LogPacketName):
self._LogPacketName = LogPacketName
@property
def Url(self):
"""离线日志下载地址。
:rtype: str
"""
return self._Url
@Url.setter
def Url(self, Url):
self._Url = Url
@property
def LogTime(self):
"""日志打包时间,此参数已经废弃。
:rtype: int
"""
return self._LogTime
@LogTime.setter
def LogTime(self, LogTime):
self._LogTime = LogTime
@property
def LogStartTime(self):
"""日志打包开始时间。
:rtype: str
"""
return self._LogStartTime
@LogStartTime.setter
def LogStartTime(self, LogStartTime):
self._LogStartTime = LogStartTime
@property
def LogEndTime(self):
"""日志打包结束时间。
:rtype: str
"""
return self._LogEndTime
@LogEndTime.setter
def LogEndTime(self, LogEndTime):
self._LogEndTime = LogEndTime
@property
def Size(self):
"""日志大小,单位为 Byte。
:rtype: int
"""
return self._Size
@Size.setter
def Size(self, Size):
self._Size = Size
def _deserialize(self, params):
self._ProxyId = params.get("ProxyId")
self._Area = params.get("Area")
self._LogPacketName = params.get("LogPacketName")
self._Url = params.get("Url")
self._LogTime = params.get("LogTime")
self._LogStartTime = params.get("LogStartTime")
self._LogEndTime = params.get("LogEndTime")
self._Size = params.get("Size")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class L4Proxy(AbstractModel):
"""四层代理实例。
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _ProxyName: 四层代理实例名称。
:type ProxyName: str
:param _Area: 四层代理实例的加速区域。
<li>mainland:中国大陆可用区;</li>
<li>overseas: 全球可用区(不含中国大陆);</li>
<li>global:全球可用区。</li>
:type Area: str
:param _Cname: 接入 CNAME。
:type Cname: str
:param _Ips: 开启固定 IP 后,该值会返回对应的接入 IP;未开启时,该值为空。
:type Ips: list of str
:param _Status: 四层代理实例状态。
<li>online:已启用;</li>
<li>offline:已停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>banned:已封禁;</li>
<li>fail:部署失败/停用失败。</li>
:type Status: str
:param _Ipv6: 是否开启 IPv6 访问。
<li>on:开启;</li>
<li>off:关闭。</li>
:type Ipv6: str
:param _StaticIp: 是否开启固定 IP。
<li>on:开启;</li> <li>off:关闭。</li>
:type StaticIp: str
:param _AccelerateMainland: 是否开启中国大陆网络优化。
<li>on:开启</li> <li>off:关闭</li>
:type AccelerateMainland: str
:param _DDosProtectionConfig: 安全防护配置。
注意:此字段可能返回 null,表示取不到有效值。
:type DDosProtectionConfig: :class:`tencentcloud.teo.v20220901.models.DDosProtectionConfig`
:param _L4ProxyRuleCount: 四层代理实例下的转发规则数量。
:type L4ProxyRuleCount: int
:param _UpdateTime: 最新变更时间。
:type UpdateTime: str
"""
self._ZoneId = None
self._ProxyId = None
self._ProxyName = None
self._Area = None
self._Cname = None
self._Ips = None
self._Status = None
self._Ipv6 = None
self._StaticIp = None
self._AccelerateMainland = None
self._DDosProtectionConfig = None
self._L4ProxyRuleCount = None
self._UpdateTime = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def ProxyName(self):
"""四层代理实例名称。
:rtype: str
"""
return self._ProxyName
@ProxyName.setter
def ProxyName(self, ProxyName):
self._ProxyName = ProxyName
@property
def Area(self):
"""四层代理实例的加速区域。
<li>mainland:中国大陆可用区;</li>
<li>overseas: 全球可用区(不含中国大陆);</li>
<li>global:全球可用区。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def Cname(self):
"""接入 CNAME。
:rtype: str
"""
return self._Cname
@Cname.setter
def Cname(self, Cname):
self._Cname = Cname
@property
def Ips(self):
"""开启固定 IP 后,该值会返回对应的接入 IP;未开启时,该值为空。
:rtype: list of str
"""
return self._Ips
@Ips.setter
def Ips(self, Ips):
self._Ips = Ips
@property
def Status(self):
"""四层代理实例状态。
<li>online:已启用;</li>
<li>offline:已停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>banned:已封禁;</li>
<li>fail:部署失败/停用失败。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Ipv6(self):
"""是否开启 IPv6 访问。
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def StaticIp(self):
"""是否开启固定 IP。
<li>on:开启;</li> <li>off:关闭。</li>
:rtype: str
"""
return self._StaticIp
@StaticIp.setter
def StaticIp(self, StaticIp):
self._StaticIp = StaticIp
@property
def AccelerateMainland(self):
"""是否开启中国大陆网络优化。
<li>on:开启</li> <li>off:关闭</li>
:rtype: str
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
@property
def DDosProtectionConfig(self):
"""安全防护配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DDosProtectionConfig`
"""
return self._DDosProtectionConfig
@DDosProtectionConfig.setter
def DDosProtectionConfig(self, DDosProtectionConfig):
self._DDosProtectionConfig = DDosProtectionConfig
@property
def L4ProxyRuleCount(self):
"""四层代理实例下的转发规则数量。
:rtype: int
"""
return self._L4ProxyRuleCount
@L4ProxyRuleCount.setter
def L4ProxyRuleCount(self, L4ProxyRuleCount):
self._L4ProxyRuleCount = L4ProxyRuleCount
@property
def UpdateTime(self):
"""最新变更时间。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._ProxyName = params.get("ProxyName")
self._Area = params.get("Area")
self._Cname = params.get("Cname")
self._Ips = params.get("Ips")
self._Status = params.get("Status")
self._Ipv6 = params.get("Ipv6")
self._StaticIp = params.get("StaticIp")
self._AccelerateMainland = params.get("AccelerateMainland")
if params.get("DDosProtectionConfig") is not None:
self._DDosProtectionConfig = DDosProtectionConfig()
self._DDosProtectionConfig._deserialize(params.get("DDosProtectionConfig"))
self._L4ProxyRuleCount = params.get("L4ProxyRuleCount")
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class L4ProxyRemoteAuth(AbstractModel):
"""四层远程鉴权信息
"""
def __init__(self):
r"""
:param _Switch: 四层远程鉴权开关,取值有:
<li>on:表示开启;</li>
<li>off:表示关闭。</li>
:type Switch: str
:param _Address: 远程鉴权服务地址,格式为: domain/ip:port。例:example.auth.com:8888
:type Address: str
:param _ServerFaultyBehavior: 远程鉴权服务不可访问后,经过四层转发规则默认回源行为,取值有:
<li>reject:表示进行拦截,拒绝访问;</li>
<li>allow:表示允许通过。</li>
:type ServerFaultyBehavior: str
"""
self._Switch = None
self._Address = None
self._ServerFaultyBehavior = None
@property
def Switch(self):
"""四层远程鉴权开关,取值有:
<li>on:表示开启;</li>
<li>off:表示关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Address(self):
"""远程鉴权服务地址,格式为: domain/ip:port。例:example.auth.com:8888
:rtype: str
"""
return self._Address
@Address.setter
def Address(self, Address):
self._Address = Address
@property
def ServerFaultyBehavior(self):
"""远程鉴权服务不可访问后,经过四层转发规则默认回源行为,取值有:
<li>reject:表示进行拦截,拒绝访问;</li>
<li>allow:表示允许通过。</li>
:rtype: str
"""
return self._ServerFaultyBehavior
@ServerFaultyBehavior.setter
def ServerFaultyBehavior(self, ServerFaultyBehavior):
self._ServerFaultyBehavior = ServerFaultyBehavior
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Address = params.get("Address")
self._ServerFaultyBehavior = params.get("ServerFaultyBehavior")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class L4ProxyRule(AbstractModel):
"""四层代理转发规则详情。
"""
def __init__(self):
r"""
:param _RuleId: 转发规则 ID。
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数请勿填写;在 ModifyL4ProxyRules 作为入参使用时,该参数必填。
:type RuleId: str
:param _Protocol: 转发协议。取值有:
<li>TCP:TCP 协议;</li>
<li>UDP:UDP 协议。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:type Protocol: str
:param _PortRange: 转发端口,支持按照以下形式填写:
<li>单端口,如:80;</li>
<li>端口段,如:81-85。表示 81、82、83、84、85 五个端口。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:type PortRange: list of str
:param _OriginType: 源站类型,取值有:
<li>IP_DOMAIN:IP/域名源站;</li>
<li>ORIGIN_GROUP:源站组;</li>
<li>LB:负载均衡,当前仅白名单开放。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:type OriginType: str
:param _OriginValue: 源站地址:
<li>当 OriginType 为 IP_DOMAIN 时,填写 IP 或域名,如 8.8.8.8 或 test.com ;</li>
<li>当 OriginType 为 ORIGIN_GROUP 时,填写源站组 ID,如 og-537y24vf5b41;</li>
<li>当 OriginType 为 LB 时,填写负载均衡实例 ID,如 lb-2qwk30xf7s9g。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:type OriginValue: list of str
:param _OriginPortRange: 源站端口,支持按照以下形式填写:
<li>单端口,如:80;</li>
<li>端口段,如:81-85,表示 81、82、83、84、85 五个端口。填写端口段时,则需要与转发端口段长度保持一致,例如转发端口:80-90,则转发端口:90-100。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:type OriginPortRange: str
:param _ClientIPPassThroughMode: 传递客户端 IP 的形式,取值有:
<li>TOA:TOA(仅 Protocol = TCP 时可选);</li>
<li>PPV1:Proxy Protocol 传递,协议版本 V1(仅 Protocol = TCP 时可选);</li>
<li>PPV2:Proxy Protocol 传递,协议版本 V2;</li>
<li>SPP:Simple Proxy Protocol 传递,(仅 Protocol = UDP 时可选);</li>
<li>OFF:不传递。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填,不填写时默认为 OFF;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:type ClientIPPassThroughMode: str
:param _SessionPersist: 是否开启会话保持,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填,不填写时默认为 off;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:type SessionPersist: str
:param _SessionPersistTime: 会话保持时间,取值范围为 30-3600,单位为秒。
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填,仅当 SessionPersist = on 时,该值才会生效,且当 SessionPersist = on ,该值不填写默认为 3600;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:type SessionPersistTime: int
:param _RuleTag: 规则标签。可输入1-50 个任意字符。
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:type RuleTag: str
:param _Status: 规则状态,取值有:
<li>online:已启用;</li>
<li>offline:已停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>fail:部署失败/停用失败。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules、ModifyL4ProxyRules 作为入参使用时,该参数请勿填写。
:type Status: str
:param _BuId: BuID。
:type BuId: str
:param _RemoteAuth: 远程鉴权信息。
注意:RemoteAuth 在 CreateL4ProxyRules 或 ModifyL4ProxyRules 不可作为入参使用,如有传此参数,会忽略。在 DescribeL4ProxyRules 返回为空时,表示没有开启远程鉴权。
注意:此字段可能返回 null,表示取不到有效值。
:type RemoteAuth: :class:`tencentcloud.teo.v20220901.models.L4ProxyRemoteAuth`
"""
self._RuleId = None
self._Protocol = None
self._PortRange = None
self._OriginType = None
self._OriginValue = None
self._OriginPortRange = None
self._ClientIPPassThroughMode = None
self._SessionPersist = None
self._SessionPersistTime = None
self._RuleTag = None
self._Status = None
self._BuId = None
self._RemoteAuth = None
@property
def RuleId(self):
"""转发规则 ID。
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数请勿填写;在 ModifyL4ProxyRules 作为入参使用时,该参数必填。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def Protocol(self):
"""转发协议。取值有:
<li>TCP:TCP 协议;</li>
<li>UDP:UDP 协议。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:rtype: str
"""
return self._Protocol
@Protocol.setter
def Protocol(self, Protocol):
self._Protocol = Protocol
@property
def PortRange(self):
"""转发端口,支持按照以下形式填写:
<li>单端口,如:80;</li>
<li>端口段,如:81-85。表示 81、82、83、84、85 五个端口。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:rtype: list of str
"""
return self._PortRange
@PortRange.setter
def PortRange(self, PortRange):
self._PortRange = PortRange
@property
def OriginType(self):
"""源站类型,取值有:
<li>IP_DOMAIN:IP/域名源站;</li>
<li>ORIGIN_GROUP:源站组;</li>
<li>LB:负载均衡,当前仅白名单开放。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def OriginValue(self):
"""源站地址:
<li>当 OriginType 为 IP_DOMAIN 时,填写 IP 或域名,如 8.8.8.8 或 test.com ;</li>
<li>当 OriginType 为 ORIGIN_GROUP 时,填写源站组 ID,如 og-537y24vf5b41;</li>
<li>当 OriginType 为 LB 时,填写负载均衡实例 ID,如 lb-2qwk30xf7s9g。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:rtype: list of str
"""
return self._OriginValue
@OriginValue.setter
def OriginValue(self, OriginValue):
self._OriginValue = OriginValue
@property
def OriginPortRange(self):
"""源站端口,支持按照以下形式填写:
<li>单端口,如:80;</li>
<li>端口段,如:81-85,表示 81、82、83、84、85 五个端口。填写端口段时,则需要与转发端口段长度保持一致,例如转发端口:80-90,则转发端口:90-100。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数必填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写时表示不修改。
:rtype: str
"""
return self._OriginPortRange
@OriginPortRange.setter
def OriginPortRange(self, OriginPortRange):
self._OriginPortRange = OriginPortRange
@property
def ClientIPPassThroughMode(self):
"""传递客户端 IP 的形式,取值有:
<li>TOA:TOA(仅 Protocol = TCP 时可选);</li>
<li>PPV1:Proxy Protocol 传递,协议版本 V1(仅 Protocol = TCP 时可选);</li>
<li>PPV2:Proxy Protocol 传递,协议版本 V2;</li>
<li>SPP:Simple Proxy Protocol 传递,(仅 Protocol = UDP 时可选);</li>
<li>OFF:不传递。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填,不填写时默认为 OFF;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:rtype: str
"""
return self._ClientIPPassThroughMode
@ClientIPPassThroughMode.setter
def ClientIPPassThroughMode(self, ClientIPPassThroughMode):
self._ClientIPPassThroughMode = ClientIPPassThroughMode
@property
def SessionPersist(self):
"""是否开启会话保持,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填,不填写时默认为 off;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:rtype: str
"""
return self._SessionPersist
@SessionPersist.setter
def SessionPersist(self, SessionPersist):
self._SessionPersist = SessionPersist
@property
def SessionPersistTime(self):
"""会话保持时间,取值范围为 30-3600,单位为秒。
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填,仅当 SessionPersist = on 时,该值才会生效,且当 SessionPersist = on ,该值不填写默认为 3600;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def RuleTag(self):
"""规则标签。可输入1-50 个任意字符。
注意:L4ProxyRule 在 CreateL4ProxyRules 作为入参使用时,该参数选填;在 ModifyL4ProxyRules 作为入参使用时,该参数选填,不填写表示不修改。
:rtype: str
"""
return self._RuleTag
@RuleTag.setter
def RuleTag(self, RuleTag):
self._RuleTag = RuleTag
@property
def Status(self):
"""规则状态,取值有:
<li>online:已启用;</li>
<li>offline:已停用;</li>
<li>progress:部署中;</li>
<li>stopping:停用中;</li>
<li>fail:部署失败/停用失败。</li>
注意:L4ProxyRule 在 CreateL4ProxyRules、ModifyL4ProxyRules 作为入参使用时,该参数请勿填写。
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def BuId(self):
"""BuID。
:rtype: str
"""
return self._BuId
@BuId.setter
def BuId(self, BuId):
self._BuId = BuId
@property
def RemoteAuth(self):
"""远程鉴权信息。
注意:RemoteAuth 在 CreateL4ProxyRules 或 ModifyL4ProxyRules 不可作为入参使用,如有传此参数,会忽略。在 DescribeL4ProxyRules 返回为空时,表示没有开启远程鉴权。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.L4ProxyRemoteAuth`
"""
return self._RemoteAuth
@RemoteAuth.setter
def RemoteAuth(self, RemoteAuth):
self._RemoteAuth = RemoteAuth
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
self._Protocol = params.get("Protocol")
self._PortRange = params.get("PortRange")
self._OriginType = params.get("OriginType")
self._OriginValue = params.get("OriginValue")
self._OriginPortRange = params.get("OriginPortRange")
self._ClientIPPassThroughMode = params.get("ClientIPPassThroughMode")
self._SessionPersist = params.get("SessionPersist")
self._SessionPersistTime = params.get("SessionPersistTime")
self._RuleTag = params.get("RuleTag")
self._Status = params.get("Status")
self._BuId = params.get("BuId")
if params.get("RemoteAuth") is not None:
self._RemoteAuth = L4ProxyRemoteAuth()
self._RemoteAuth._deserialize(params.get("RemoteAuth"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class L7OfflineLog(AbstractModel):
"""七层离线日志详细信息。
"""
def __init__(self):
r"""
:param _Domain: 离线日志域名。
:type Domain: str
:param _Area: 日志所属区域,取值有:
<li>mainland:中国大陆境内; </li>
<li>overseas:全球(不含中国大陆)。</li>
:type Area: str
:param _LogPacketName: 离线日志数据包名。
:type LogPacketName: str
:param _Url: 离线日志下载地址。
:type Url: str
:param _LogTime: 日志打包时间,此参数已经废弃。
:type LogTime: int
:param _LogStartTime: 日志打包开始时间。
:type LogStartTime: str
:param _LogEndTime: 日志打包结束时间。
:type LogEndTime: str
:param _Size: 日志原始大小,单位 Byte。
:type Size: int
"""
self._Domain = None
self._Area = None
self._LogPacketName = None
self._Url = None
self._LogTime = None
self._LogStartTime = None
self._LogEndTime = None
self._Size = None
@property
def Domain(self):
"""离线日志域名。
:rtype: str
"""
return self._Domain
@Domain.setter
def Domain(self, Domain):
self._Domain = Domain
@property
def Area(self):
"""日志所属区域,取值有:
<li>mainland:中国大陆境内; </li>
<li>overseas:全球(不含中国大陆)。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def LogPacketName(self):
"""离线日志数据包名。
:rtype: str
"""
return self._LogPacketName
@LogPacketName.setter
def LogPacketName(self, LogPacketName):
self._LogPacketName = LogPacketName
@property
def Url(self):
"""离线日志下载地址。
:rtype: str
"""
return self._Url
@Url.setter
def Url(self, Url):
self._Url = Url
@property
def LogTime(self):
"""日志打包时间,此参数已经废弃。
:rtype: int
"""
return self._LogTime
@LogTime.setter
def LogTime(self, LogTime):
self._LogTime = LogTime
@property
def LogStartTime(self):
"""日志打包开始时间。
:rtype: str
"""
return self._LogStartTime
@LogStartTime.setter
def LogStartTime(self, LogStartTime):
self._LogStartTime = LogStartTime
@property
def LogEndTime(self):
"""日志打包结束时间。
:rtype: str
"""
return self._LogEndTime
@LogEndTime.setter
def LogEndTime(self, LogEndTime):
self._LogEndTime = LogEndTime
@property
def Size(self):
"""日志原始大小,单位 Byte。
:rtype: int
"""
return self._Size
@Size.setter
def Size(self, Size):
self._Size = Size
def _deserialize(self, params):
self._Domain = params.get("Domain")
self._Area = params.get("Area")
self._LogPacketName = params.get("LogPacketName")
self._Url = params.get("Url")
self._LogTime = params.get("LogTime")
self._LogStartTime = params.get("LogStartTime")
self._LogEndTime = params.get("LogEndTime")
self._Size = params.get("Size")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class LoadBalancer(AbstractModel):
"""负载均衡实例信息。
"""
def __init__(self):
r"""
:param _InstanceId: 实例 ID。
:type InstanceId: str
:param _Name: 实例名称,可输入 1-200 个字符,允许字符为 a-z,A-Z,0-9,_,-。
:type Name: str
:param _Type: 实例类型,取值有:
<li>HTTP:HTTP 专用型,支持添加 HTTP 专用型和通用型源站组,仅支持被站点加速相关服务引用(如域名服务和规则引擎);</li>
<li>GENERAL:通用型,仅支持添加通用型源站组,能被站点加速服务(如域名服务和规则引擎)和四层代理引用。</li>
:type Type: str
:param _HealthChecker: 健康检查策略。详情请参考 [健康检查策略介绍](https://cloud.tencent.com/document/product/1552/104228)。
:type HealthChecker: :class:`tencentcloud.teo.v20220901.models.HealthChecker`
:param _SteeringPolicy: 源站组间的流量调度策略,取值有:
<li>Pritory:按优先级顺序进行故障转移 。</li>
:type SteeringPolicy: str
:param _FailoverPolicy: 实际访问某源站失败时的请求重试策略,详情请参考 [请求重试策略介绍](https://cloud.tencent.com/document/product/1552/104227),取值有:
<li>OtherOriginGroup:单次请求失败后,请求优先重试下一优先级源站组;</li>
<li>OtherRecordInOriginGroup:单次请求失败后,请求优先重试同源站组内的其他源站。</li>
:type FailoverPolicy: str
:param _OriginGroupHealthStatus: 源站组健康状态。
:type OriginGroupHealthStatus: list of OriginGroupHealthStatus
:param _Status: 负载均衡状态,取值有:
<li>Pending:部署中;</li>
<li>Deleting:删除中;</li>
<li>Running:已生效。</li>
:type Status: str
:param _L4UsedList: 该负载均衡实例绑的定四层层代理实例的列表。
:type L4UsedList: list of str
:param _L7UsedList: 该负载均衡实例绑定的七层域名列表。
:type L7UsedList: list of str
"""
self._InstanceId = None
self._Name = None
self._Type = None
self._HealthChecker = None
self._SteeringPolicy = None
self._FailoverPolicy = None
self._OriginGroupHealthStatus = None
self._Status = None
self._L4UsedList = None
self._L7UsedList = None
@property
def InstanceId(self):
"""实例 ID。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
@property
def Name(self):
"""实例名称,可输入 1-200 个字符,允许字符为 a-z,A-Z,0-9,_,-。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""实例类型,取值有:
<li>HTTP:HTTP 专用型,支持添加 HTTP 专用型和通用型源站组,仅支持被站点加速相关服务引用(如域名服务和规则引擎);</li>
<li>GENERAL:通用型,仅支持添加通用型源站组,能被站点加速服务(如域名服务和规则引擎)和四层代理引用。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def HealthChecker(self):
"""健康检查策略。详情请参考 [健康检查策略介绍](https://cloud.tencent.com/document/product/1552/104228)。
:rtype: :class:`tencentcloud.teo.v20220901.models.HealthChecker`
"""
return self._HealthChecker
@HealthChecker.setter
def HealthChecker(self, HealthChecker):
self._HealthChecker = HealthChecker
@property
def SteeringPolicy(self):
"""源站组间的流量调度策略,取值有:
<li>Pritory:按优先级顺序进行故障转移 。</li>
:rtype: str
"""
return self._SteeringPolicy
@SteeringPolicy.setter
def SteeringPolicy(self, SteeringPolicy):
self._SteeringPolicy = SteeringPolicy
@property
def FailoverPolicy(self):
"""实际访问某源站失败时的请求重试策略,详情请参考 [请求重试策略介绍](https://cloud.tencent.com/document/product/1552/104227),取值有:
<li>OtherOriginGroup:单次请求失败后,请求优先重试下一优先级源站组;</li>
<li>OtherRecordInOriginGroup:单次请求失败后,请求优先重试同源站组内的其他源站。</li>
:rtype: str
"""
return self._FailoverPolicy
@FailoverPolicy.setter
def FailoverPolicy(self, FailoverPolicy):
self._FailoverPolicy = FailoverPolicy
@property
def OriginGroupHealthStatus(self):
"""源站组健康状态。
:rtype: list of OriginGroupHealthStatus
"""
return self._OriginGroupHealthStatus
@OriginGroupHealthStatus.setter
def OriginGroupHealthStatus(self, OriginGroupHealthStatus):
self._OriginGroupHealthStatus = OriginGroupHealthStatus
@property
def Status(self):
"""负载均衡状态,取值有:
<li>Pending:部署中;</li>
<li>Deleting:删除中;</li>
<li>Running:已生效。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def L4UsedList(self):
"""该负载均衡实例绑的定四层层代理实例的列表。
:rtype: list of str
"""
return self._L4UsedList
@L4UsedList.setter
def L4UsedList(self, L4UsedList):
self._L4UsedList = L4UsedList
@property
def L7UsedList(self):
"""该负载均衡实例绑定的七层域名列表。
:rtype: list of str
"""
return self._L7UsedList
@L7UsedList.setter
def L7UsedList(self, L7UsedList):
self._L7UsedList = L7UsedList
def _deserialize(self, params):
self._InstanceId = params.get("InstanceId")
self._Name = params.get("Name")
self._Type = params.get("Type")
if params.get("HealthChecker") is not None:
self._HealthChecker = HealthChecker()
self._HealthChecker._deserialize(params.get("HealthChecker"))
self._SteeringPolicy = params.get("SteeringPolicy")
self._FailoverPolicy = params.get("FailoverPolicy")
if params.get("OriginGroupHealthStatus") is not None:
self._OriginGroupHealthStatus = []
for item in params.get("OriginGroupHealthStatus"):
obj = OriginGroupHealthStatus()
obj._deserialize(item)
self._OriginGroupHealthStatus.append(obj)
self._Status = params.get("Status")
self._L4UsedList = params.get("L4UsedList")
self._L7UsedList = params.get("L7UsedList")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class LogFormat(AbstractModel):
"""实时日志投递的输出格式。您可以直接通过 FormatType 参数使用指定预设日志输出格式(JSON Lines / csv),也可以在预设日志输出格式基础上,通过其他参数来自定义变体输出格式。
"""
def __init__(self):
r"""
:param _FormatType: 日志投递的预设输出格式类型,取值有:
<li>json:使用预设日志输出格式 JSON Lines,单条日志中的字段以键值对方式呈现;</li>
<li>csv:使用预设日志输出格式 csv,单条日志中仅呈现字段值,不呈现字段名称。</li>
:type FormatType: str
:param _BatchPrefix: 在每个日志投递批次之前添加的字符串。每个日志投递批次可能包含多条日志记录。
:type BatchPrefix: str
:param _BatchSuffix: 在每个日志投递批次后附加的字符串。
:type BatchSuffix: str
:param _RecordPrefix: 在每条日志记录之前添加的字符串。
:type RecordPrefix: str
:param _RecordSuffix: 在每条日志记录后附加的字符串。
:type RecordSuffix: str
:param _RecordDelimiter: 插入日志记录之间作为分隔符的字符串,取值有:
<li>\n:换行符;</li>
<li>\t:制表符;</li>
<li>,:半角逗号。</li>
:type RecordDelimiter: str
:param _FieldDelimiter: 单条日志记录内,插入字段之间作为分隔符的字符串,取值有:
<li>\t:制表符;</li>
<li>,:半角逗号;</li>
<li>;:半角分号。</li>
:type FieldDelimiter: str
"""
self._FormatType = None
self._BatchPrefix = None
self._BatchSuffix = None
self._RecordPrefix = None
self._RecordSuffix = None
self._RecordDelimiter = None
self._FieldDelimiter = None
@property
def FormatType(self):
"""日志投递的预设输出格式类型,取值有:
<li>json:使用预设日志输出格式 JSON Lines,单条日志中的字段以键值对方式呈现;</li>
<li>csv:使用预设日志输出格式 csv,单条日志中仅呈现字段值,不呈现字段名称。</li>
:rtype: str
"""
return self._FormatType
@FormatType.setter
def FormatType(self, FormatType):
self._FormatType = FormatType
@property
def BatchPrefix(self):
"""在每个日志投递批次之前添加的字符串。每个日志投递批次可能包含多条日志记录。
:rtype: str
"""
return self._BatchPrefix
@BatchPrefix.setter
def BatchPrefix(self, BatchPrefix):
self._BatchPrefix = BatchPrefix
@property
def BatchSuffix(self):
"""在每个日志投递批次后附加的字符串。
:rtype: str
"""
return self._BatchSuffix
@BatchSuffix.setter
def BatchSuffix(self, BatchSuffix):
self._BatchSuffix = BatchSuffix
@property
def RecordPrefix(self):
"""在每条日志记录之前添加的字符串。
:rtype: str
"""
return self._RecordPrefix
@RecordPrefix.setter
def RecordPrefix(self, RecordPrefix):
self._RecordPrefix = RecordPrefix
@property
def RecordSuffix(self):
"""在每条日志记录后附加的字符串。
:rtype: str
"""
return self._RecordSuffix
@RecordSuffix.setter
def RecordSuffix(self, RecordSuffix):
self._RecordSuffix = RecordSuffix
@property
def RecordDelimiter(self):
"""插入日志记录之间作为分隔符的字符串,取值有:
<li>\n:换行符;</li>
<li>\t:制表符;</li>
<li>,:半角逗号。</li>
:rtype: str
"""
return self._RecordDelimiter
@RecordDelimiter.setter
def RecordDelimiter(self, RecordDelimiter):
self._RecordDelimiter = RecordDelimiter
@property
def FieldDelimiter(self):
"""单条日志记录内,插入字段之间作为分隔符的字符串,取值有:
<li>\t:制表符;</li>
<li>,:半角逗号;</li>
<li>;:半角分号。</li>
:rtype: str
"""
return self._FieldDelimiter
@FieldDelimiter.setter
def FieldDelimiter(self, FieldDelimiter):
self._FieldDelimiter = FieldDelimiter
def _deserialize(self, params):
self._FormatType = params.get("FormatType")
self._BatchPrefix = params.get("BatchPrefix")
self._BatchSuffix = params.get("BatchSuffix")
self._RecordPrefix = params.get("RecordPrefix")
self._RecordSuffix = params.get("RecordSuffix")
self._RecordDelimiter = params.get("RecordDelimiter")
self._FieldDelimiter = params.get("FieldDelimiter")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class MaxAge(AbstractModel):
"""浏览器缓存规则配置,用于设置 MaxAge 默认值,默认为关闭状态
"""
def __init__(self):
r"""
:param _FollowOrigin: 是否遵循源站,取值有:
<li>on:遵循源站,忽略MaxAge 时间设置;</li>
<li>off:不遵循源站,使用MaxAge 时间设置。</li>
:type FollowOrigin: str
:param _MaxAgeTime: MaxAge 时间设置,单位秒,最大365天。
注意:时间为0,即不缓存。
:type MaxAgeTime: int
"""
self._FollowOrigin = None
self._MaxAgeTime = None
@property
def FollowOrigin(self):
"""是否遵循源站,取值有:
<li>on:遵循源站,忽略MaxAge 时间设置;</li>
<li>off:不遵循源站,使用MaxAge 时间设置。</li>
:rtype: str
"""
return self._FollowOrigin
@FollowOrigin.setter
def FollowOrigin(self, FollowOrigin):
self._FollowOrigin = FollowOrigin
@property
def MaxAgeTime(self):
"""MaxAge 时间设置,单位秒,最大365天。
注意:时间为0,即不缓存。
:rtype: int
"""
return self._MaxAgeTime
@MaxAgeTime.setter
def MaxAgeTime(self, MaxAgeTime):
self._MaxAgeTime = MaxAgeTime
def _deserialize(self, params):
self._FollowOrigin = params.get("FollowOrigin")
self._MaxAgeTime = params.get("MaxAgeTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class MaxAgeParameters(AbstractModel):
"""浏览器缓存 TTL 配置参数。
"""
def __init__(self):
r"""
:param _FollowOrigin: 遵循源站 Cache-Control 开关,取值有:
<li>on:遵循源站,忽略 CacheTime 时间设置;</li>
<li>off:不遵循源站,使用 CacheTime 时间设置。</li>
:type FollowOrigin: str
:param _CacheTime: 自定义缓存时间数值,单位为秒,取值:0~315360000。<br>注意:当 FollowOrigin 为 off 时,表示不遵循源站,使用 CacheTime 设置缓存时间,否则此字段不生效。
:type CacheTime: int
"""
self._FollowOrigin = None
self._CacheTime = None
@property
def FollowOrigin(self):
"""遵循源站 Cache-Control 开关,取值有:
<li>on:遵循源站,忽略 CacheTime 时间设置;</li>
<li>off:不遵循源站,使用 CacheTime 时间设置。</li>
:rtype: str
"""
return self._FollowOrigin
@FollowOrigin.setter
def FollowOrigin(self, FollowOrigin):
self._FollowOrigin = FollowOrigin
@property
def CacheTime(self):
"""自定义缓存时间数值,单位为秒,取值:0~315360000。<br>注意:当 FollowOrigin 为 off 时,表示不遵循源站,使用 CacheTime 设置缓存时间,否则此字段不生效。
:rtype: int
"""
return self._CacheTime
@CacheTime.setter
def CacheTime(self, CacheTime):
self._CacheTime = CacheTime
def _deserialize(self, params):
self._FollowOrigin = params.get("FollowOrigin")
self._CacheTime = params.get("CacheTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyAccelerationDomainRequest(AbstractModel):
"""ModifyAccelerationDomain请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 加速域名所属站点ID。
:type ZoneId: str
:param _DomainName: 加速域名名称。
:type DomainName: str
:param _OriginInfo: 源站信息。
:type OriginInfo: :class:`tencentcloud.teo.v20220901.models.OriginInfo`
:param _OriginProtocol: 回源协议,取值有:
<li>FOLLOW: 协议跟随;</li>
<li>HTTP: HTTP协议回源;</li>
<li>HTTPS: HTTPS协议回源。</li>
<li>不填保持原有配置。</li>
:type OriginProtocol: str
:param _HttpOriginPort: HTTP回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTP时生效, 不填保持原有配置。
:type HttpOriginPort: int
:param _HttpsOriginPort: HTTPS回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTPS时生效,不填保持原有配置。
:type HttpsOriginPort: int
:param _IPv6Status: IPv6状态,取值有:
<li>follow:遵循站点IPv6配置;</li>
<li>on:开启状态;</li>
<li>off:关闭状态。</li>
<li>不填保持原有配置。</li>
:type IPv6Status: str
"""
self._ZoneId = None
self._DomainName = None
self._OriginInfo = None
self._OriginProtocol = None
self._HttpOriginPort = None
self._HttpsOriginPort = None
self._IPv6Status = None
@property
def ZoneId(self):
"""加速域名所属站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def DomainName(self):
"""加速域名名称。
:rtype: str
"""
return self._DomainName
@DomainName.setter
def DomainName(self, DomainName):
self._DomainName = DomainName
@property
def OriginInfo(self):
"""源站信息。
:rtype: :class:`tencentcloud.teo.v20220901.models.OriginInfo`
"""
return self._OriginInfo
@OriginInfo.setter
def OriginInfo(self, OriginInfo):
self._OriginInfo = OriginInfo
@property
def OriginProtocol(self):
"""回源协议,取值有:
<li>FOLLOW: 协议跟随;</li>
<li>HTTP: HTTP协议回源;</li>
<li>HTTPS: HTTPS协议回源。</li>
<li>不填保持原有配置。</li>
:rtype: str
"""
return self._OriginProtocol
@OriginProtocol.setter
def OriginProtocol(self, OriginProtocol):
self._OriginProtocol = OriginProtocol
@property
def HttpOriginPort(self):
"""HTTP回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTP时生效, 不填保持原有配置。
:rtype: int
"""
return self._HttpOriginPort
@HttpOriginPort.setter
def HttpOriginPort(self, HttpOriginPort):
self._HttpOriginPort = HttpOriginPort
@property
def HttpsOriginPort(self):
"""HTTPS回源端口,取值为1-65535,当OriginProtocol=FOLLOW/HTTPS时生效,不填保持原有配置。
:rtype: int
"""
return self._HttpsOriginPort
@HttpsOriginPort.setter
def HttpsOriginPort(self, HttpsOriginPort):
self._HttpsOriginPort = HttpsOriginPort
@property
def IPv6Status(self):
"""IPv6状态,取值有:
<li>follow:遵循站点IPv6配置;</li>
<li>on:开启状态;</li>
<li>off:关闭状态。</li>
<li>不填保持原有配置。</li>
:rtype: str
"""
return self._IPv6Status
@IPv6Status.setter
def IPv6Status(self, IPv6Status):
self._IPv6Status = IPv6Status
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._DomainName = params.get("DomainName")
if params.get("OriginInfo") is not None:
self._OriginInfo = OriginInfo()
self._OriginInfo._deserialize(params.get("OriginInfo"))
self._OriginProtocol = params.get("OriginProtocol")
self._HttpOriginPort = params.get("HttpOriginPort")
self._HttpsOriginPort = params.get("HttpsOriginPort")
self._IPv6Status = params.get("IPv6Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyAccelerationDomainResponse(AbstractModel):
"""ModifyAccelerationDomain返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyAccelerationDomainStatusesRequest(AbstractModel):
"""ModifyAccelerationDomainStatuses请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 加速域名所属站点ID。
:type ZoneId: str
:param _DomainNames: 要执行状态变更的加速域名列表。
:type DomainNames: list of str
:param _Status: 加速域名状态,取值有:
<li>online:启用;</li>
<li>offline:停用。</li>
:type Status: str
:param _Force: 是否强制停用。当域名存在关联资源(如马甲域名、流量调度功能)时,是否强制停用该域名,取值有:
<li> true:停用该域名及所有关联资源;</li>
<li> false:当该加速域名存在关联资源时,不允许停用。</li>不填写,默认值为:false。
:type Force: bool
"""
self._ZoneId = None
self._DomainNames = None
self._Status = None
self._Force = None
@property
def ZoneId(self):
"""加速域名所属站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def DomainNames(self):
"""要执行状态变更的加速域名列表。
:rtype: list of str
"""
return self._DomainNames
@DomainNames.setter
def DomainNames(self, DomainNames):
self._DomainNames = DomainNames
@property
def Status(self):
"""加速域名状态,取值有:
<li>online:启用;</li>
<li>offline:停用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Force(self):
"""是否强制停用。当域名存在关联资源(如马甲域名、流量调度功能)时,是否强制停用该域名,取值有:
<li> true:停用该域名及所有关联资源;</li>
<li> false:当该加速域名存在关联资源时,不允许停用。</li>不填写,默认值为:false。
:rtype: bool
"""
return self._Force
@Force.setter
def Force(self, Force):
self._Force = Force
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._DomainNames = params.get("DomainNames")
self._Status = params.get("Status")
self._Force = params.get("Force")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyAccelerationDomainStatusesResponse(AbstractModel):
"""ModifyAccelerationDomainStatuses返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyAliasDomainRequest(AbstractModel):
"""ModifyAliasDomain请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _AliasName: 别称域名名称。
:type AliasName: str
:param _TargetName: 目标域名名称。
:type TargetName: str
:param _CertType: 证书配置,取值有:
<li> none:不配置;</li>
<li> hosting:SSL托管证书;</li>
<li> apply:申请免费证书。</li>不填写保持原有配置。
:type CertType: str
:param _CertId: 当 CertType 取值为 hosting 时填入相应证书 ID。
:type CertId: list of str
"""
self._ZoneId = None
self._AliasName = None
self._TargetName = None
self._CertType = None
self._CertId = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def AliasName(self):
"""别称域名名称。
:rtype: str
"""
return self._AliasName
@AliasName.setter
def AliasName(self, AliasName):
self._AliasName = AliasName
@property
def TargetName(self):
"""目标域名名称。
:rtype: str
"""
return self._TargetName
@TargetName.setter
def TargetName(self, TargetName):
self._TargetName = TargetName
@property
def CertType(self):
"""证书配置,取值有:
<li> none:不配置;</li>
<li> hosting:SSL托管证书;</li>
<li> apply:申请免费证书。</li>不填写保持原有配置。
:rtype: str
"""
return self._CertType
@CertType.setter
def CertType(self, CertType):
self._CertType = CertType
@property
def CertId(self):
"""当 CertType 取值为 hosting 时填入相应证书 ID。
:rtype: list of str
"""
return self._CertId
@CertId.setter
def CertId(self, CertId):
self._CertId = CertId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._AliasName = params.get("AliasName")
self._TargetName = params.get("TargetName")
self._CertType = params.get("CertType")
self._CertId = params.get("CertId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyAliasDomainResponse(AbstractModel):
"""ModifyAliasDomain返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyAliasDomainStatusRequest(AbstractModel):
"""ModifyAliasDomainStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Paused: 别称域名状态,取值有:
<li> false:开启别称域名;</li>
<li> true:关闭别称域名。</li>
:type Paused: bool
:param _AliasNames: 待修改状态的别称域名名称。如果为空,则不执行修改状态操作。
:type AliasNames: list of str
"""
self._ZoneId = None
self._Paused = None
self._AliasNames = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Paused(self):
"""别称域名状态,取值有:
<li> false:开启别称域名;</li>
<li> true:关闭别称域名。</li>
:rtype: bool
"""
return self._Paused
@Paused.setter
def Paused(self, Paused):
self._Paused = Paused
@property
def AliasNames(self):
"""待修改状态的别称域名名称。如果为空,则不执行修改状态操作。
:rtype: list of str
"""
return self._AliasNames
@AliasNames.setter
def AliasNames(self, AliasNames):
self._AliasNames = AliasNames
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Paused = params.get("Paused")
self._AliasNames = params.get("AliasNames")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyAliasDomainStatusResponse(AbstractModel):
"""ModifyAliasDomainStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyApplicationProxyRequest(AbstractModel):
"""ModifyApplicationProxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 代理 ID。
:type ProxyId: str
:param _ProxyName: 当 ProxyType=hostname 时,表示域名或子域名;
当 ProxyType=instance 时,表示代理名称。
:type ProxyName: str
:param _SessionPersistTime: 会话保持时间,取值范围:30-3600,单位:秒。
不填写保持原有配置。
:type SessionPersistTime: int
:param _ProxyType: 四层代理模式,取值有:
<li>instance:表示实例模式。</li>不填写使用默认值instance。
:type ProxyType: str
:param _Ipv6: Ipv6 访问配置,不填写保持原有配置。
:type Ipv6: :class:`tencentcloud.teo.v20220901.models.Ipv6`
:param _AccelerateMainland: 中国大陆加速优化配置。 不填写表示保持原有配置。
:type AccelerateMainland: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
self._ZoneId = None
self._ProxyId = None
self._ProxyName = None
self._SessionPersistTime = None
self._ProxyType = None
self._Ipv6 = None
self._AccelerateMainland = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def ProxyName(self):
"""当 ProxyType=hostname 时,表示域名或子域名;
当 ProxyType=instance 时,表示代理名称。
:rtype: str
"""
return self._ProxyName
@ProxyName.setter
def ProxyName(self, ProxyName):
self._ProxyName = ProxyName
@property
def SessionPersistTime(self):
"""会话保持时间,取值范围:30-3600,单位:秒。
不填写保持原有配置。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def ProxyType(self):
"""四层代理模式,取值有:
<li>instance:表示实例模式。</li>不填写使用默认值instance。
:rtype: str
"""
return self._ProxyType
@ProxyType.setter
def ProxyType(self, ProxyType):
self._ProxyType = ProxyType
@property
def Ipv6(self):
"""Ipv6 访问配置,不填写保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Ipv6`
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def AccelerateMainland(self):
"""中国大陆加速优化配置。 不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._ProxyName = params.get("ProxyName")
self._SessionPersistTime = params.get("SessionPersistTime")
self._ProxyType = params.get("ProxyType")
if params.get("Ipv6") is not None:
self._Ipv6 = Ipv6()
self._Ipv6._deserialize(params.get("Ipv6"))
if params.get("AccelerateMainland") is not None:
self._AccelerateMainland = AccelerateMainland()
self._AccelerateMainland._deserialize(params.get("AccelerateMainland"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyApplicationProxyResponse(AbstractModel):
"""ModifyApplicationProxy返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyApplicationProxyRuleRequest(AbstractModel):
"""ModifyApplicationProxyRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ProxyId: 代理ID。
:type ProxyId: str
:param _RuleId: 规则ID。
:type RuleId: str
:param _OriginType: 源站类型,取值有:
<li>custom:手动添加;</li>
<li>origins:源站组。</li>
:type OriginType: str
:param _Port: 端口,支持格式:
<li>80:80端口;</li>
<li>81-90:81至90端口。</li>
:type Port: list of str
:param _Proto: 协议,取值有:
<li>TCP:TCP协议;</li>
<li>UDP:UDP协议。</li>不填保持原有值。
:type Proto: str
:param _OriginValue: 源站信息:
<li>当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;</li>
<li>当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。</li>
不填保持原有值。
:type OriginValue: list of str
:param _ForwardClientIp: 传递客户端IP,取值有:
<li>TOA:TOA(仅Proto=TCP时可选);</li>
<li>PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);</li>
<li>PPV2:Proxy Protocol传递,协议版本V2;</li>
<li>OFF:不传递。</li>不填保持原有值。
:type ForwardClientIp: str
:param _SessionPersist: 是否开启会话保持,取值有:
<li>true:开启;</li>
<li>false:关闭。</li>不填为false。
:type SessionPersist: bool
:param _SessionPersistTime: 会话保持的时间,只有当SessionPersist为true时,该值才会生效。
:type SessionPersistTime: int
:param _OriginPort: 源站端口,支持格式:
<li>单端口:80;</li>
<li>端口段:81-90,81至90端口。</li>
:type OriginPort: str
:param _RuleTag: 规则标签。不填保持原有值。
:type RuleTag: str
"""
self._ZoneId = None
self._ProxyId = None
self._RuleId = None
self._OriginType = None
self._Port = None
self._Proto = None
self._OriginValue = None
self._ForwardClientIp = None
self._SessionPersist = None
self._SessionPersistTime = None
self._OriginPort = None
self._RuleTag = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RuleId(self):
"""规则ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def OriginType(self):
"""源站类型,取值有:
<li>custom:手动添加;</li>
<li>origins:源站组。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def Port(self):
"""端口,支持格式:
<li>80:80端口;</li>
<li>81-90:81至90端口。</li>
:rtype: list of str
"""
return self._Port
@Port.setter
def Port(self, Port):
self._Port = Port
@property
def Proto(self):
"""协议,取值有:
<li>TCP:TCP协议;</li>
<li>UDP:UDP协议。</li>不填保持原有值。
:rtype: str
"""
return self._Proto
@Proto.setter
def Proto(self, Proto):
self._Proto = Proto
@property
def OriginValue(self):
"""源站信息:
<li>当 OriginType 为 custom 时,表示一个或多个源站,如`["8.8.8.8","9.9.9.9"]` 或 `OriginValue=["test.com"]`;</li>
<li>当 OriginType 为 origins 时,要求有且仅有一个元素,表示源站组ID,如`["origin-537f5b41-162a-11ed-abaa-525400c5da15"]`。</li>
不填保持原有值。
:rtype: list of str
"""
return self._OriginValue
@OriginValue.setter
def OriginValue(self, OriginValue):
self._OriginValue = OriginValue
@property
def ForwardClientIp(self):
"""传递客户端IP,取值有:
<li>TOA:TOA(仅Proto=TCP时可选);</li>
<li>PPV1:Proxy Protocol传递,协议版本V1(仅Proto=TCP时可选);</li>
<li>PPV2:Proxy Protocol传递,协议版本V2;</li>
<li>OFF:不传递。</li>不填保持原有值。
:rtype: str
"""
return self._ForwardClientIp
@ForwardClientIp.setter
def ForwardClientIp(self, ForwardClientIp):
self._ForwardClientIp = ForwardClientIp
@property
def SessionPersist(self):
"""是否开启会话保持,取值有:
<li>true:开启;</li>
<li>false:关闭。</li>不填为false。
:rtype: bool
"""
return self._SessionPersist
@SessionPersist.setter
def SessionPersist(self, SessionPersist):
self._SessionPersist = SessionPersist
@property
def SessionPersistTime(self):
"""会话保持的时间,只有当SessionPersist为true时,该值才会生效。
:rtype: int
"""
return self._SessionPersistTime
@SessionPersistTime.setter
def SessionPersistTime(self, SessionPersistTime):
self._SessionPersistTime = SessionPersistTime
@property
def OriginPort(self):
"""源站端口,支持格式:
<li>单端口:80;</li>
<li>端口段:81-90,81至90端口。</li>
:rtype: str
"""
return self._OriginPort
@OriginPort.setter
def OriginPort(self, OriginPort):
self._OriginPort = OriginPort
@property
def RuleTag(self):
"""规则标签。不填保持原有值。
:rtype: str
"""
return self._RuleTag
@RuleTag.setter
def RuleTag(self, RuleTag):
self._RuleTag = RuleTag
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._RuleId = params.get("RuleId")
self._OriginType = params.get("OriginType")
self._Port = params.get("Port")
self._Proto = params.get("Proto")
self._OriginValue = params.get("OriginValue")
self._ForwardClientIp = params.get("ForwardClientIp")
self._SessionPersist = params.get("SessionPersist")
self._SessionPersistTime = params.get("SessionPersistTime")
self._OriginPort = params.get("OriginPort")
self._RuleTag = params.get("RuleTag")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyApplicationProxyRuleResponse(AbstractModel):
"""ModifyApplicationProxyRule返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyApplicationProxyRuleStatusRequest(AbstractModel):
"""ModifyApplicationProxyRuleStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ProxyId: 代理ID。
:type ProxyId: str
:param _RuleId: 规则ID。
:type RuleId: str
:param _Status: 状态,取值有:
<li>offline: 停用;</li>
<li>online: 启用。</li>
:type Status: str
"""
self._ZoneId = None
self._ProxyId = None
self._RuleId = None
self._Status = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RuleId(self):
"""规则ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def Status(self):
"""状态,取值有:
<li>offline: 停用;</li>
<li>online: 启用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._RuleId = params.get("RuleId")
self._Status = params.get("Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyApplicationProxyRuleStatusResponse(AbstractModel):
"""ModifyApplicationProxyRuleStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyApplicationProxyStatusRequest(AbstractModel):
"""ModifyApplicationProxyStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _ProxyId: 代理ID。
:type ProxyId: str
:param _Status: 状态,取值有:
<li>offline: 停用;</li>
<li>online: 启用。</li>
:type Status: str
"""
self._ZoneId = None
self._ProxyId = None
self._Status = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""代理ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def Status(self):
"""状态,取值有:
<li>offline: 停用;</li>
<li>online: 启用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._Status = params.get("Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyApplicationProxyStatusResponse(AbstractModel):
"""ModifyApplicationProxyStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyContentIdentifierRequest(AbstractModel):
"""ModifyContentIdentifier请求参数结构体
"""
def __init__(self):
r"""
:param _ContentId: 内容标识符 ID。
:type ContentId: str
:param _Description: 内容标识符描述,长度限制不超过 20 个字符。
:type Description: str
"""
self._ContentId = None
self._Description = None
@property
def ContentId(self):
"""内容标识符 ID。
:rtype: str
"""
return self._ContentId
@ContentId.setter
def ContentId(self, ContentId):
self._ContentId = ContentId
@property
def Description(self):
"""内容标识符描述,长度限制不超过 20 个字符。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
def _deserialize(self, params):
self._ContentId = params.get("ContentId")
self._Description = params.get("Description")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyContentIdentifierResponse(AbstractModel):
"""ModifyContentIdentifier返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyCustomErrorPageRequest(AbstractModel):
"""ModifyCustomErrorPage请求参数结构体
"""
def __init__(self):
r"""
:param _PageId: 自定义错误页面 ID。
:type PageId: str
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Name: 自定义错误页名称,名称为2 - 60个字符。
:type Name: str
:param _Description: 自定义错误页描述,描述内容不超过60个字符。
:type Description: str
:param _ContentType: 自定义错误页面类型,取值有:<li>text/html。 </li><li>application/json。</li><li>plain/text。</li><li>text/xml。</li>
:type ContentType: str
:param _Content: 自定义错误页面内容。内容不超过 2KB。
:type Content: str
"""
self._PageId = None
self._ZoneId = None
self._Name = None
self._Description = None
self._ContentType = None
self._Content = None
@property
def PageId(self):
"""自定义错误页面 ID。
:rtype: str
"""
return self._PageId
@PageId.setter
def PageId(self, PageId):
self._PageId = PageId
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Name(self):
"""自定义错误页名称,名称为2 - 60个字符。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Description(self):
"""自定义错误页描述,描述内容不超过60个字符。
:rtype: str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def ContentType(self):
"""自定义错误页面类型,取值有:<li>text/html。 </li><li>application/json。</li><li>plain/text。</li><li>text/xml。</li>
:rtype: str
"""
return self._ContentType
@ContentType.setter
def ContentType(self, ContentType):
self._ContentType = ContentType
@property
def Content(self):
"""自定义错误页面内容。内容不超过 2KB。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
def _deserialize(self, params):
self._PageId = params.get("PageId")
self._ZoneId = params.get("ZoneId")
self._Name = params.get("Name")
self._Description = params.get("Description")
self._ContentType = params.get("ContentType")
self._Content = params.get("Content")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyCustomErrorPageResponse(AbstractModel):
"""ModifyCustomErrorPage返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyDnsRecordsRequest(AbstractModel):
"""ModifyDnsRecords请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID 。
:type ZoneId: str
:param _DnsRecords: DNS 记录修改数据列表,一次最多修改100条。
:type DnsRecords: list of DnsRecord
"""
self._ZoneId = None
self._DnsRecords = None
@property
def ZoneId(self):
"""站点 ID 。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def DnsRecords(self):
"""DNS 记录修改数据列表,一次最多修改100条。
:rtype: list of DnsRecord
"""
return self._DnsRecords
@DnsRecords.setter
def DnsRecords(self, DnsRecords):
self._DnsRecords = DnsRecords
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("DnsRecords") is not None:
self._DnsRecords = []
for item in params.get("DnsRecords"):
obj = DnsRecord()
obj._deserialize(item)
self._DnsRecords.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyDnsRecordsResponse(AbstractModel):
"""ModifyDnsRecords返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyDnsRecordsStatusRequest(AbstractModel):
"""ModifyDnsRecordsStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RecordsToEnable: 待启用的 DNS 记录 ID 列表,上限:200。<br>注意:同个 DNS 记录 ID 不能同时存在于 RecordsToEnable 和 RecordsToDisable。
:type RecordsToEnable: list of str
:param _RecordsToDisable: 待停用的 DNS 记录 ID 列表,上限:200。<br>注意:同个 DNS 记录 ID 不能同时存在于 RecordsToEnable 和 RecordsToDisable。
:type RecordsToDisable: list of str
"""
self._ZoneId = None
self._RecordsToEnable = None
self._RecordsToDisable = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RecordsToEnable(self):
"""待启用的 DNS 记录 ID 列表,上限:200。<br>注意:同个 DNS 记录 ID 不能同时存在于 RecordsToEnable 和 RecordsToDisable。
:rtype: list of str
"""
return self._RecordsToEnable
@RecordsToEnable.setter
def RecordsToEnable(self, RecordsToEnable):
self._RecordsToEnable = RecordsToEnable
@property
def RecordsToDisable(self):
"""待停用的 DNS 记录 ID 列表,上限:200。<br>注意:同个 DNS 记录 ID 不能同时存在于 RecordsToEnable 和 RecordsToDisable。
:rtype: list of str
"""
return self._RecordsToDisable
@RecordsToDisable.setter
def RecordsToDisable(self, RecordsToDisable):
self._RecordsToDisable = RecordsToDisable
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RecordsToEnable = params.get("RecordsToEnable")
self._RecordsToDisable = params.get("RecordsToDisable")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyDnsRecordsStatusResponse(AbstractModel):
"""ModifyDnsRecordsStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyFunctionRequest(AbstractModel):
"""ModifyFunction请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _FunctionId: 函数 ID。
:type FunctionId: str
:param _Remark: 函数描述,最大支持 60 个字符,不填写保持原有配置。
:type Remark: str
:param _Content: 函数内容,当前仅支持 JavaScript 代码,最大支持 5MB 大小,不填写保持原有配置。
:type Content: str
"""
self._ZoneId = None
self._FunctionId = None
self._Remark = None
self._Content = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def FunctionId(self):
"""函数 ID。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def Remark(self):
"""函数描述,最大支持 60 个字符,不填写保持原有配置。
:rtype: str
"""
return self._Remark
@Remark.setter
def Remark(self, Remark):
self._Remark = Remark
@property
def Content(self):
"""函数内容,当前仅支持 JavaScript 代码,最大支持 5MB 大小,不填写保持原有配置。
:rtype: str
"""
return self._Content
@Content.setter
def Content(self, Content):
self._Content = Content
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._FunctionId = params.get("FunctionId")
self._Remark = params.get("Remark")
self._Content = params.get("Content")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyFunctionResponse(AbstractModel):
"""ModifyFunction返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyFunctionRulePriorityRequest(AbstractModel):
"""ModifyFunctionRulePriority请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleIds: 规则 ID 列表,必须填入调整优先级后的所有规则 ID,多条规则执行顺序依次从上往下,不填写保持原优先级顺序。
:type RuleIds: list of str
"""
self._ZoneId = None
self._RuleIds = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleIds(self):
"""规则 ID 列表,必须填入调整优先级后的所有规则 ID,多条规则执行顺序依次从上往下,不填写保持原优先级顺序。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleIds = params.get("RuleIds")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyFunctionRulePriorityResponse(AbstractModel):
"""ModifyFunctionRulePriority返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyFunctionRuleRequest(AbstractModel):
"""ModifyFunctionRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleId: 规则 ID。
:type RuleId: str
:param _FunctionRuleConditions: 规则条件列表,相同触发规则的不同条件匹配项之间为或关系,不填写保持原有配置。
:type FunctionRuleConditions: list of FunctionRuleCondition
:param _FunctionId: 函数 ID,命中触发规则条件后执行的函数,不填写保持原有配置。
:type FunctionId: str
:param _Remark: 规则描述,最大支持 60 个字符,不填写保持原有配置。
:type Remark: str
"""
self._ZoneId = None
self._RuleId = None
self._FunctionRuleConditions = None
self._FunctionId = None
self._Remark = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleId(self):
"""规则 ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def FunctionRuleConditions(self):
"""规则条件列表,相同触发规则的不同条件匹配项之间为或关系,不填写保持原有配置。
:rtype: list of FunctionRuleCondition
"""
return self._FunctionRuleConditions
@FunctionRuleConditions.setter
def FunctionRuleConditions(self, FunctionRuleConditions):
self._FunctionRuleConditions = FunctionRuleConditions
@property
def FunctionId(self):
"""函数 ID,命中触发规则条件后执行的函数,不填写保持原有配置。
:rtype: str
"""
return self._FunctionId
@FunctionId.setter
def FunctionId(self, FunctionId):
self._FunctionId = FunctionId
@property
def Remark(self):
"""规则描述,最大支持 60 个字符,不填写保持原有配置。
:rtype: str
"""
return self._Remark
@Remark.setter
def Remark(self, Remark):
self._Remark = Remark
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleId = params.get("RuleId")
if params.get("FunctionRuleConditions") is not None:
self._FunctionRuleConditions = []
for item in params.get("FunctionRuleConditions"):
obj = FunctionRuleCondition()
obj._deserialize(item)
self._FunctionRuleConditions.append(obj)
self._FunctionId = params.get("FunctionId")
self._Remark = params.get("Remark")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyFunctionRuleResponse(AbstractModel):
"""ModifyFunctionRule返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyHostsCertificateRequest(AbstractModel):
"""ModifyHostsCertificate请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Hosts: 需要修改证书配置的加速域名。
:type Hosts: list of str
:param _Mode: 配置服务端证书的模式,取值有:
<li>disable:不配置服务端证书;</li>
<li>eofreecert:配置 EdgeOne 免费服务端证书;</li>
<li>sslcert:配置 SSL 托管服务端证书;</li>
不填写表示服务端证书保持原有配置。
:type Mode: str
:param _ServerCertInfo: SSL 证书配置,本参数仅在 mode 为 sslcert 时生效,传入对应证书的 CertId 即可。您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
:type ServerCertInfo: list of ServerCertInfo
:param _ApplyType: 托管类型,取值有:
<li>none:不托管EO;</li>
<li>apply:托管EO</li>
不填,默认取值为none。
:type ApplyType: str
:param _ClientCertInfo: 在边缘双向认证场景下,该字段为客户端的 CA 证书,部署在 EO 节点内,用于客户端对 EO 节点进行认证。默认关闭,不填写表示保持原有配置。
:type ClientCertInfo: :class:`tencentcloud.teo.v20220901.models.MutualTLS`
"""
self._ZoneId = None
self._Hosts = None
self._Mode = None
self._ServerCertInfo = None
self._ApplyType = None
self._ClientCertInfo = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Hosts(self):
"""需要修改证书配置的加速域名。
:rtype: list of str
"""
return self._Hosts
@Hosts.setter
def Hosts(self, Hosts):
self._Hosts = Hosts
@property
def Mode(self):
"""配置服务端证书的模式,取值有:
<li>disable:不配置服务端证书;</li>
<li>eofreecert:配置 EdgeOne 免费服务端证书;</li>
<li>sslcert:配置 SSL 托管服务端证书;</li>
不填写表示服务端证书保持原有配置。
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def ServerCertInfo(self):
"""SSL 证书配置,本参数仅在 mode 为 sslcert 时生效,传入对应证书的 CertId 即可。您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
:rtype: list of ServerCertInfo
"""
return self._ServerCertInfo
@ServerCertInfo.setter
def ServerCertInfo(self, ServerCertInfo):
self._ServerCertInfo = ServerCertInfo
@property
def ApplyType(self):
warnings.warn("parameter `ApplyType` is deprecated", DeprecationWarning)
"""托管类型,取值有:
<li>none:不托管EO;</li>
<li>apply:托管EO</li>
不填,默认取值为none。
:rtype: str
"""
return self._ApplyType
@ApplyType.setter
def ApplyType(self, ApplyType):
warnings.warn("parameter `ApplyType` is deprecated", DeprecationWarning)
self._ApplyType = ApplyType
@property
def ClientCertInfo(self):
"""在边缘双向认证场景下,该字段为客户端的 CA 证书,部署在 EO 节点内,用于客户端对 EO 节点进行认证。默认关闭,不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.MutualTLS`
"""
return self._ClientCertInfo
@ClientCertInfo.setter
def ClientCertInfo(self, ClientCertInfo):
self._ClientCertInfo = ClientCertInfo
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Hosts = params.get("Hosts")
self._Mode = params.get("Mode")
if params.get("ServerCertInfo") is not None:
self._ServerCertInfo = []
for item in params.get("ServerCertInfo"):
obj = ServerCertInfo()
obj._deserialize(item)
self._ServerCertInfo.append(obj)
self._ApplyType = params.get("ApplyType")
if params.get("ClientCertInfo") is not None:
self._ClientCertInfo = MutualTLS()
self._ClientCertInfo._deserialize(params.get("ClientCertInfo"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyHostsCertificateResponse(AbstractModel):
"""ModifyHostsCertificate返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyL4ProxyRequest(AbstractModel):
"""ModifyL4Proxy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 应用 ID。
:type ProxyId: str
:param _Ipv6: 是否开启 IPv6 访问。 不填该参数时,表示不修改该配置。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Ipv6: str
:param _AccelerateMainland: 是否开启中国大陆网络优化。不填该参数时,表示不修改该配置。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:type AccelerateMainland: str
"""
self._ZoneId = None
self._ProxyId = None
self._Ipv6 = None
self._AccelerateMainland = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""应用 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def Ipv6(self):
"""是否开启 IPv6 访问。 不填该参数时,表示不修改该配置。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def AccelerateMainland(self):
"""是否开启中国大陆网络优化。不填该参数时,表示不修改该配置。该配置仅在部分加速区域和安全防护配置下支持开启,详情请参考 [新建四层代理实例](https://cloud.tencent.com/document/product/1552/90025) 。取值为:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._Ipv6 = params.get("Ipv6")
self._AccelerateMainland = params.get("AccelerateMainland")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyL4ProxyResponse(AbstractModel):
"""ModifyL4Proxy返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyL4ProxyRulesRequest(AbstractModel):
"""ModifyL4ProxyRules请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _L4ProxyRules: 转发规则列表。单次最多支持 200 条转发规则。
注意:L4ProxyRule 在此处使用时,RuleId 为必填字段;Protocol、PortRange、OriginType、OriginValue、OriginPortRange、ClientIPPassThroughMode、SessionPersist、SessionPersistTime、RuleTag 均为选填字段,不填写表示不修改;Status 请勿填写。
:type L4ProxyRules: list of L4ProxyRule
"""
self._ZoneId = None
self._ProxyId = None
self._L4ProxyRules = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def L4ProxyRules(self):
"""转发规则列表。单次最多支持 200 条转发规则。
注意:L4ProxyRule 在此处使用时,RuleId 为必填字段;Protocol、PortRange、OriginType、OriginValue、OriginPortRange、ClientIPPassThroughMode、SessionPersist、SessionPersistTime、RuleTag 均为选填字段,不填写表示不修改;Status 请勿填写。
:rtype: list of L4ProxyRule
"""
return self._L4ProxyRules
@L4ProxyRules.setter
def L4ProxyRules(self, L4ProxyRules):
self._L4ProxyRules = L4ProxyRules
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
if params.get("L4ProxyRules") is not None:
self._L4ProxyRules = []
for item in params.get("L4ProxyRules"):
obj = L4ProxyRule()
obj._deserialize(item)
self._L4ProxyRules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyL4ProxyRulesResponse(AbstractModel):
"""ModifyL4ProxyRules返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyL4ProxyRulesStatusRequest(AbstractModel):
"""ModifyL4ProxyRulesStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _RuleIds: 转发规则 ID 列表。单次最多支持 200 条转发规则。
:type RuleIds: list of str
:param _Status: 转发规则状态,取值有:
<li>online:启用;</li>
<li>offline:停用。</li>
:type Status: str
"""
self._ZoneId = None
self._ProxyId = None
self._RuleIds = None
self._Status = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def RuleIds(self):
"""转发规则 ID 列表。单次最多支持 200 条转发规则。
:rtype: list of str
"""
return self._RuleIds
@RuleIds.setter
def RuleIds(self, RuleIds):
self._RuleIds = RuleIds
@property
def Status(self):
"""转发规则状态,取值有:
<li>online:启用;</li>
<li>offline:停用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._RuleIds = params.get("RuleIds")
self._Status = params.get("Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyL4ProxyRulesStatusResponse(AbstractModel):
"""ModifyL4ProxyRulesStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyL4ProxyStatusRequest(AbstractModel):
"""ModifyL4ProxyStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ProxyId: 四层代理实例 ID。
:type ProxyId: str
:param _Status: 四层代理实例状态,取值有:
<li>online:启用;</li>
<li>offline:停用。</li>
:type Status: str
"""
self._ZoneId = None
self._ProxyId = None
self._Status = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ProxyId(self):
"""四层代理实例 ID。
:rtype: str
"""
return self._ProxyId
@ProxyId.setter
def ProxyId(self, ProxyId):
self._ProxyId = ProxyId
@property
def Status(self):
"""四层代理实例状态,取值有:
<li>online:启用;</li>
<li>offline:停用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ProxyId = params.get("ProxyId")
self._Status = params.get("Status")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyL4ProxyStatusResponse(AbstractModel):
"""ModifyL4ProxyStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyL7AccRuleRequest(AbstractModel):
"""ModifyL7AccRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Rule: 需要修改的规则。您可以先通过 DescribeL7AccRules 接口来获取需要修改的规则的 Ruleid,然后传入修改后的规则内容,原规则内容会被覆盖式更新。
:type Rule: :class:`tencentcloud.teo.v20220901.models.RuleEngineItem`
"""
self._ZoneId = None
self._Rule = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Rule(self):
"""需要修改的规则。您可以先通过 DescribeL7AccRules 接口来获取需要修改的规则的 Ruleid,然后传入修改后的规则内容,原规则内容会被覆盖式更新。
:rtype: :class:`tencentcloud.teo.v20220901.models.RuleEngineItem`
"""
return self._Rule
@Rule.setter
def Rule(self, Rule):
self._Rule = Rule
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("Rule") is not None:
self._Rule = RuleEngineItem()
self._Rule._deserialize(params.get("Rule"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyL7AccRuleResponse(AbstractModel):
"""ModifyL7AccRule返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyL7AccSettingRequest(AbstractModel):
"""ModifyL7AccSetting请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ZoneConfig: 站点加速全局配置,该参数中的配置会对站点下的所有域名生效。您只需直接修改所需的配置,未传入的其他配置将保持原有状态。
:type ZoneConfig: :class:`tencentcloud.teo.v20220901.models.ZoneConfig`
"""
self._ZoneId = None
self._ZoneConfig = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ZoneConfig(self):
"""站点加速全局配置,该参数中的配置会对站点下的所有域名生效。您只需直接修改所需的配置,未传入的其他配置将保持原有状态。
:rtype: :class:`tencentcloud.teo.v20220901.models.ZoneConfig`
"""
return self._ZoneConfig
@ZoneConfig.setter
def ZoneConfig(self, ZoneConfig):
self._ZoneConfig = ZoneConfig
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("ZoneConfig") is not None:
self._ZoneConfig = ZoneConfig()
self._ZoneConfig._deserialize(params.get("ZoneConfig"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyL7AccSettingResponse(AbstractModel):
"""ModifyL7AccSetting返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyLoadBalancerRequest(AbstractModel):
"""ModifyLoadBalancer请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _InstanceId: 负载均衡实例 ID。
:type InstanceId: str
:param _Name: 实例名称,可输入 1-200 个字符,允许字符为 a-z,A-Z,0-9,_,-。不填写表示维持原有配置。
:type Name: str
:param _OriginGroups: 源站组列表及其对应的容灾调度优先级。详情请参考 [快速创建负载均衡实例](https://cloud.tencent.com/document/product/1552/104223) 中的示例场景。不填写表示维持原有配置。
:type OriginGroups: list of OriginGroupInLoadBalancer
:param _HealthChecker: 健康检查策略。详情请参考 [健康检查策略介绍](https://cloud.tencent.com/document/product/1552/104228)。不填写表示维持原有配置。
:type HealthChecker: :class:`tencentcloud.teo.v20220901.models.HealthChecker`
:param _SteeringPolicy: 源站组间的流量调度策略,取值有:
<li>Pritory:按优先级顺序进行故障转移 。</li>不填写表示维持原有配置。
:type SteeringPolicy: str
:param _FailoverPolicy: 实际访问某源站失败时的请求重试策略,详情请参考 [请求重试策略介绍](https://cloud.tencent.com/document/product/1552/104227),取值有:
<li>OtherOriginGroup:单次请求失败后,请求优先重试下一优先级源站组;</li>
<li>OtherRecordInOriginGroup:单次请求失败后,请求优先重试同源站组内的其他源站。</li>不填写表示维持原有配置。
:type FailoverPolicy: str
"""
self._ZoneId = None
self._InstanceId = None
self._Name = None
self._OriginGroups = None
self._HealthChecker = None
self._SteeringPolicy = None
self._FailoverPolicy = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def InstanceId(self):
"""负载均衡实例 ID。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
@property
def Name(self):
"""实例名称,可输入 1-200 个字符,允许字符为 a-z,A-Z,0-9,_,-。不填写表示维持原有配置。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def OriginGroups(self):
"""源站组列表及其对应的容灾调度优先级。详情请参考 [快速创建负载均衡实例](https://cloud.tencent.com/document/product/1552/104223) 中的示例场景。不填写表示维持原有配置。
:rtype: list of OriginGroupInLoadBalancer
"""
return self._OriginGroups
@OriginGroups.setter
def OriginGroups(self, OriginGroups):
self._OriginGroups = OriginGroups
@property
def HealthChecker(self):
"""健康检查策略。详情请参考 [健康检查策略介绍](https://cloud.tencent.com/document/product/1552/104228)。不填写表示维持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.HealthChecker`
"""
return self._HealthChecker
@HealthChecker.setter
def HealthChecker(self, HealthChecker):
self._HealthChecker = HealthChecker
@property
def SteeringPolicy(self):
"""源站组间的流量调度策略,取值有:
<li>Pritory:按优先级顺序进行故障转移 。</li>不填写表示维持原有配置。
:rtype: str
"""
return self._SteeringPolicy
@SteeringPolicy.setter
def SteeringPolicy(self, SteeringPolicy):
self._SteeringPolicy = SteeringPolicy
@property
def FailoverPolicy(self):
"""实际访问某源站失败时的请求重试策略,详情请参考 [请求重试策略介绍](https://cloud.tencent.com/document/product/1552/104227),取值有:
<li>OtherOriginGroup:单次请求失败后,请求优先重试下一优先级源站组;</li>
<li>OtherRecordInOriginGroup:单次请求失败后,请求优先重试同源站组内的其他源站。</li>不填写表示维持原有配置。
:rtype: str
"""
return self._FailoverPolicy
@FailoverPolicy.setter
def FailoverPolicy(self, FailoverPolicy):
self._FailoverPolicy = FailoverPolicy
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._InstanceId = params.get("InstanceId")
self._Name = params.get("Name")
if params.get("OriginGroups") is not None:
self._OriginGroups = []
for item in params.get("OriginGroups"):
obj = OriginGroupInLoadBalancer()
obj._deserialize(item)
self._OriginGroups.append(obj)
if params.get("HealthChecker") is not None:
self._HealthChecker = HealthChecker()
self._HealthChecker._deserialize(params.get("HealthChecker"))
self._SteeringPolicy = params.get("SteeringPolicy")
self._FailoverPolicy = params.get("FailoverPolicy")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyLoadBalancerResponse(AbstractModel):
"""ModifyLoadBalancer返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyOriginGroupRequest(AbstractModel):
"""ModifyOriginGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID
:type ZoneId: str
:param _GroupId: 源站组 ID,此参数必填。
:type GroupId: str
:param _Name: 源站组名称,不填保持原有配置,可输入1 - 200个字符,允许的字符为 a - z, A - Z, 0 - 9, _, - 。
:type Name: str
:param _Type: 源站组类型,取值有:
<li>GENERAL:通用型源站组,仅支持添加 IP/域名 源站,可以被域名服务、规则引擎、四层代理、通用型负载均衡引用;</li>
<li>HTTP: HTTP专用型源站组,支持添加 IP/域名、对象存储源站,无法被四层代理引用。</li>不填保持原有配置。
:type Type: str
:param _Records: 源站记录信息,不填保持原有配置。
:type Records: list of OriginRecord
:param _HostHeader: 回源 Host Header,仅 Type = HTTP 时生效, 不填或者填空表示不配置回源Host,规则引擎修改 Host Header 配置优先级高于源站组的 Host Header。
:type HostHeader: str
"""
self._ZoneId = None
self._GroupId = None
self._Name = None
self._Type = None
self._Records = None
self._HostHeader = None
@property
def ZoneId(self):
"""站点 ID
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def GroupId(self):
"""源站组 ID,此参数必填。
:rtype: str
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def Name(self):
"""源站组名称,不填保持原有配置,可输入1 - 200个字符,允许的字符为 a - z, A - Z, 0 - 9, _, - 。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""源站组类型,取值有:
<li>GENERAL:通用型源站组,仅支持添加 IP/域名 源站,可以被域名服务、规则引擎、四层代理、通用型负载均衡引用;</li>
<li>HTTP: HTTP专用型源站组,支持添加 IP/域名、对象存储源站,无法被四层代理引用。</li>不填保持原有配置。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Records(self):
"""源站记录信息,不填保持原有配置。
:rtype: list of OriginRecord
"""
return self._Records
@Records.setter
def Records(self, Records):
self._Records = Records
@property
def HostHeader(self):
"""回源 Host Header,仅 Type = HTTP 时生效, 不填或者填空表示不配置回源Host,规则引擎修改 Host Header 配置优先级高于源站组的 Host Header。
:rtype: str
"""
return self._HostHeader
@HostHeader.setter
def HostHeader(self, HostHeader):
self._HostHeader = HostHeader
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._GroupId = params.get("GroupId")
self._Name = params.get("Name")
self._Type = params.get("Type")
if params.get("Records") is not None:
self._Records = []
for item in params.get("Records"):
obj = OriginRecord()
obj._deserialize(item)
self._Records.append(obj)
self._HostHeader = params.get("HostHeader")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyOriginGroupResponse(AbstractModel):
"""ModifyOriginGroup返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyOriginParameters(AbstractModel):
"""修改源站配置参数。
"""
def __init__(self):
r"""
:param _OriginType: 源站类型。取值有:
<li>IPDomain:IPV4、IPV6 或域名类型源站;</li>
<li>OriginGroup:源站组类型源站;</li>
<li>LoadBalance:负载均衡,该功能内测中,如需使用,请提工单或联系智能客服;</li>
<li>COS:腾讯云 COS 对象存储源站;</li>
<li>AWSS3:支持 AWS S3 协议的所有对象存储源站。</li>
:type OriginType: str
:param _Origin: 源站地址,根据 OriginType 的取值分为以下情况:
<li>当 OriginType = IPDomain 时,该参数请填写 IPV4、IPV6 地址或域名;</li>
<li>当 OriginType = COS 时,该参数请填写 COS 桶的访问域名;</li>
<li>当 OriginType = AWSS3,该参数请填写 S3 桶的访问域名;</li>
<li>当 OriginType = OriginGroup 时,该参数请填写源站组 ID;</li>
<li>当 OriginType = LoadBalance 时,该参数请填写负载均衡实例 ID,该功能当前仅白名单开放。</li>
:type Origin: str
:param _OriginProtocol: 回源协议配置。当 OriginType 取值为 IPDomain、OriginGroup、LoadBalance 时该参数必填。取值有:
<li>http:使用 HTTP 协议;</li>
<li>https:使用 HTTPS 协议;</li>
<li>follow:协议跟随。</li>
:type OriginProtocol: str
:param _HTTPOriginPort: HTTP 回源端口,取值范围 1~65535。该参数仅当回源协议 OriginProtocol 为 http 或者 follow 时生效。
:type HTTPOriginPort: int
:param _HTTPSOriginPort: HTTPS 回源端口,取值范围 1~65535。该参数仅当回源协议 OriginProtocol 为 https 或者 follow 时生效。
:type HTTPSOriginPort: int
:param _PrivateAccess: 指定是否允许访问私有对象存储源站,该参数仅当源站类型 OriginType = COS 或 AWSS3 时会生效,取值有:
<li>on:使用私有鉴权;</li>
<li>off:不使用私有鉴权。</li>不填写时,默认值为off。
:type PrivateAccess: str
:param _PrivateParameters: 私有鉴权使用参数,该参数仅当 OriginType = AWSS3 且 PrivateAccess = on 时会生效。
注意:此字段可能返回 null,表示取不到有效值。
:type PrivateParameters: :class:`tencentcloud.teo.v20220901.models.OriginPrivateParameters`
"""
self._OriginType = None
self._Origin = None
self._OriginProtocol = None
self._HTTPOriginPort = None
self._HTTPSOriginPort = None
self._PrivateAccess = None
self._PrivateParameters = None
@property
def OriginType(self):
"""源站类型。取值有:
<li>IPDomain:IPV4、IPV6 或域名类型源站;</li>
<li>OriginGroup:源站组类型源站;</li>
<li>LoadBalance:负载均衡,该功能内测中,如需使用,请提工单或联系智能客服;</li>
<li>COS:腾讯云 COS 对象存储源站;</li>
<li>AWSS3:支持 AWS S3 协议的所有对象存储源站。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def Origin(self):
"""源站地址,根据 OriginType 的取值分为以下情况:
<li>当 OriginType = IPDomain 时,该参数请填写 IPV4、IPV6 地址或域名;</li>
<li>当 OriginType = COS 时,该参数请填写 COS 桶的访问域名;</li>
<li>当 OriginType = AWSS3,该参数请填写 S3 桶的访问域名;</li>
<li>当 OriginType = OriginGroup 时,该参数请填写源站组 ID;</li>
<li>当 OriginType = LoadBalance 时,该参数请填写负载均衡实例 ID,该功能当前仅白名单开放。</li>
:rtype: str
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def OriginProtocol(self):
"""回源协议配置。当 OriginType 取值为 IPDomain、OriginGroup、LoadBalance 时该参数必填。取值有:
<li>http:使用 HTTP 协议;</li>
<li>https:使用 HTTPS 协议;</li>
<li>follow:协议跟随。</li>
:rtype: str
"""
return self._OriginProtocol
@OriginProtocol.setter
def OriginProtocol(self, OriginProtocol):
self._OriginProtocol = OriginProtocol
@property
def HTTPOriginPort(self):
"""HTTP 回源端口,取值范围 1~65535。该参数仅当回源协议 OriginProtocol 为 http 或者 follow 时生效。
:rtype: int
"""
return self._HTTPOriginPort
@HTTPOriginPort.setter
def HTTPOriginPort(self, HTTPOriginPort):
self._HTTPOriginPort = HTTPOriginPort
@property
def HTTPSOriginPort(self):
"""HTTPS 回源端口,取值范围 1~65535。该参数仅当回源协议 OriginProtocol 为 https 或者 follow 时生效。
:rtype: int
"""
return self._HTTPSOriginPort
@HTTPSOriginPort.setter
def HTTPSOriginPort(self, HTTPSOriginPort):
self._HTTPSOriginPort = HTTPSOriginPort
@property
def PrivateAccess(self):
"""指定是否允许访问私有对象存储源站,该参数仅当源站类型 OriginType = COS 或 AWSS3 时会生效,取值有:
<li>on:使用私有鉴权;</li>
<li>off:不使用私有鉴权。</li>不填写时,默认值为off。
:rtype: str
"""
return self._PrivateAccess
@PrivateAccess.setter
def PrivateAccess(self, PrivateAccess):
self._PrivateAccess = PrivateAccess
@property
def PrivateParameters(self):
"""私有鉴权使用参数,该参数仅当 OriginType = AWSS3 且 PrivateAccess = on 时会生效。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OriginPrivateParameters`
"""
return self._PrivateParameters
@PrivateParameters.setter
def PrivateParameters(self, PrivateParameters):
self._PrivateParameters = PrivateParameters
def _deserialize(self, params):
self._OriginType = params.get("OriginType")
self._Origin = params.get("Origin")
self._OriginProtocol = params.get("OriginProtocol")
self._HTTPOriginPort = params.get("HTTPOriginPort")
self._HTTPSOriginPort = params.get("HTTPSOriginPort")
self._PrivateAccess = params.get("PrivateAccess")
if params.get("PrivateParameters") is not None:
self._PrivateParameters = OriginPrivateParameters()
self._PrivateParameters._deserialize(params.get("PrivateParameters"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyPlanRequest(AbstractModel):
"""ModifyPlan请求参数结构体
"""
def __init__(self):
r"""
:param _PlanId: 套餐 ID,形如 edgeone-2unuvzjmmn2q。
:type PlanId: str
:param _RenewFlag: 预付费套餐自动续费配置。若开启了自动续费,则会在套餐到期前一天自动续费,仅支持个人版,基础版,标准版套餐。不填写表示保持原有配置。
:type RenewFlag: :class:`tencentcloud.teo.v20220901.models.RenewFlag`
"""
self._PlanId = None
self._RenewFlag = None
@property
def PlanId(self):
"""套餐 ID,形如 edgeone-2unuvzjmmn2q。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def RenewFlag(self):
"""预付费套餐自动续费配置。若开启了自动续费,则会在套餐到期前一天自动续费,仅支持个人版,基础版,标准版套餐。不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.RenewFlag`
"""
return self._RenewFlag
@RenewFlag.setter
def RenewFlag(self, RenewFlag):
self._RenewFlag = RenewFlag
def _deserialize(self, params):
self._PlanId = params.get("PlanId")
if params.get("RenewFlag") is not None:
self._RenewFlag = RenewFlag()
self._RenewFlag._deserialize(params.get("RenewFlag"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyPlanResponse(AbstractModel):
"""ModifyPlan返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyRealtimeLogDeliveryTaskRequest(AbstractModel):
"""ModifyRealtimeLogDeliveryTask请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _TaskId: 实时日志投递任务 ID。
:type TaskId: str
:param _TaskName: 实时日志投递任务的名称,格式为数字、英文、-和_组合,最多 200 个字符。不填保持原有配置。
:type TaskName: str
:param _DeliveryStatus: 实时日志投递任务的状态,取值有:
<li>enabled: 启用;</li>
<li>disabled: 停用。</li>不填保持原有配置。
:type DeliveryStatus: str
:param _EntityList: 实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下:
<li>七层域名:domain.example.com;</li>
<li>四层代理实例:sid-2s69eb5wcms7。</li>不填保持原有配置。
:type EntityList: list of str
:param _Fields: 投递的预设字段列表。不填保持原有配置。
:type Fields: list of str
:param _CustomFields: 投递的自定义字段列表,支持在 HTTP 请求头、响应头、Cookie、请求正文中提取指定内容。不填保持原有配置。自定义字段名称不能重复,且最多不能超过 200 个字段。单个实时日志推送任务最多添加 5 个请求正文类型的自定义字段。目前仅站点加速日志(LogType=domain)支持添加自定义字段。
:type CustomFields: list of CustomField
:param _DeliveryConditions: 日志投递的过滤条件。不填表示投递全量日志。
:type DeliveryConditions: list of DeliveryCondition
:param _Sample: 采样比例,采用千分制,取值范围为1-1000,例如:填写 605 表示采样比例为 60.5%。不填保持原有配置。
:type Sample: int
:param _LogFormat: 日志投递的输出格式。不填保持原有配置。
特别地,当 TaskType 取值为 cls 时,LogFormat.FormatType 的值只能为 json,且 LogFormat 中其他参数将被忽略,建议不传 LogFormat。
:type LogFormat: :class:`tencentcloud.teo.v20220901.models.LogFormat`
:param _CustomEndpoint: 自定义 HTTP 服务的配置信息,不填保持原有配置。
:type CustomEndpoint: :class:`tencentcloud.teo.v20220901.models.CustomEndpoint`
:param _S3: AWS S3 兼容存储桶的配置信息,不填保持原有配置。
:type S3: :class:`tencentcloud.teo.v20220901.models.S3`
"""
self._ZoneId = None
self._TaskId = None
self._TaskName = None
self._DeliveryStatus = None
self._EntityList = None
self._Fields = None
self._CustomFields = None
self._DeliveryConditions = None
self._Sample = None
self._LogFormat = None
self._CustomEndpoint = None
self._S3 = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def TaskId(self):
"""实时日志投递任务 ID。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
@property
def TaskName(self):
"""实时日志投递任务的名称,格式为数字、英文、-和_组合,最多 200 个字符。不填保持原有配置。
:rtype: str
"""
return self._TaskName
@TaskName.setter
def TaskName(self, TaskName):
self._TaskName = TaskName
@property
def DeliveryStatus(self):
"""实时日志投递任务的状态,取值有:
<li>enabled: 启用;</li>
<li>disabled: 停用。</li>不填保持原有配置。
:rtype: str
"""
return self._DeliveryStatus
@DeliveryStatus.setter
def DeliveryStatus(self, DeliveryStatus):
self._DeliveryStatus = DeliveryStatus
@property
def EntityList(self):
"""实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下:
<li>七层域名:domain.example.com;</li>
<li>四层代理实例:sid-2s69eb5wcms7。</li>不填保持原有配置。
:rtype: list of str
"""
return self._EntityList
@EntityList.setter
def EntityList(self, EntityList):
self._EntityList = EntityList
@property
def Fields(self):
"""投递的预设字段列表。不填保持原有配置。
:rtype: list of str
"""
return self._Fields
@Fields.setter
def Fields(self, Fields):
self._Fields = Fields
@property
def CustomFields(self):
"""投递的自定义字段列表,支持在 HTTP 请求头、响应头、Cookie、请求正文中提取指定内容。不填保持原有配置。自定义字段名称不能重复,且最多不能超过 200 个字段。单个实时日志推送任务最多添加 5 个请求正文类型的自定义字段。目前仅站点加速日志(LogType=domain)支持添加自定义字段。
:rtype: list of CustomField
"""
return self._CustomFields
@CustomFields.setter
def CustomFields(self, CustomFields):
self._CustomFields = CustomFields
@property
def DeliveryConditions(self):
"""日志投递的过滤条件。不填表示投递全量日志。
:rtype: list of DeliveryCondition
"""
return self._DeliveryConditions
@DeliveryConditions.setter
def DeliveryConditions(self, DeliveryConditions):
self._DeliveryConditions = DeliveryConditions
@property
def Sample(self):
"""采样比例,采用千分制,取值范围为1-1000,例如:填写 605 表示采样比例为 60.5%。不填保持原有配置。
:rtype: int
"""
return self._Sample
@Sample.setter
def Sample(self, Sample):
self._Sample = Sample
@property
def LogFormat(self):
"""日志投递的输出格式。不填保持原有配置。
特别地,当 TaskType 取值为 cls 时,LogFormat.FormatType 的值只能为 json,且 LogFormat 中其他参数将被忽略,建议不传 LogFormat。
:rtype: :class:`tencentcloud.teo.v20220901.models.LogFormat`
"""
return self._LogFormat
@LogFormat.setter
def LogFormat(self, LogFormat):
self._LogFormat = LogFormat
@property
def CustomEndpoint(self):
"""自定义 HTTP 服务的配置信息,不填保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.CustomEndpoint`
"""
return self._CustomEndpoint
@CustomEndpoint.setter
def CustomEndpoint(self, CustomEndpoint):
self._CustomEndpoint = CustomEndpoint
@property
def S3(self):
"""AWS S3 兼容存储桶的配置信息,不填保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.S3`
"""
return self._S3
@S3.setter
def S3(self, S3):
self._S3 = S3
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._TaskId = params.get("TaskId")
self._TaskName = params.get("TaskName")
self._DeliveryStatus = params.get("DeliveryStatus")
self._EntityList = params.get("EntityList")
self._Fields = params.get("Fields")
if params.get("CustomFields") is not None:
self._CustomFields = []
for item in params.get("CustomFields"):
obj = CustomField()
obj._deserialize(item)
self._CustomFields.append(obj)
if params.get("DeliveryConditions") is not None:
self._DeliveryConditions = []
for item in params.get("DeliveryConditions"):
obj = DeliveryCondition()
obj._deserialize(item)
self._DeliveryConditions.append(obj)
self._Sample = params.get("Sample")
if params.get("LogFormat") is not None:
self._LogFormat = LogFormat()
self._LogFormat._deserialize(params.get("LogFormat"))
if params.get("CustomEndpoint") is not None:
self._CustomEndpoint = CustomEndpoint()
self._CustomEndpoint._deserialize(params.get("CustomEndpoint"))
if params.get("S3") is not None:
self._S3 = S3()
self._S3._deserialize(params.get("S3"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyRealtimeLogDeliveryTaskResponse(AbstractModel):
"""ModifyRealtimeLogDeliveryTask返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyRequestHeaderParameters(AbstractModel):
"""修改 HTTP 回源请求头配置参数。
"""
def __init__(self):
r"""
:param _HeaderActions: HTTP 头部设置规则列表。
注意:此字段可能返回 null,表示取不到有效值。
:type HeaderActions: list of HeaderAction
"""
self._HeaderActions = None
@property
def HeaderActions(self):
"""HTTP 头部设置规则列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of HeaderAction
"""
return self._HeaderActions
@HeaderActions.setter
def HeaderActions(self, HeaderActions):
self._HeaderActions = HeaderActions
def _deserialize(self, params):
if params.get("HeaderActions") is not None:
self._HeaderActions = []
for item in params.get("HeaderActions"):
obj = HeaderAction()
obj._deserialize(item)
self._HeaderActions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyResponseHeaderParameters(AbstractModel):
"""修改 HTTP 节点响应头配置参数。
"""
def __init__(self):
r"""
:param _HeaderActions: HTTP 回源头部规则列表。
注意:此字段可能返回 null,表示取不到有效值。
:type HeaderActions: list of HeaderAction
"""
self._HeaderActions = None
@property
def HeaderActions(self):
"""HTTP 回源头部规则列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of HeaderAction
"""
return self._HeaderActions
@HeaderActions.setter
def HeaderActions(self, HeaderActions):
self._HeaderActions = HeaderActions
def _deserialize(self, params):
if params.get("HeaderActions") is not None:
self._HeaderActions = []
for item in params.get("HeaderActions"):
obj = HeaderAction()
obj._deserialize(item)
self._HeaderActions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyRuleRequest(AbstractModel):
"""ModifyRule请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _RuleName: 规则名称,字符串名称长度 1~255。
:type RuleName: str
:param _Rules: 规则内容。
:type Rules: list of Rule
:param _RuleId: 规则 ID。
:type RuleId: str
:param _Status: 规则状态,取值有:
<li> enable: 启用; </li>
<li> disable: 未启用。</li>
:type Status: str
:param _Tags: 规则标签。
:type Tags: list of str
"""
self._ZoneId = None
self._RuleName = None
self._Rules = None
self._RuleId = None
self._Status = None
self._Tags = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def RuleName(self):
"""规则名称,字符串名称长度 1~255。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Rules(self):
"""规则内容。
:rtype: list of Rule
"""
return self._Rules
@Rules.setter
def Rules(self, Rules):
self._Rules = Rules
@property
def RuleId(self):
"""规则 ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def Status(self):
"""规则状态,取值有:
<li> enable: 启用; </li>
<li> disable: 未启用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Tags(self):
"""规则标签。
:rtype: list of str
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._RuleName = params.get("RuleName")
if params.get("Rules") is not None:
self._Rules = []
for item in params.get("Rules"):
obj = Rule()
obj._deserialize(item)
self._Rules.append(obj)
self._RuleId = params.get("RuleId")
self._Status = params.get("Status")
self._Tags = params.get("Tags")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyRuleResponse(AbstractModel):
"""ModifyRule返回参数结构体
"""
def __init__(self):
r"""
:param _RuleId: 规则 ID。
:type RuleId: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RuleId = None
self._RequestId = None
@property
def RuleId(self):
"""规则 ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
self._RequestId = params.get("RequestId")
class ModifySecurityIPGroupRequest(AbstractModel):
"""ModifySecurityIPGroup请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 Id。
:type ZoneId: str
:param _IPGroup: IP 组配置。
:type IPGroup: :class:`tencentcloud.teo.v20220901.models.IPGroup`
:param _Mode: 操作类型,取值有:
<li> append: 向 IPGroup 中追加 Content 参数中内容;</li>
<li> remove: 从 IPGroup 中删除 Content 参数中内容;</li>
<li> update: 全量替换 IPGroup 内容,并可修改 IPGroup 名称。 </li>
:type Mode: str
"""
self._ZoneId = None
self._IPGroup = None
self._Mode = None
@property
def ZoneId(self):
"""站点 Id。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def IPGroup(self):
"""IP 组配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPGroup`
"""
return self._IPGroup
@IPGroup.setter
def IPGroup(self, IPGroup):
self._IPGroup = IPGroup
@property
def Mode(self):
"""操作类型,取值有:
<li> append: 向 IPGroup 中追加 Content 参数中内容;</li>
<li> remove: 从 IPGroup 中删除 Content 参数中内容;</li>
<li> update: 全量替换 IPGroup 内容,并可修改 IPGroup 名称。 </li>
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("IPGroup") is not None:
self._IPGroup = IPGroup()
self._IPGroup._deserialize(params.get("IPGroup"))
self._Mode = params.get("Mode")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifySecurityIPGroupResponse(AbstractModel):
"""ModifySecurityIPGroup返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifySecurityPolicyRequest(AbstractModel):
"""ModifySecurityPolicy请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点Id。
:type ZoneId: str
:param _SecurityConfig: 安全配置。
:type SecurityConfig: :class:`tencentcloud.teo.v20220901.models.SecurityConfig`
:param _Entity: 子域名/应用名。
注意:当同时指定本参数和 TemplateId 参数时,本参数不生效。请勿同时指定本参数和 TemplateId 参数。
:type Entity: str
:param _TemplateId: 指定模板策略 ID,或指定站点全局策略。
- 如需配置策略模板,请指定策略模板 ID。
- 如需配置站点全局策略,请使用 @ZoneLevel@Domain 参数值
注意:当使用本参数时,Entity 参数不生效。请勿同时使用本参数和 Entity 参数。
:type TemplateId: str
"""
self._ZoneId = None
self._SecurityConfig = None
self._Entity = None
self._TemplateId = None
@property
def ZoneId(self):
"""站点Id。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def SecurityConfig(self):
"""安全配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.SecurityConfig`
"""
return self._SecurityConfig
@SecurityConfig.setter
def SecurityConfig(self, SecurityConfig):
self._SecurityConfig = SecurityConfig
@property
def Entity(self):
"""子域名/应用名。
注意:当同时指定本参数和 TemplateId 参数时,本参数不生效。请勿同时指定本参数和 TemplateId 参数。
:rtype: str
"""
return self._Entity
@Entity.setter
def Entity(self, Entity):
self._Entity = Entity
@property
def TemplateId(self):
"""指定模板策略 ID,或指定站点全局策略。
- 如需配置策略模板,请指定策略模板 ID。
- 如需配置站点全局策略,请使用 @ZoneLevel@Domain 参数值
注意:当使用本参数时,Entity 参数不生效。请勿同时使用本参数和 Entity 参数。
:rtype: str
"""
return self._TemplateId
@TemplateId.setter
def TemplateId(self, TemplateId):
self._TemplateId = TemplateId
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("SecurityConfig") is not None:
self._SecurityConfig = SecurityConfig()
self._SecurityConfig._deserialize(params.get("SecurityConfig"))
self._Entity = params.get("Entity")
self._TemplateId = params.get("TemplateId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifySecurityPolicyResponse(AbstractModel):
"""ModifySecurityPolicy返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyZoneRequest(AbstractModel):
"""ModifyZone请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Type: 站点接入方式,取值有:
<li>full:NS 接入;</li>
<li>partial:CNAME 接入,如果站点当前是无域名接入,仅支持切换到 CNAME 接入;</li>
<li>dnsPodAccess:DNSPod 托管接入,该接入模式要求您的域名已托管在 DNSPod 内。</li>不填写保持原有配置。
:type Type: str
:param _VanityNameServers: 自定义站点信息,以替代系统默认分配的名称服务器。不填写保持原有配置。当站点是无域名接入方式时不允许传此参数。
:type VanityNameServers: :class:`tencentcloud.teo.v20220901.models.VanityNameServers`
:param _AliasZoneName: 同名站点标识。限制输入数字、英文、"." 、"-" 和 "_",长度 200 个字符以内。
:type AliasZoneName: str
:param _Area: 站点接入地域,取值有:
<li> global:全球;</li>
<li> mainland:中国大陆;</li>
<li> overseas:境外区域。</li>当站点是无域名接入方式时,不允许传此参数。
:type Area: str
:param _ZoneName: 站点名称。仅当站点由无域名接入方式切换到CNAME接入方式的场景下有效。
:type ZoneName: str
"""
self._ZoneId = None
self._Type = None
self._VanityNameServers = None
self._AliasZoneName = None
self._Area = None
self._ZoneName = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Type(self):
"""站点接入方式,取值有:
<li>full:NS 接入;</li>
<li>partial:CNAME 接入,如果站点当前是无域名接入,仅支持切换到 CNAME 接入;</li>
<li>dnsPodAccess:DNSPod 托管接入,该接入模式要求您的域名已托管在 DNSPod 内。</li>不填写保持原有配置。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def VanityNameServers(self):
"""自定义站点信息,以替代系统默认分配的名称服务器。不填写保持原有配置。当站点是无域名接入方式时不允许传此参数。
:rtype: :class:`tencentcloud.teo.v20220901.models.VanityNameServers`
"""
return self._VanityNameServers
@VanityNameServers.setter
def VanityNameServers(self, VanityNameServers):
self._VanityNameServers = VanityNameServers
@property
def AliasZoneName(self):
"""同名站点标识。限制输入数字、英文、"." 、"-" 和 "_",长度 200 个字符以内。
:rtype: str
"""
return self._AliasZoneName
@AliasZoneName.setter
def AliasZoneName(self, AliasZoneName):
self._AliasZoneName = AliasZoneName
@property
def Area(self):
"""站点接入地域,取值有:
<li> global:全球;</li>
<li> mainland:中国大陆;</li>
<li> overseas:境外区域。</li>当站点是无域名接入方式时,不允许传此参数。
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def ZoneName(self):
"""站点名称。仅当站点由无域名接入方式切换到CNAME接入方式的场景下有效。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Type = params.get("Type")
if params.get("VanityNameServers") is not None:
self._VanityNameServers = VanityNameServers()
self._VanityNameServers._deserialize(params.get("VanityNameServers"))
self._AliasZoneName = params.get("AliasZoneName")
self._Area = params.get("Area")
self._ZoneName = params.get("ZoneName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyZoneResponse(AbstractModel):
"""ModifyZone返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyZoneSettingRequest(AbstractModel):
"""ModifyZoneSetting请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 待变更的站点 ID。
:type ZoneId: str
:param _CacheConfig: 缓存过期时间配置。
不填写表示保持原有配置。
:type CacheConfig: :class:`tencentcloud.teo.v20220901.models.CacheConfig`
:param _CacheKey: 节点缓存键配置。
不填写表示保持原有配置。
:type CacheKey: :class:`tencentcloud.teo.v20220901.models.CacheKey`
:param _MaxAge: 浏览器缓存配置。
不填写表示保持原有配置。
:type MaxAge: :class:`tencentcloud.teo.v20220901.models.MaxAge`
:param _OfflineCache: 离线缓存配置。
不填写表示保持原有配置。
:type OfflineCache: :class:`tencentcloud.teo.v20220901.models.OfflineCache`
:param _Quic: Quic 访问配置。
不填写表示保持原有配置。
:type Quic: :class:`tencentcloud.teo.v20220901.models.Quic`
:param _PostMaxSize: Post 请求传输配置。
不填写表示保持原有配置。
:type PostMaxSize: :class:`tencentcloud.teo.v20220901.models.PostMaxSize`
:param _Compression: 智能压缩配置。
不填写表示保持原有配置。
:type Compression: :class:`tencentcloud.teo.v20220901.models.Compression`
:param _UpstreamHttp2: Http2 回源配置。
不填写表示保持原有配置。
:type UpstreamHttp2: :class:`tencentcloud.teo.v20220901.models.UpstreamHttp2`
:param _ForceRedirect: 访问协议强制 Https 跳转配置。
不填写表示保持原有配置。
:type ForceRedirect: :class:`tencentcloud.teo.v20220901.models.ForceRedirect`
:param _Https: Https 加速配置。
不填写表示保持原有配置。
:type Https: :class:`tencentcloud.teo.v20220901.models.Https`
:param _Origin: 源站配置。
不填写表示保持原有配置。
:type Origin: :class:`tencentcloud.teo.v20220901.models.Origin`
:param _SmartRouting: 智能加速配置。
不填写表示保持原有配置。
:type SmartRouting: :class:`tencentcloud.teo.v20220901.models.SmartRouting`
:param _WebSocket: WebSocket 配置。
不填写表示保持原有配置。
:type WebSocket: :class:`tencentcloud.teo.v20220901.models.WebSocket`
:param _ClientIpHeader: 客户端 IP 回源请求头配置。
不填写表示保持原有配置。
:type ClientIpHeader: :class:`tencentcloud.teo.v20220901.models.ClientIpHeader`
:param _CachePrefresh: 缓存预刷新配置。
不填写表示保持原有配置。
:type CachePrefresh: :class:`tencentcloud.teo.v20220901.models.CachePrefresh`
:param _Ipv6: Ipv6 访问配置。
不填写表示保持原有配置。
:type Ipv6: :class:`tencentcloud.teo.v20220901.models.Ipv6`
:param _ClientIpCountry: 回源时是否携带客户端 IP 所属地域信息的配置。
不填写表示保持原有配置。
:type ClientIpCountry: :class:`tencentcloud.teo.v20220901.models.ClientIpCountry`
:param _Grpc: Grpc 协议支持配置。
不填写表示保持原有配置。
:type Grpc: :class:`tencentcloud.teo.v20220901.models.Grpc`
:param _ImageOptimize: 图片优化配置。
不填写表示关闭。
:type ImageOptimize: :class:`tencentcloud.teo.v20220901.models.ImageOptimize`
:param _StandardDebug: 标准 Debug 配置。
:type StandardDebug: :class:`tencentcloud.teo.v20220901.models.StandardDebug`
:param _JITVideoProcess: 视频即时处理配置。不填写表示保持原有配置。
:type JITVideoProcess: :class:`tencentcloud.teo.v20220901.models.JITVideoProcess`
"""
self._ZoneId = None
self._CacheConfig = None
self._CacheKey = None
self._MaxAge = None
self._OfflineCache = None
self._Quic = None
self._PostMaxSize = None
self._Compression = None
self._UpstreamHttp2 = None
self._ForceRedirect = None
self._Https = None
self._Origin = None
self._SmartRouting = None
self._WebSocket = None
self._ClientIpHeader = None
self._CachePrefresh = None
self._Ipv6 = None
self._ClientIpCountry = None
self._Grpc = None
self._ImageOptimize = None
self._StandardDebug = None
self._JITVideoProcess = None
@property
def ZoneId(self):
"""待变更的站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def CacheConfig(self):
"""缓存过期时间配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheConfig`
"""
return self._CacheConfig
@CacheConfig.setter
def CacheConfig(self, CacheConfig):
self._CacheConfig = CacheConfig
@property
def CacheKey(self):
"""节点缓存键配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKey`
"""
return self._CacheKey
@CacheKey.setter
def CacheKey(self, CacheKey):
self._CacheKey = CacheKey
@property
def MaxAge(self):
"""浏览器缓存配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.MaxAge`
"""
return self._MaxAge
@MaxAge.setter
def MaxAge(self, MaxAge):
self._MaxAge = MaxAge
@property
def OfflineCache(self):
"""离线缓存配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.OfflineCache`
"""
return self._OfflineCache
@OfflineCache.setter
def OfflineCache(self, OfflineCache):
self._OfflineCache = OfflineCache
@property
def Quic(self):
"""Quic 访问配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Quic`
"""
return self._Quic
@Quic.setter
def Quic(self, Quic):
self._Quic = Quic
@property
def PostMaxSize(self):
"""Post 请求传输配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.PostMaxSize`
"""
return self._PostMaxSize
@PostMaxSize.setter
def PostMaxSize(self, PostMaxSize):
self._PostMaxSize = PostMaxSize
@property
def Compression(self):
"""智能压缩配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Compression`
"""
return self._Compression
@Compression.setter
def Compression(self, Compression):
self._Compression = Compression
@property
def UpstreamHttp2(self):
"""Http2 回源配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamHttp2`
"""
return self._UpstreamHttp2
@UpstreamHttp2.setter
def UpstreamHttp2(self, UpstreamHttp2):
self._UpstreamHttp2 = UpstreamHttp2
@property
def ForceRedirect(self):
"""访问协议强制 Https 跳转配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.ForceRedirect`
"""
return self._ForceRedirect
@ForceRedirect.setter
def ForceRedirect(self, ForceRedirect):
self._ForceRedirect = ForceRedirect
@property
def Https(self):
"""Https 加速配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Https`
"""
return self._Https
@Https.setter
def Https(self, Https):
self._Https = Https
@property
def Origin(self):
"""源站配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Origin`
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def SmartRouting(self):
"""智能加速配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.SmartRouting`
"""
return self._SmartRouting
@SmartRouting.setter
def SmartRouting(self, SmartRouting):
self._SmartRouting = SmartRouting
@property
def WebSocket(self):
"""WebSocket 配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.WebSocket`
"""
return self._WebSocket
@WebSocket.setter
def WebSocket(self, WebSocket):
self._WebSocket = WebSocket
@property
def ClientIpHeader(self):
"""客户端 IP 回源请求头配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIpHeader`
"""
return self._ClientIpHeader
@ClientIpHeader.setter
def ClientIpHeader(self, ClientIpHeader):
self._ClientIpHeader = ClientIpHeader
@property
def CachePrefresh(self):
"""缓存预刷新配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.CachePrefresh`
"""
return self._CachePrefresh
@CachePrefresh.setter
def CachePrefresh(self, CachePrefresh):
self._CachePrefresh = CachePrefresh
@property
def Ipv6(self):
"""Ipv6 访问配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Ipv6`
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def ClientIpCountry(self):
"""回源时是否携带客户端 IP 所属地域信息的配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIpCountry`
"""
return self._ClientIpCountry
@ClientIpCountry.setter
def ClientIpCountry(self, ClientIpCountry):
self._ClientIpCountry = ClientIpCountry
@property
def Grpc(self):
"""Grpc 协议支持配置。
不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.Grpc`
"""
return self._Grpc
@Grpc.setter
def Grpc(self, Grpc):
self._Grpc = Grpc
@property
def ImageOptimize(self):
"""图片优化配置。
不填写表示关闭。
:rtype: :class:`tencentcloud.teo.v20220901.models.ImageOptimize`
"""
return self._ImageOptimize
@ImageOptimize.setter
def ImageOptimize(self, ImageOptimize):
self._ImageOptimize = ImageOptimize
@property
def StandardDebug(self):
"""标准 Debug 配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.StandardDebug`
"""
return self._StandardDebug
@StandardDebug.setter
def StandardDebug(self, StandardDebug):
self._StandardDebug = StandardDebug
@property
def JITVideoProcess(self):
"""视频即时处理配置。不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.JITVideoProcess`
"""
return self._JITVideoProcess
@JITVideoProcess.setter
def JITVideoProcess(self, JITVideoProcess):
self._JITVideoProcess = JITVideoProcess
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("CacheConfig") is not None:
self._CacheConfig = CacheConfig()
self._CacheConfig._deserialize(params.get("CacheConfig"))
if params.get("CacheKey") is not None:
self._CacheKey = CacheKey()
self._CacheKey._deserialize(params.get("CacheKey"))
if params.get("MaxAge") is not None:
self._MaxAge = MaxAge()
self._MaxAge._deserialize(params.get("MaxAge"))
if params.get("OfflineCache") is not None:
self._OfflineCache = OfflineCache()
self._OfflineCache._deserialize(params.get("OfflineCache"))
if params.get("Quic") is not None:
self._Quic = Quic()
self._Quic._deserialize(params.get("Quic"))
if params.get("PostMaxSize") is not None:
self._PostMaxSize = PostMaxSize()
self._PostMaxSize._deserialize(params.get("PostMaxSize"))
if params.get("Compression") is not None:
self._Compression = Compression()
self._Compression._deserialize(params.get("Compression"))
if params.get("UpstreamHttp2") is not None:
self._UpstreamHttp2 = UpstreamHttp2()
self._UpstreamHttp2._deserialize(params.get("UpstreamHttp2"))
if params.get("ForceRedirect") is not None:
self._ForceRedirect = ForceRedirect()
self._ForceRedirect._deserialize(params.get("ForceRedirect"))
if params.get("Https") is not None:
self._Https = Https()
self._Https._deserialize(params.get("Https"))
if params.get("Origin") is not None:
self._Origin = Origin()
self._Origin._deserialize(params.get("Origin"))
if params.get("SmartRouting") is not None:
self._SmartRouting = SmartRouting()
self._SmartRouting._deserialize(params.get("SmartRouting"))
if params.get("WebSocket") is not None:
self._WebSocket = WebSocket()
self._WebSocket._deserialize(params.get("WebSocket"))
if params.get("ClientIpHeader") is not None:
self._ClientIpHeader = ClientIpHeader()
self._ClientIpHeader._deserialize(params.get("ClientIpHeader"))
if params.get("CachePrefresh") is not None:
self._CachePrefresh = CachePrefresh()
self._CachePrefresh._deserialize(params.get("CachePrefresh"))
if params.get("Ipv6") is not None:
self._Ipv6 = Ipv6()
self._Ipv6._deserialize(params.get("Ipv6"))
if params.get("ClientIpCountry") is not None:
self._ClientIpCountry = ClientIpCountry()
self._ClientIpCountry._deserialize(params.get("ClientIpCountry"))
if params.get("Grpc") is not None:
self._Grpc = Grpc()
self._Grpc._deserialize(params.get("Grpc"))
if params.get("ImageOptimize") is not None:
self._ImageOptimize = ImageOptimize()
self._ImageOptimize._deserialize(params.get("ImageOptimize"))
if params.get("StandardDebug") is not None:
self._StandardDebug = StandardDebug()
self._StandardDebug._deserialize(params.get("StandardDebug"))
if params.get("JITVideoProcess") is not None:
self._JITVideoProcess = JITVideoProcess()
self._JITVideoProcess._deserialize(params.get("JITVideoProcess"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyZoneSettingResponse(AbstractModel):
"""ModifyZoneSetting返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class ModifyZoneStatusRequest(AbstractModel):
"""ModifyZoneStatus请求参数结构体
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _Paused: 站点状态,取值有:
<li> false:开启站点;</li>
<li> true:关闭站点。</li>
:type Paused: bool
"""
self._ZoneId = None
self._Paused = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Paused(self):
"""站点状态,取值有:
<li> false:开启站点;</li>
<li> true:关闭站点。</li>
:rtype: bool
"""
return self._Paused
@Paused.setter
def Paused(self, Paused):
self._Paused = Paused
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Paused = params.get("Paused")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ModifyZoneStatusResponse(AbstractModel):
"""ModifyZoneStatus返回参数结构体
"""
def __init__(self):
r"""
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._RequestId = None
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._RequestId = params.get("RequestId")
class MutualTLS(AbstractModel):
"""HTTPS 双向认证。
"""
def __init__(self):
r"""
:param _Switch: 双向认证配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _CertInfos: 双向认证证书列表。
注意:MutualTLS 在 ModifyHostsCertificate 作为入参使用时,该参数传入对应证书的 CertId 即可。您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
:type CertInfos: list of CertificateInfo
"""
self._Switch = None
self._CertInfos = None
@property
def Switch(self):
"""双向认证配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def CertInfos(self):
"""双向认证证书列表。
注意:MutualTLS 在 ModifyHostsCertificate 作为入参使用时,该参数传入对应证书的 CertId 即可。您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
:rtype: list of CertificateInfo
"""
return self._CertInfos
@CertInfos.setter
def CertInfos(self, CertInfos):
self._CertInfos = CertInfos
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("CertInfos") is not None:
self._CertInfos = []
for item in params.get("CertInfos"):
obj = CertificateInfo()
obj._deserialize(item)
self._CertInfos.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class NoCache(AbstractModel):
"""不缓存配置
"""
def __init__(self):
r"""
:param _Switch: 不缓存配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""不缓存配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class NormalAction(AbstractModel):
"""规则引擎常规类型的动作
"""
def __init__(self):
r"""
:param _Action: 功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:type Action: str
:param _Parameters: 参数。
:type Parameters: list of RuleNormalActionParams
"""
self._Action = None
self._Parameters = None
@property
def Action(self):
"""功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Parameters(self):
"""参数。
:rtype: list of RuleNormalActionParams
"""
return self._Parameters
@Parameters.setter
def Parameters(self, Parameters):
self._Parameters = Parameters
def _deserialize(self, params):
self._Action = params.get("Action")
if params.get("Parameters") is not None:
self._Parameters = []
for item in params.get("Parameters"):
obj = RuleNormalActionParams()
obj._deserialize(item)
self._Parameters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class NsVerification(AbstractModel):
"""NS 接入,切换 DNS 服务器所需的信息。
"""
def __init__(self):
r"""
:param _NameServers: NS 接入时,分配给用户的 DNS 服务器地址,需要将域名的 NameServer 切换至该地址。
:type NameServers: list of str
"""
self._NameServers = None
@property
def NameServers(self):
"""NS 接入时,分配给用户的 DNS 服务器地址,需要将域名的 NameServer 切换至该地址。
:rtype: list of str
"""
return self._NameServers
@NameServers.setter
def NameServers(self, NameServers):
self._NameServers = NameServers
def _deserialize(self, params):
self._NameServers = params.get("NameServers")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OCSPStaplingParameters(AbstractModel):
"""OCSP 装订配置参数。
"""
def __init__(self):
r"""
:param _Switch: OCSP 装订配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""OCSP 装订配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OfflineCache(AbstractModel):
"""离线缓存是否开启
"""
def __init__(self):
r"""
:param _Switch: 离线缓存是否开启,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""离线缓存是否开启,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OfflineCacheParameters(AbstractModel):
"""离线缓存是否开启。
"""
def __init__(self):
r"""
:param _Switch: 离线缓存开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""离线缓存开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Origin(AbstractModel):
"""源站配置。
"""
def __init__(self):
r"""
:param _Origins: 主源站列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Origins: list of str
:param _BackupOrigins: 备源站列表。
注意:此字段可能返回 null,表示取不到有效值。
:type BackupOrigins: list of str
:param _OriginPullProtocol: 回源协议配置,取值有:
<li>http:强制 http 回源;</li>
<li>follow:协议跟随回源;</li>
<li>https:强制 https 回源。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type OriginPullProtocol: str
:param _CosPrivateAccess: 源站为腾讯云 COS 时,是否为私有访问 bucket,取值有:
<li>on:私有访问;</li>
<li>off:公共访问。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type CosPrivateAccess: str
"""
self._Origins = None
self._BackupOrigins = None
self._OriginPullProtocol = None
self._CosPrivateAccess = None
@property
def Origins(self):
"""主源站列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._Origins
@Origins.setter
def Origins(self, Origins):
self._Origins = Origins
@property
def BackupOrigins(self):
"""备源站列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._BackupOrigins
@BackupOrigins.setter
def BackupOrigins(self, BackupOrigins):
self._BackupOrigins = BackupOrigins
@property
def OriginPullProtocol(self):
"""回源协议配置,取值有:
<li>http:强制 http 回源;</li>
<li>follow:协议跟随回源;</li>
<li>https:强制 https 回源。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._OriginPullProtocol
@OriginPullProtocol.setter
def OriginPullProtocol(self, OriginPullProtocol):
self._OriginPullProtocol = OriginPullProtocol
@property
def CosPrivateAccess(self):
"""源站为腾讯云 COS 时,是否为私有访问 bucket,取值有:
<li>on:私有访问;</li>
<li>off:公共访问。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._CosPrivateAccess
@CosPrivateAccess.setter
def CosPrivateAccess(self, CosPrivateAccess):
self._CosPrivateAccess = CosPrivateAccess
def _deserialize(self, params):
self._Origins = params.get("Origins")
self._BackupOrigins = params.get("BackupOrigins")
self._OriginPullProtocol = params.get("OriginPullProtocol")
self._CosPrivateAccess = params.get("CosPrivateAccess")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginDetail(AbstractModel):
"""加速域名源站信息。
"""
def __init__(self):
r"""
:param _OriginType: 源站类型,取值有:
<li>IP_DOMAIN:IPV4、IPV6 或域名类型源站;</li>
<li>COS:腾讯云 COS 对象存储源站;</li>
<li>AWS_S3:AWS S3 对象存储源站;</li>
<li>ORIGIN_GROUP:源站组类型源站;</li>
<li>VOD:云点播;</li>
<li>SPACE:源站卸载,当前仅白名单开放;</li>
<li>LB:负载均衡,当前仅白名单开放。</li>
:type OriginType: str
:param _Origin: 源站地址,根据 OriginType 的取值分为以下情况:
<li>当 OriginType = IP_DOMAIN 时,该参数为 IPv4、IPv6 地址或域名;</li>
<li>当 OriginType = COS 时,该参数为 COS 桶的访问域名;</li>
<li>当 OriginType = AWS_S3,该参数为 S3 桶的访问域名;</li>
<li>当 OriginType = ORIGIN_GROUP 时,该参数为源站组 ID;</li>
<li>当 OriginType = VOD 时,该参数请填写云点播应用 ID ;</li>
:type Origin: str
:param _BackupOrigin: 备用源站组 ID,该参数仅在 OriginType = ORIGIN_GROUP 且配置了备源站组时会生效。
:type BackupOrigin: str
:param _OriginGroupName: 主源源站组名称,当 OriginType = ORIGIN_GROUP 时该参数会返回值。
:type OriginGroupName: str
:param _BackOriginGroupName: 备用源站组名称,该参数仅当 OriginType = ORIGIN_GROUP 且配置了备用源站组时会生效。
:type BackOriginGroupName: str
:param _PrivateAccess: 指定是否允许访问私有对象存储源站,该参数仅当源站类型OriginType = COS 或 AWS_S3 时会生效,取值有:
<li>on:使用私有鉴权;</li>
<li>off:不使用私有鉴权。</li>
不填写,默认值为 off。
:type PrivateAccess: str
:param _PrivateParameters: 私有鉴权使用参数,该参数仅当源站类型 PrivateAccess = on 时会生效。
注意:此字段可能返回 null,表示取不到有效值。
:type PrivateParameters: list of PrivateParameter
:param _VodeoSubAppId: MO 子应用 ID
:type VodeoSubAppId: int
:param _VodeoDistributionRange: MO 分发范围,取值有: <li>All:全部</li> <li>Bucket:存储桶</li>
:type VodeoDistributionRange: str
:param _VodeoBucketId: MO 存储桶 ID,分发范围(DistributionRange)为存储桶(Bucket)时必填
:type VodeoBucketId: str
:param _VodOriginScope: 云点播回源范围,当 OriginType = VOD 时该参数会返回值。取值有:<li>all:当前源站对应的云点播应用内所有文件,默认值为 all;</li> <li>bucket:当前源站对应的云点播应用下指定某一个存储桶内的文件。通过参数 VodBucketId 来指定存储桶。
</li>
:type VodOriginScope: str
:param _VodBucketId: 云点播存储桶 ID,该参数当 OriginType = VOD 且 VodOriginScope = bucket 时必填。数据来源:云点播专业版应用下存储桶的存储 ID 。
:type VodBucketId: str
"""
self._OriginType = None
self._Origin = None
self._BackupOrigin = None
self._OriginGroupName = None
self._BackOriginGroupName = None
self._PrivateAccess = None
self._PrivateParameters = None
self._VodeoSubAppId = None
self._VodeoDistributionRange = None
self._VodeoBucketId = None
self._VodOriginScope = None
self._VodBucketId = None
@property
def OriginType(self):
"""源站类型,取值有:
<li>IP_DOMAIN:IPV4、IPV6 或域名类型源站;</li>
<li>COS:腾讯云 COS 对象存储源站;</li>
<li>AWS_S3:AWS S3 对象存储源站;</li>
<li>ORIGIN_GROUP:源站组类型源站;</li>
<li>VOD:云点播;</li>
<li>SPACE:源站卸载,当前仅白名单开放;</li>
<li>LB:负载均衡,当前仅白名单开放。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def Origin(self):
"""源站地址,根据 OriginType 的取值分为以下情况:
<li>当 OriginType = IP_DOMAIN 时,该参数为 IPv4、IPv6 地址或域名;</li>
<li>当 OriginType = COS 时,该参数为 COS 桶的访问域名;</li>
<li>当 OriginType = AWS_S3,该参数为 S3 桶的访问域名;</li>
<li>当 OriginType = ORIGIN_GROUP 时,该参数为源站组 ID;</li>
<li>当 OriginType = VOD 时,该参数请填写云点播应用 ID ;</li>
:rtype: str
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def BackupOrigin(self):
"""备用源站组 ID,该参数仅在 OriginType = ORIGIN_GROUP 且配置了备源站组时会生效。
:rtype: str
"""
return self._BackupOrigin
@BackupOrigin.setter
def BackupOrigin(self, BackupOrigin):
self._BackupOrigin = BackupOrigin
@property
def OriginGroupName(self):
"""主源源站组名称,当 OriginType = ORIGIN_GROUP 时该参数会返回值。
:rtype: str
"""
return self._OriginGroupName
@OriginGroupName.setter
def OriginGroupName(self, OriginGroupName):
self._OriginGroupName = OriginGroupName
@property
def BackOriginGroupName(self):
"""备用源站组名称,该参数仅当 OriginType = ORIGIN_GROUP 且配置了备用源站组时会生效。
:rtype: str
"""
return self._BackOriginGroupName
@BackOriginGroupName.setter
def BackOriginGroupName(self, BackOriginGroupName):
self._BackOriginGroupName = BackOriginGroupName
@property
def PrivateAccess(self):
"""指定是否允许访问私有对象存储源站,该参数仅当源站类型OriginType = COS 或 AWS_S3 时会生效,取值有:
<li>on:使用私有鉴权;</li>
<li>off:不使用私有鉴权。</li>
不填写,默认值为 off。
:rtype: str
"""
return self._PrivateAccess
@PrivateAccess.setter
def PrivateAccess(self, PrivateAccess):
self._PrivateAccess = PrivateAccess
@property
def PrivateParameters(self):
"""私有鉴权使用参数,该参数仅当源站类型 PrivateAccess = on 时会生效。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of PrivateParameter
"""
return self._PrivateParameters
@PrivateParameters.setter
def PrivateParameters(self, PrivateParameters):
self._PrivateParameters = PrivateParameters
@property
def VodeoSubAppId(self):
warnings.warn("parameter `VodeoSubAppId` is deprecated", DeprecationWarning)
"""MO 子应用 ID
:rtype: int
"""
return self._VodeoSubAppId
@VodeoSubAppId.setter
def VodeoSubAppId(self, VodeoSubAppId):
warnings.warn("parameter `VodeoSubAppId` is deprecated", DeprecationWarning)
self._VodeoSubAppId = VodeoSubAppId
@property
def VodeoDistributionRange(self):
warnings.warn("parameter `VodeoDistributionRange` is deprecated", DeprecationWarning)
"""MO 分发范围,取值有: <li>All:全部</li> <li>Bucket:存储桶</li>
:rtype: str
"""
return self._VodeoDistributionRange
@VodeoDistributionRange.setter
def VodeoDistributionRange(self, VodeoDistributionRange):
warnings.warn("parameter `VodeoDistributionRange` is deprecated", DeprecationWarning)
self._VodeoDistributionRange = VodeoDistributionRange
@property
def VodeoBucketId(self):
warnings.warn("parameter `VodeoBucketId` is deprecated", DeprecationWarning)
"""MO 存储桶 ID,分发范围(DistributionRange)为存储桶(Bucket)时必填
:rtype: str
"""
return self._VodeoBucketId
@VodeoBucketId.setter
def VodeoBucketId(self, VodeoBucketId):
warnings.warn("parameter `VodeoBucketId` is deprecated", DeprecationWarning)
self._VodeoBucketId = VodeoBucketId
@property
def VodOriginScope(self):
"""云点播回源范围,当 OriginType = VOD 时该参数会返回值。取值有:<li>all:当前源站对应的云点播应用内所有文件,默认值为 all;</li> <li>bucket:当前源站对应的云点播应用下指定某一个存储桶内的文件。通过参数 VodBucketId 来指定存储桶。
</li>
:rtype: str
"""
return self._VodOriginScope
@VodOriginScope.setter
def VodOriginScope(self, VodOriginScope):
self._VodOriginScope = VodOriginScope
@property
def VodBucketId(self):
"""云点播存储桶 ID,该参数当 OriginType = VOD 且 VodOriginScope = bucket 时必填。数据来源:云点播专业版应用下存储桶的存储 ID 。
:rtype: str
"""
return self._VodBucketId
@VodBucketId.setter
def VodBucketId(self, VodBucketId):
self._VodBucketId = VodBucketId
def _deserialize(self, params):
self._OriginType = params.get("OriginType")
self._Origin = params.get("Origin")
self._BackupOrigin = params.get("BackupOrigin")
self._OriginGroupName = params.get("OriginGroupName")
self._BackOriginGroupName = params.get("BackOriginGroupName")
self._PrivateAccess = params.get("PrivateAccess")
if params.get("PrivateParameters") is not None:
self._PrivateParameters = []
for item in params.get("PrivateParameters"):
obj = PrivateParameter()
obj._deserialize(item)
self._PrivateParameters.append(obj)
self._VodeoSubAppId = params.get("VodeoSubAppId")
self._VodeoDistributionRange = params.get("VodeoDistributionRange")
self._VodeoBucketId = params.get("VodeoBucketId")
self._VodOriginScope = params.get("VodOriginScope")
self._VodBucketId = params.get("VodBucketId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginGroup(AbstractModel):
"""源站组信息
"""
def __init__(self):
r"""
:param _GroupId: 源站组ID。
:type GroupId: str
:param _Name: 源站组名称。
:type Name: str
:param _Type: 源站组类型,取值有:
<li>GENERAL:通用型源站组;</li>
<li>HTTP: HTTP专用型源站组。</li>
:type Type: str
:param _Records: 源站记录信息。
:type Records: list of OriginRecord
:param _References: 源站组被引用实例列表。
:type References: list of OriginGroupReference
:param _CreateTime: 源站组创建时间。
:type CreateTime: str
:param _UpdateTime: 源站组更新时间。
:type UpdateTime: str
:param _HostHeader: 回源Host Header。
注意:此字段可能返回 null,表示取不到有效值。
:type HostHeader: str
"""
self._GroupId = None
self._Name = None
self._Type = None
self._Records = None
self._References = None
self._CreateTime = None
self._UpdateTime = None
self._HostHeader = None
@property
def GroupId(self):
"""源站组ID。
:rtype: str
"""
return self._GroupId
@GroupId.setter
def GroupId(self, GroupId):
self._GroupId = GroupId
@property
def Name(self):
"""源站组名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""源站组类型,取值有:
<li>GENERAL:通用型源站组;</li>
<li>HTTP: HTTP专用型源站组。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Records(self):
"""源站记录信息。
:rtype: list of OriginRecord
"""
return self._Records
@Records.setter
def Records(self, Records):
self._Records = Records
@property
def References(self):
"""源站组被引用实例列表。
:rtype: list of OriginGroupReference
"""
return self._References
@References.setter
def References(self, References):
self._References = References
@property
def CreateTime(self):
"""源站组创建时间。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def UpdateTime(self):
"""源站组更新时间。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def HostHeader(self):
"""回源Host Header。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._HostHeader
@HostHeader.setter
def HostHeader(self, HostHeader):
self._HostHeader = HostHeader
def _deserialize(self, params):
self._GroupId = params.get("GroupId")
self._Name = params.get("Name")
self._Type = params.get("Type")
if params.get("Records") is not None:
self._Records = []
for item in params.get("Records"):
obj = OriginRecord()
obj._deserialize(item)
self._Records.append(obj)
if params.get("References") is not None:
self._References = []
for item in params.get("References"):
obj = OriginGroupReference()
obj._deserialize(item)
self._References.append(obj)
self._CreateTime = params.get("CreateTime")
self._UpdateTime = params.get("UpdateTime")
self._HostHeader = params.get("HostHeader")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginGroupHealthStatus(AbstractModel):
"""源站组健康状态。
"""
def __init__(self):
r"""
:param _OriginGroupID: 源站组 ID。
:type OriginGroupID: str
:param _OriginGroupName: 源站组名。
:type OriginGroupName: str
:param _OriginType: 源站组类型,取值有:
<li>HTTP:HTTP 专用型;</li>
<li>GENERAL:通用型。</li>
:type OriginType: str
:param _Priority: 优先级。
:type Priority: str
:param _OriginHealthStatus: 源站组里各源站的健康状态。
:type OriginHealthStatus: list of OriginHealthStatus
"""
self._OriginGroupID = None
self._OriginGroupName = None
self._OriginType = None
self._Priority = None
self._OriginHealthStatus = None
@property
def OriginGroupID(self):
"""源站组 ID。
:rtype: str
"""
return self._OriginGroupID
@OriginGroupID.setter
def OriginGroupID(self, OriginGroupID):
self._OriginGroupID = OriginGroupID
@property
def OriginGroupName(self):
"""源站组名。
:rtype: str
"""
return self._OriginGroupName
@OriginGroupName.setter
def OriginGroupName(self, OriginGroupName):
self._OriginGroupName = OriginGroupName
@property
def OriginType(self):
"""源站组类型,取值有:
<li>HTTP:HTTP 专用型;</li>
<li>GENERAL:通用型。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def Priority(self):
"""优先级。
:rtype: str
"""
return self._Priority
@Priority.setter
def Priority(self, Priority):
self._Priority = Priority
@property
def OriginHealthStatus(self):
"""源站组里各源站的健康状态。
:rtype: list of OriginHealthStatus
"""
return self._OriginHealthStatus
@OriginHealthStatus.setter
def OriginHealthStatus(self, OriginHealthStatus):
self._OriginHealthStatus = OriginHealthStatus
def _deserialize(self, params):
self._OriginGroupID = params.get("OriginGroupID")
self._OriginGroupName = params.get("OriginGroupName")
self._OriginType = params.get("OriginType")
self._Priority = params.get("Priority")
if params.get("OriginHealthStatus") is not None:
self._OriginHealthStatus = []
for item in params.get("OriginHealthStatus"):
obj = OriginHealthStatus()
obj._deserialize(item)
self._OriginHealthStatus.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginGroupHealthStatusDetail(AbstractModel):
"""源站组健康状态详情。
"""
def __init__(self):
r"""
:param _OriginGroupId: 源站组 ID。
:type OriginGroupId: str
:param _OriginHealthStatus: 根据所有探测区域的结果综合决策出来的源站组下各个源站的健康状态。超过一半的地域判定该源站不健康,则对应状态为不健康,否则为健康。
:type OriginHealthStatus: list of OriginHealthStatus
:param _CheckRegionHealthStatus: 各个健康检查区域下源站的健康状态。
:type CheckRegionHealthStatus: list of CheckRegionHealthStatus
"""
self._OriginGroupId = None
self._OriginHealthStatus = None
self._CheckRegionHealthStatus = None
@property
def OriginGroupId(self):
"""源站组 ID。
:rtype: str
"""
return self._OriginGroupId
@OriginGroupId.setter
def OriginGroupId(self, OriginGroupId):
self._OriginGroupId = OriginGroupId
@property
def OriginHealthStatus(self):
"""根据所有探测区域的结果综合决策出来的源站组下各个源站的健康状态。超过一半的地域判定该源站不健康,则对应状态为不健康,否则为健康。
:rtype: list of OriginHealthStatus
"""
return self._OriginHealthStatus
@OriginHealthStatus.setter
def OriginHealthStatus(self, OriginHealthStatus):
self._OriginHealthStatus = OriginHealthStatus
@property
def CheckRegionHealthStatus(self):
"""各个健康检查区域下源站的健康状态。
:rtype: list of CheckRegionHealthStatus
"""
return self._CheckRegionHealthStatus
@CheckRegionHealthStatus.setter
def CheckRegionHealthStatus(self, CheckRegionHealthStatus):
self._CheckRegionHealthStatus = CheckRegionHealthStatus
def _deserialize(self, params):
self._OriginGroupId = params.get("OriginGroupId")
if params.get("OriginHealthStatus") is not None:
self._OriginHealthStatus = []
for item in params.get("OriginHealthStatus"):
obj = OriginHealthStatus()
obj._deserialize(item)
self._OriginHealthStatus.append(obj)
if params.get("CheckRegionHealthStatus") is not None:
self._CheckRegionHealthStatus = []
for item in params.get("CheckRegionHealthStatus"):
obj = CheckRegionHealthStatus()
obj._deserialize(item)
self._CheckRegionHealthStatus.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginGroupInLoadBalancer(AbstractModel):
"""负载均衡实例中需要绑定的源站组和优先级关系。
"""
def __init__(self):
r"""
:param _Priority: 优先级,填写格式为 "priority_" + "数字",最高优先级为 "priority_1"。参考取值有:
<li>priority_1:第一优先级;</li>
<li>priority_2:第二优先级;</li>
<li>priority_3:第三优先级。</li>其他优先级可以将数字递增,最多可以递增至 "priority_10"。
:type Priority: str
:param _OriginGroupId: 源站组 ID。
:type OriginGroupId: str
"""
self._Priority = None
self._OriginGroupId = None
@property
def Priority(self):
"""优先级,填写格式为 "priority_" + "数字",最高优先级为 "priority_1"。参考取值有:
<li>priority_1:第一优先级;</li>
<li>priority_2:第二优先级;</li>
<li>priority_3:第三优先级。</li>其他优先级可以将数字递增,最多可以递增至 "priority_10"。
:rtype: str
"""
return self._Priority
@Priority.setter
def Priority(self, Priority):
self._Priority = Priority
@property
def OriginGroupId(self):
"""源站组 ID。
:rtype: str
"""
return self._OriginGroupId
@OriginGroupId.setter
def OriginGroupId(self, OriginGroupId):
self._OriginGroupId = OriginGroupId
def _deserialize(self, params):
self._Priority = params.get("Priority")
self._OriginGroupId = params.get("OriginGroupId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginGroupReference(AbstractModel):
"""源站组引用服务。
"""
def __init__(self):
r"""
:param _InstanceType: 引用服务类型,取值有:
<li>AccelerationDomain: 加速域名;</li>
<li>RuleEngine: 规则引擎;</li>
<li>Loadbalance: 负载均衡;</li>
<li>ApplicationProxy: 四层代理。</li>
:type InstanceType: str
:param _InstanceId: 引用类型的实例ID。
:type InstanceId: str
:param _InstanceName: 应用类型的实例名称。
:type InstanceName: str
"""
self._InstanceType = None
self._InstanceId = None
self._InstanceName = None
@property
def InstanceType(self):
"""引用服务类型,取值有:
<li>AccelerationDomain: 加速域名;</li>
<li>RuleEngine: 规则引擎;</li>
<li>Loadbalance: 负载均衡;</li>
<li>ApplicationProxy: 四层代理。</li>
:rtype: str
"""
return self._InstanceType
@InstanceType.setter
def InstanceType(self, InstanceType):
self._InstanceType = InstanceType
@property
def InstanceId(self):
"""引用类型的实例ID。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
@property
def InstanceName(self):
"""应用类型的实例名称。
:rtype: str
"""
return self._InstanceName
@InstanceName.setter
def InstanceName(self, InstanceName):
self._InstanceName = InstanceName
def _deserialize(self, params):
self._InstanceType = params.get("InstanceType")
self._InstanceId = params.get("InstanceId")
self._InstanceName = params.get("InstanceName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginHealthStatus(AbstractModel):
"""源站组里的源站健康状态。
"""
def __init__(self):
r"""
:param _Origin: 源站。
:type Origin: str
:param _Healthy: 源站健康状态,取值有:
<li>Healthy:健康;</li>
<li>Unhealthy:不健康;</li>
<li>Undetected:未探测到数据。</li>
:type Healthy: str
"""
self._Origin = None
self._Healthy = None
@property
def Origin(self):
"""源站。
:rtype: str
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def Healthy(self):
"""源站健康状态,取值有:
<li>Healthy:健康;</li>
<li>Unhealthy:不健康;</li>
<li>Undetected:未探测到数据。</li>
:rtype: str
"""
return self._Healthy
@Healthy.setter
def Healthy(self, Healthy):
self._Healthy = Healthy
def _deserialize(self, params):
self._Origin = params.get("Origin")
self._Healthy = params.get("Healthy")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginInfo(AbstractModel):
"""加速域名源站信息。
"""
def __init__(self):
r"""
:param _OriginType: 源站类型,取值有:
<li>IP_DOMAIN:IPV4、IPV6 或域名类型源站;</li>
<li>COS:腾讯云 COS 对象存储源站;</li>
<li>AWS_S3:AWS S3 对象存储源站;</li>
<li>ORIGIN_GROUP:源站组类型源站;</li>
<li>VOD:云点播;</li>
<li>SPACE:源站卸载,当前仅白名单开放;</li>
<li>LB:负载均衡,当前仅白名单开放。</li>
:type OriginType: str
:param _Origin: 源站地址,根据 OriginType 的取值分为以下情况:
<li>当 OriginType = IP_DOMAIN 时,该参数请填写 IPv4、IPv6 地址或域名;</li>
<li>当 OriginType = COS 时,该参数请填写 COS 桶的访问域名;</li>
<li>当 OriginType = AWS_S3,该参数请填写 S3 桶的访问域名;</li>
<li>当 OriginType = ORIGIN_GROUP 时,该参数请填写源站组 ID;</li>
<li>当 OriginType = VOD 时,该参数请填写云点播应用 ID ;</li>
<li>当 OriginType = LB 时,该参数请填写负载均衡实例 ID,该功能当前仅白名单开放;</li>
<li>当 OriginType = SPACE 时,该参数请填写源站卸载空间 ID,该功能当前仅白名单开放。</li>
:type Origin: str
:param _BackupOrigin: 备用源站组 ID,该参数仅在 OriginType = ORIGIN_GROUP 时生效,该字段为旧版能力,调用后控制台无法进行配置修改,如需使用请提交工单咨询。
:type BackupOrigin: str
:param _PrivateAccess: 指定是否允许访问私有对象存储源站,该参数仅当源站类型 OriginType = COS 或 AWS_S3 时会生效,取值有:
<li>on:使用私有鉴权;</li>
<li>off:不使用私有鉴权。</li>
不填写时,默认值为off。
:type PrivateAccess: str
:param _PrivateParameters: 私有鉴权使用参数,该参数仅当源站类型 PrivateAccess = on 时会生效。
:type PrivateParameters: list of PrivateParameter
:param _VodeoSubAppId: VODEO 子应用 ID。该参数当 OriginType = VODEO 时必填。
:type VodeoSubAppId: int
:param _VodeoDistributionRange: VODEO 分发范围,该参数当 OriginType = VODEO 时必填。取值有:
<li>All:当前应用下所有存储桶;</li>
<li>Bucket:指定的某一个存储桶。</li>
:type VodeoDistributionRange: str
:param _VodeoBucketId: VODEO 存储桶 ID,该参数当 OriginType = VODEO 且 VodeoDistributionRange = Bucket 时必填。
:type VodeoBucketId: str
:param _VodOriginScope: 云点播回源范围,该参数当 OriginType = VOD 时生效。取值有:<li>all:当前源站对应的云点播应用内所有文件,默认值为 all;</li><li>bucket:当前源站对应的云点播应用下指定某一个存储桶内的文件。通过参数 VodBucketId 来指定存储桶。
</li>
:type VodOriginScope: str
:param _VodBucketId: VOD 存储桶 ID,该参数当 OriginType = VOD 且 VodOriginScope = bucket 时必填。数据来源:云点播专业版应用下存储桶的存储 ID 。
:type VodBucketId: str
"""
self._OriginType = None
self._Origin = None
self._BackupOrigin = None
self._PrivateAccess = None
self._PrivateParameters = None
self._VodeoSubAppId = None
self._VodeoDistributionRange = None
self._VodeoBucketId = None
self._VodOriginScope = None
self._VodBucketId = None
@property
def OriginType(self):
"""源站类型,取值有:
<li>IP_DOMAIN:IPV4、IPV6 或域名类型源站;</li>
<li>COS:腾讯云 COS 对象存储源站;</li>
<li>AWS_S3:AWS S3 对象存储源站;</li>
<li>ORIGIN_GROUP:源站组类型源站;</li>
<li>VOD:云点播;</li>
<li>SPACE:源站卸载,当前仅白名单开放;</li>
<li>LB:负载均衡,当前仅白名单开放。</li>
:rtype: str
"""
return self._OriginType
@OriginType.setter
def OriginType(self, OriginType):
self._OriginType = OriginType
@property
def Origin(self):
"""源站地址,根据 OriginType 的取值分为以下情况:
<li>当 OriginType = IP_DOMAIN 时,该参数请填写 IPv4、IPv6 地址或域名;</li>
<li>当 OriginType = COS 时,该参数请填写 COS 桶的访问域名;</li>
<li>当 OriginType = AWS_S3,该参数请填写 S3 桶的访问域名;</li>
<li>当 OriginType = ORIGIN_GROUP 时,该参数请填写源站组 ID;</li>
<li>当 OriginType = VOD 时,该参数请填写云点播应用 ID ;</li>
<li>当 OriginType = LB 时,该参数请填写负载均衡实例 ID,该功能当前仅白名单开放;</li>
<li>当 OriginType = SPACE 时,该参数请填写源站卸载空间 ID,该功能当前仅白名单开放。</li>
:rtype: str
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def BackupOrigin(self):
"""备用源站组 ID,该参数仅在 OriginType = ORIGIN_GROUP 时生效,该字段为旧版能力,调用后控制台无法进行配置修改,如需使用请提交工单咨询。
:rtype: str
"""
return self._BackupOrigin
@BackupOrigin.setter
def BackupOrigin(self, BackupOrigin):
self._BackupOrigin = BackupOrigin
@property
def PrivateAccess(self):
"""指定是否允许访问私有对象存储源站,该参数仅当源站类型 OriginType = COS 或 AWS_S3 时会生效,取值有:
<li>on:使用私有鉴权;</li>
<li>off:不使用私有鉴权。</li>
不填写时,默认值为off。
:rtype: str
"""
return self._PrivateAccess
@PrivateAccess.setter
def PrivateAccess(self, PrivateAccess):
self._PrivateAccess = PrivateAccess
@property
def PrivateParameters(self):
"""私有鉴权使用参数,该参数仅当源站类型 PrivateAccess = on 时会生效。
:rtype: list of PrivateParameter
"""
return self._PrivateParameters
@PrivateParameters.setter
def PrivateParameters(self, PrivateParameters):
self._PrivateParameters = PrivateParameters
@property
def VodeoSubAppId(self):
warnings.warn("parameter `VodeoSubAppId` is deprecated", DeprecationWarning)
"""VODEO 子应用 ID。该参数当 OriginType = VODEO 时必填。
:rtype: int
"""
return self._VodeoSubAppId
@VodeoSubAppId.setter
def VodeoSubAppId(self, VodeoSubAppId):
warnings.warn("parameter `VodeoSubAppId` is deprecated", DeprecationWarning)
self._VodeoSubAppId = VodeoSubAppId
@property
def VodeoDistributionRange(self):
warnings.warn("parameter `VodeoDistributionRange` is deprecated", DeprecationWarning)
"""VODEO 分发范围,该参数当 OriginType = VODEO 时必填。取值有:
<li>All:当前应用下所有存储桶;</li>
<li>Bucket:指定的某一个存储桶。</li>
:rtype: str
"""
return self._VodeoDistributionRange
@VodeoDistributionRange.setter
def VodeoDistributionRange(self, VodeoDistributionRange):
warnings.warn("parameter `VodeoDistributionRange` is deprecated", DeprecationWarning)
self._VodeoDistributionRange = VodeoDistributionRange
@property
def VodeoBucketId(self):
warnings.warn("parameter `VodeoBucketId` is deprecated", DeprecationWarning)
"""VODEO 存储桶 ID,该参数当 OriginType = VODEO 且 VodeoDistributionRange = Bucket 时必填。
:rtype: str
"""
return self._VodeoBucketId
@VodeoBucketId.setter
def VodeoBucketId(self, VodeoBucketId):
warnings.warn("parameter `VodeoBucketId` is deprecated", DeprecationWarning)
self._VodeoBucketId = VodeoBucketId
@property
def VodOriginScope(self):
"""云点播回源范围,该参数当 OriginType = VOD 时生效。取值有:<li>all:当前源站对应的云点播应用内所有文件,默认值为 all;</li><li>bucket:当前源站对应的云点播应用下指定某一个存储桶内的文件。通过参数 VodBucketId 来指定存储桶。
</li>
:rtype: str
"""
return self._VodOriginScope
@VodOriginScope.setter
def VodOriginScope(self, VodOriginScope):
self._VodOriginScope = VodOriginScope
@property
def VodBucketId(self):
"""VOD 存储桶 ID,该参数当 OriginType = VOD 且 VodOriginScope = bucket 时必填。数据来源:云点播专业版应用下存储桶的存储 ID 。
:rtype: str
"""
return self._VodBucketId
@VodBucketId.setter
def VodBucketId(self, VodBucketId):
self._VodBucketId = VodBucketId
def _deserialize(self, params):
self._OriginType = params.get("OriginType")
self._Origin = params.get("Origin")
self._BackupOrigin = params.get("BackupOrigin")
self._PrivateAccess = params.get("PrivateAccess")
if params.get("PrivateParameters") is not None:
self._PrivateParameters = []
for item in params.get("PrivateParameters"):
obj = PrivateParameter()
obj._deserialize(item)
self._PrivateParameters.append(obj)
self._VodeoSubAppId = params.get("VodeoSubAppId")
self._VodeoDistributionRange = params.get("VodeoDistributionRange")
self._VodeoBucketId = params.get("VodeoBucketId")
self._VodOriginScope = params.get("VodOriginScope")
self._VodBucketId = params.get("VodBucketId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginPrivateParameters(AbstractModel):
"""对象存储源站私有鉴权参数。
"""
def __init__(self):
r"""
:param _AccessKeyId: 鉴权参数 Access Key ID。
:type AccessKeyId: str
:param _SecretAccessKey: 鉴权参数 Secret Access Key。
:type SecretAccessKey: str
:param _SignatureVersion: 鉴权版本。取值有:
<li>v2:v2版本;</li>
<li>v4:v4版本。</li>
:type SignatureVersion: str
:param _Region: 存储桶地域。
:type Region: str
"""
self._AccessKeyId = None
self._SecretAccessKey = None
self._SignatureVersion = None
self._Region = None
@property
def AccessKeyId(self):
"""鉴权参数 Access Key ID。
:rtype: str
"""
return self._AccessKeyId
@AccessKeyId.setter
def AccessKeyId(self, AccessKeyId):
self._AccessKeyId = AccessKeyId
@property
def SecretAccessKey(self):
"""鉴权参数 Secret Access Key。
:rtype: str
"""
return self._SecretAccessKey
@SecretAccessKey.setter
def SecretAccessKey(self, SecretAccessKey):
self._SecretAccessKey = SecretAccessKey
@property
def SignatureVersion(self):
"""鉴权版本。取值有:
<li>v2:v2版本;</li>
<li>v4:v4版本。</li>
:rtype: str
"""
return self._SignatureVersion
@SignatureVersion.setter
def SignatureVersion(self, SignatureVersion):
self._SignatureVersion = SignatureVersion
@property
def Region(self):
"""存储桶地域。
:rtype: str
"""
return self._Region
@Region.setter
def Region(self, Region):
self._Region = Region
def _deserialize(self, params):
self._AccessKeyId = params.get("AccessKeyId")
self._SecretAccessKey = params.get("SecretAccessKey")
self._SignatureVersion = params.get("SignatureVersion")
self._Region = params.get("Region")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginProtectionInfo(AbstractModel):
"""源站防护信息
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
:type ZoneId: str
:param _Hosts: 域名列表。
:type Hosts: list of str
:param _ProxyIds: 代理ID列表。
:type ProxyIds: list of str
:param _CurrentIPWhitelist: 当前版本的IP白名单。
注意:此字段可能返回 null,表示取不到有效值。
:type CurrentIPWhitelist: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
:param _NeedUpdate: 该站点是否需要更新源站白名单,取值有:
<li>true :需要更新IP白名单 ;</li>
<li>false :无需更新IP白名单。</li>
:type NeedUpdate: bool
:param _Status: 源站防护状态,取值有:
<li>online :源站防护启用中 ;</li>
<li>offline :源站防护已停用 ;</li>
<li>nonactivate :源站防护未激活,仅在从未使用过源站防护功能的站点调用中返回。</li>
:type Status: str
:param _PlanSupport: 站点套餐是否支持源站防护,取值有:
<li>true :支持 ;</li>
<li>false :不支持。</li>
:type PlanSupport: bool
:param _DiffIPWhitelist: 最新IP白名单与当前IP白名单的对比。
注意:此字段可能返回 null,表示取不到有效值。
:type DiffIPWhitelist: :class:`tencentcloud.teo.v20220901.models.DiffIPWhitelist`
"""
self._ZoneId = None
self._Hosts = None
self._ProxyIds = None
self._CurrentIPWhitelist = None
self._NeedUpdate = None
self._Status = None
self._PlanSupport = None
self._DiffIPWhitelist = None
@property
def ZoneId(self):
"""站点ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def Hosts(self):
"""域名列表。
:rtype: list of str
"""
return self._Hosts
@Hosts.setter
def Hosts(self, Hosts):
self._Hosts = Hosts
@property
def ProxyIds(self):
"""代理ID列表。
:rtype: list of str
"""
return self._ProxyIds
@ProxyIds.setter
def ProxyIds(self, ProxyIds):
self._ProxyIds = ProxyIds
@property
def CurrentIPWhitelist(self):
"""当前版本的IP白名单。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPWhitelist`
"""
return self._CurrentIPWhitelist
@CurrentIPWhitelist.setter
def CurrentIPWhitelist(self, CurrentIPWhitelist):
self._CurrentIPWhitelist = CurrentIPWhitelist
@property
def NeedUpdate(self):
"""该站点是否需要更新源站白名单,取值有:
<li>true :需要更新IP白名单 ;</li>
<li>false :无需更新IP白名单。</li>
:rtype: bool
"""
return self._NeedUpdate
@NeedUpdate.setter
def NeedUpdate(self, NeedUpdate):
self._NeedUpdate = NeedUpdate
@property
def Status(self):
"""源站防护状态,取值有:
<li>online :源站防护启用中 ;</li>
<li>offline :源站防护已停用 ;</li>
<li>nonactivate :源站防护未激活,仅在从未使用过源站防护功能的站点调用中返回。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def PlanSupport(self):
"""站点套餐是否支持源站防护,取值有:
<li>true :支持 ;</li>
<li>false :不支持。</li>
:rtype: bool
"""
return self._PlanSupport
@PlanSupport.setter
def PlanSupport(self, PlanSupport):
self._PlanSupport = PlanSupport
@property
def DiffIPWhitelist(self):
"""最新IP白名单与当前IP白名单的对比。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DiffIPWhitelist`
"""
return self._DiffIPWhitelist
@DiffIPWhitelist.setter
def DiffIPWhitelist(self, DiffIPWhitelist):
self._DiffIPWhitelist = DiffIPWhitelist
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._Hosts = params.get("Hosts")
self._ProxyIds = params.get("ProxyIds")
if params.get("CurrentIPWhitelist") is not None:
self._CurrentIPWhitelist = IPWhitelist()
self._CurrentIPWhitelist._deserialize(params.get("CurrentIPWhitelist"))
self._NeedUpdate = params.get("NeedUpdate")
self._Status = params.get("Status")
self._PlanSupport = params.get("PlanSupport")
if params.get("DiffIPWhitelist") is not None:
self._DiffIPWhitelist = DiffIPWhitelist()
self._DiffIPWhitelist._deserialize(params.get("DiffIPWhitelist"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OriginRecord(AbstractModel):
"""源站组记录
"""
def __init__(self):
r"""
:param _Record: 源站记录值,不包含端口信息,可以为:IPv4,IPv6,域名格式。
:type Record: str
:param _Type: 源站类型,取值有:
<li>IP_DOMAIN:IPV4、IPV6、域名类型源站;</li>
<li>COS:COS源。</li>
<li>AWS_S3:AWS S3对象存储源站。</li>
:type Type: str
:param _RecordId: 源站记录ID。
:type RecordId: str
:param _Weight: 源站权重,取值为0-100, 不填表示不设置权重,由系统自由调度,填0表示权重为0, 流量将不会调度到此源站。
注意:此字段可能返回 null,表示取不到有效值。
:type Weight: int
:param _Private: 是否私有鉴权,当源站类型 RecordType=COS/AWS_S3 时生效,取值有:
<li>true:使用私有鉴权;</li>
<li>false:不使用私有鉴权。</li>不填写,默认值为:false。
:type Private: bool
:param _PrivateParameters: 私有鉴权参数,当源站类型Private=true时有效。
:type PrivateParameters: list of PrivateParameter
"""
self._Record = None
self._Type = None
self._RecordId = None
self._Weight = None
self._Private = None
self._PrivateParameters = None
@property
def Record(self):
"""源站记录值,不包含端口信息,可以为:IPv4,IPv6,域名格式。
:rtype: str
"""
return self._Record
@Record.setter
def Record(self, Record):
self._Record = Record
@property
def Type(self):
"""源站类型,取值有:
<li>IP_DOMAIN:IPV4、IPV6、域名类型源站;</li>
<li>COS:COS源。</li>
<li>AWS_S3:AWS S3对象存储源站。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def RecordId(self):
"""源站记录ID。
:rtype: str
"""
return self._RecordId
@RecordId.setter
def RecordId(self, RecordId):
self._RecordId = RecordId
@property
def Weight(self):
"""源站权重,取值为0-100, 不填表示不设置权重,由系统自由调度,填0表示权重为0, 流量将不会调度到此源站。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._Weight
@Weight.setter
def Weight(self, Weight):
self._Weight = Weight
@property
def Private(self):
"""是否私有鉴权,当源站类型 RecordType=COS/AWS_S3 时生效,取值有:
<li>true:使用私有鉴权;</li>
<li>false:不使用私有鉴权。</li>不填写,默认值为:false。
:rtype: bool
"""
return self._Private
@Private.setter
def Private(self, Private):
self._Private = Private
@property
def PrivateParameters(self):
"""私有鉴权参数,当源站类型Private=true时有效。
:rtype: list of PrivateParameter
"""
return self._PrivateParameters
@PrivateParameters.setter
def PrivateParameters(self, PrivateParameters):
self._PrivateParameters = PrivateParameters
def _deserialize(self, params):
self._Record = params.get("Record")
self._Type = params.get("Type")
self._RecordId = params.get("RecordId")
self._Weight = params.get("Weight")
self._Private = params.get("Private")
if params.get("PrivateParameters") is not None:
self._PrivateParameters = []
for item in params.get("PrivateParameters"):
obj = PrivateParameter()
obj._deserialize(item)
self._PrivateParameters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class OwnershipVerification(AbstractModel):
"""该结构体表示各种场景、模式下,用于验证用户对站点域名的归属权内容。
"""
def __init__(self):
r"""
:param _DnsVerification: CNAME 、无域名接入时,使用 DNS 解析验证时所需的信息。详情参考 [站点/域名归属权验证
](https://cloud.tencent.com/document/product/1552/70789#7af6ecf8-afca-4e35-8811-b5797ed1bde5)。
注意:此字段可能返回 null,表示取不到有效值。
:type DnsVerification: :class:`tencentcloud.teo.v20220901.models.DnsVerification`
:param _FileVerification: CNAME 、无域名接入时,使用文件验证时所需的信息。详情参考 [站点/域名归属权验证
](https://cloud.tencent.com/document/product/1552/70789#7af6ecf8-afca-4e35-8811-b5797ed1bde5)。
注意:此字段可能返回 null,表示取不到有效值。
:type FileVerification: :class:`tencentcloud.teo.v20220901.models.FileVerification`
:param _NsVerification: NS 接入,切换 DNS 服务器所需的信息。详情参考 [修改 DNS 服务器](https://cloud.tencent.com/document/product/1552/90452)。
注意:此字段可能返回 null,表示取不到有效值。
:type NsVerification: :class:`tencentcloud.teo.v20220901.models.NsVerification`
"""
self._DnsVerification = None
self._FileVerification = None
self._NsVerification = None
@property
def DnsVerification(self):
"""CNAME 、无域名接入时,使用 DNS 解析验证时所需的信息。详情参考 [站点/域名归属权验证
](https://cloud.tencent.com/document/product/1552/70789#7af6ecf8-afca-4e35-8811-b5797ed1bde5)。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DnsVerification`
"""
return self._DnsVerification
@DnsVerification.setter
def DnsVerification(self, DnsVerification):
self._DnsVerification = DnsVerification
@property
def FileVerification(self):
"""CNAME 、无域名接入时,使用文件验证时所需的信息。详情参考 [站点/域名归属权验证
](https://cloud.tencent.com/document/product/1552/70789#7af6ecf8-afca-4e35-8811-b5797ed1bde5)。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.FileVerification`
"""
return self._FileVerification
@FileVerification.setter
def FileVerification(self, FileVerification):
self._FileVerification = FileVerification
@property
def NsVerification(self):
"""NS 接入,切换 DNS 服务器所需的信息。详情参考 [修改 DNS 服务器](https://cloud.tencent.com/document/product/1552/90452)。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.NsVerification`
"""
return self._NsVerification
@NsVerification.setter
def NsVerification(self, NsVerification):
self._NsVerification = NsVerification
def _deserialize(self, params):
if params.get("DnsVerification") is not None:
self._DnsVerification = DnsVerification()
self._DnsVerification._deserialize(params.get("DnsVerification"))
if params.get("FileVerification") is not None:
self._FileVerification = FileVerification()
self._FileVerification._deserialize(params.get("FileVerification"))
if params.get("NsVerification") is not None:
self._NsVerification = NsVerification()
self._NsVerification._deserialize(params.get("NsVerification"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class PartialModule(AbstractModel):
"""例外规则的详细模块配置。
"""
def __init__(self):
r"""
:param _Module: 模块名称,取值为:
<li>waf:托管规则。</li>
:type Module: str
:param _Include: 模块下的需要例外的具体规则ID列表。
注意:此字段可能返回 null,表示取不到有效值。
:type Include: list of int
"""
self._Module = None
self._Include = None
@property
def Module(self):
"""模块名称,取值为:
<li>waf:托管规则。</li>
:rtype: str
"""
return self._Module
@Module.setter
def Module(self, Module):
self._Module = Module
@property
def Include(self):
"""模块下的需要例外的具体规则ID列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of int
"""
return self._Include
@Include.setter
def Include(self, Include):
self._Include = Include
def _deserialize(self, params):
self._Module = params.get("Module")
self._Include = params.get("Include")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class PlanInfo(AbstractModel):
"""edgeone套餐信息
"""
def __init__(self):
r"""
:param _Currency: 结算货币类型,取值有:
<li> CNY :人民币结算; </li>
<li> USD :美元结算。</li>
:type Currency: str
:param _Flux: 套餐所含流量,该流量数值为安全加速流量,内容加速流量和智能加速流量的总和(单位:字节)。
:type Flux: int
:param _Frequency: 结算周期,取值有:
<li> y :按年结算; </li>
<li> m :按月结算;</li>
<li> h :按小时结算; </li>
<li> M :按分钟结算;</li>
<li> s :按秒结算。 </li>
:type Frequency: str
:param _PlanType: 套餐类型,取值有:
<li> sta :全球内容分发网络(不包括中国大陆)标准版套餐; </li>
<li> sta_with_bot :全球内容分发网络(不包括中国大陆)标准版套餐附带bot管理;</li>
<li> sta_cm :中国大陆内容分发网络标准版套餐; </li>
<li> sta_cm_with_bot :中国大陆内容分发网络标准版套餐附带bot管理;</li>
<li> sta_global :全球内容分发网络(包括中国大陆)标准版套餐; </li>
<li> sta_global_with_bot :全球内容分发网络(包括中国大陆)标准版套餐附带bot管理;</li>
<li> ent :全球内容分发网络(不包括中国大陆)企业版套餐; </li>
<li> ent_with_bot : 全球内容分发网络(不包括中国大陆)企业版套餐附带bot管理;</li>
<li> ent_cm :中国大陆内容分发网络企业版套餐; </li>
<li> ent_cm_with_bot :中国大陆内容分发网络企业版套餐附带bot管理;</li>
<li> ent_global :全球内容分发网络(包括中国大陆)企业版套餐; </li>
<li> ent_global_with_bot :全球内容分发网络(包括中国大陆)企业版套餐附带bot管理。</li>
:type PlanType: str
:param _Price: 套餐价格(单位:分)。
:type Price: float
:param _Request: 套餐所含请求次数,该请求次数为安全加速请求次数。(单位:次)。
:type Request: int
:param _SiteNumber: 套餐所能绑定的站点个数。
:type SiteNumber: int
:param _Area: 套餐加速区域类型,取值有:
<li> mainland :中国大陆; </li>
<li> overseas :全球(不包括中国大陆);</li>
<li> global :全球(包括中国大陆)。 </li>
:type Area: str
"""
self._Currency = None
self._Flux = None
self._Frequency = None
self._PlanType = None
self._Price = None
self._Request = None
self._SiteNumber = None
self._Area = None
@property
def Currency(self):
"""结算货币类型,取值有:
<li> CNY :人民币结算; </li>
<li> USD :美元结算。</li>
:rtype: str
"""
return self._Currency
@Currency.setter
def Currency(self, Currency):
self._Currency = Currency
@property
def Flux(self):
"""套餐所含流量,该流量数值为安全加速流量,内容加速流量和智能加速流量的总和(单位:字节)。
:rtype: int
"""
return self._Flux
@Flux.setter
def Flux(self, Flux):
self._Flux = Flux
@property
def Frequency(self):
"""结算周期,取值有:
<li> y :按年结算; </li>
<li> m :按月结算;</li>
<li> h :按小时结算; </li>
<li> M :按分钟结算;</li>
<li> s :按秒结算。 </li>
:rtype: str
"""
return self._Frequency
@Frequency.setter
def Frequency(self, Frequency):
self._Frequency = Frequency
@property
def PlanType(self):
"""套餐类型,取值有:
<li> sta :全球内容分发网络(不包括中国大陆)标准版套餐; </li>
<li> sta_with_bot :全球内容分发网络(不包括中国大陆)标准版套餐附带bot管理;</li>
<li> sta_cm :中国大陆内容分发网络标准版套餐; </li>
<li> sta_cm_with_bot :中国大陆内容分发网络标准版套餐附带bot管理;</li>
<li> sta_global :全球内容分发网络(包括中国大陆)标准版套餐; </li>
<li> sta_global_with_bot :全球内容分发网络(包括中国大陆)标准版套餐附带bot管理;</li>
<li> ent :全球内容分发网络(不包括中国大陆)企业版套餐; </li>
<li> ent_with_bot : 全球内容分发网络(不包括中国大陆)企业版套餐附带bot管理;</li>
<li> ent_cm :中国大陆内容分发网络企业版套餐; </li>
<li> ent_cm_with_bot :中国大陆内容分发网络企业版套餐附带bot管理;</li>
<li> ent_global :全球内容分发网络(包括中国大陆)企业版套餐; </li>
<li> ent_global_with_bot :全球内容分发网络(包括中国大陆)企业版套餐附带bot管理。</li>
:rtype: str
"""
return self._PlanType
@PlanType.setter
def PlanType(self, PlanType):
self._PlanType = PlanType
@property
def Price(self):
"""套餐价格(单位:分)。
:rtype: float
"""
return self._Price
@Price.setter
def Price(self, Price):
self._Price = Price
@property
def Request(self):
"""套餐所含请求次数,该请求次数为安全加速请求次数。(单位:次)。
:rtype: int
"""
return self._Request
@Request.setter
def Request(self, Request):
self._Request = Request
@property
def SiteNumber(self):
"""套餐所能绑定的站点个数。
:rtype: int
"""
return self._SiteNumber
@SiteNumber.setter
def SiteNumber(self, SiteNumber):
self._SiteNumber = SiteNumber
@property
def Area(self):
"""套餐加速区域类型,取值有:
<li> mainland :中国大陆; </li>
<li> overseas :全球(不包括中国大陆);</li>
<li> global :全球(包括中国大陆)。 </li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
def _deserialize(self, params):
self._Currency = params.get("Currency")
self._Flux = params.get("Flux")
self._Frequency = params.get("Frequency")
self._PlanType = params.get("PlanType")
self._Price = params.get("Price")
self._Request = params.get("Request")
self._SiteNumber = params.get("SiteNumber")
self._Area = params.get("Area")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class PostMaxSize(AbstractModel):
"""POST请求上传文件流式传输最大限制
"""
def __init__(self):
r"""
:param _Switch: 是否开启 POST 请求上传文件限制,平台默认为限制为32MB,取值有:
<li>on:开启限制;</li>
<li>off:关闭限制。</li>
:type Switch: str
:param _MaxSize: 最大限制,取值在1MB和500MB之间。单位字节。
注意:此字段可能返回 null,表示取不到有效值。
:type MaxSize: int
"""
self._Switch = None
self._MaxSize = None
@property
def Switch(self):
"""是否开启 POST 请求上传文件限制,平台默认为限制为32MB,取值有:
<li>on:开启限制;</li>
<li>off:关闭限制。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def MaxSize(self):
"""最大限制,取值在1MB和500MB之间。单位字节。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._MaxSize
@MaxSize.setter
def MaxSize(self, MaxSize):
self._MaxSize = MaxSize
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._MaxSize = params.get("MaxSize")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class PostMaxSizeParameters(AbstractModel):
"""POST 请求上传文件流式传输最大限制。
"""
def __init__(self):
r"""
:param _Switch: 是否开启 POST 请求上传文件限制,单位为 Byte,平台默认为限制为 32 * 2<sup>20</sup> Byte,取值有:<li>on:开启限制;</li><li>off:关闭限制。</li>
:type Switch: str
:param _MaxSize: POST 请求上传文件流式传输最大限制,单位为 Byte,取值:1 * 2<sup>20</sup> Byte~500 * 2<sup>20</sup> Byte。
:type MaxSize: int
"""
self._Switch = None
self._MaxSize = None
@property
def Switch(self):
"""是否开启 POST 请求上传文件限制,单位为 Byte,平台默认为限制为 32 * 2<sup>20</sup> Byte,取值有:<li>on:开启限制;</li><li>off:关闭限制。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def MaxSize(self):
"""POST 请求上传文件流式传输最大限制,单位为 Byte,取值:1 * 2<sup>20</sup> Byte~500 * 2<sup>20</sup> Byte。
:rtype: int
"""
return self._MaxSize
@MaxSize.setter
def MaxSize(self, MaxSize):
self._MaxSize = MaxSize
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._MaxSize = params.get("MaxSize")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class PrepaidPlanParam(AbstractModel):
"""预付费套餐计费参数
"""
def __init__(self):
r"""
:param _Period: 订阅预付费套餐的周期,单位:月,取值有:1,2,3,4,5,6,7,8,9,10,11,12,24,36。
不填写使用默认值 1。
:type Period: int
:param _RenewFlag: 预付费套餐的自动续费标志,取值有:
<li> on:开启自动续费;</li>
<li> off:不开启自动续费。</li>
不填写使用默认值 off,自动续费时,默认续费1个月。
:type RenewFlag: str
"""
self._Period = None
self._RenewFlag = None
@property
def Period(self):
"""订阅预付费套餐的周期,单位:月,取值有:1,2,3,4,5,6,7,8,9,10,11,12,24,36。
不填写使用默认值 1。
:rtype: int
"""
return self._Period
@Period.setter
def Period(self, Period):
self._Period = Period
@property
def RenewFlag(self):
"""预付费套餐的自动续费标志,取值有:
<li> on:开启自动续费;</li>
<li> off:不开启自动续费。</li>
不填写使用默认值 off,自动续费时,默认续费1个月。
:rtype: str
"""
return self._RenewFlag
@RenewFlag.setter
def RenewFlag(self, RenewFlag):
self._RenewFlag = RenewFlag
def _deserialize(self, params):
self._Period = params.get("Period")
self._RenewFlag = params.get("RenewFlag")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class PrivateParameter(AbstractModel):
"""对象存储源站私有鉴权参数
"""
def __init__(self):
r"""
:param _Name: 私有鉴权参数名称,取值有:
<li>AccessKeyId:鉴权参数 Access Key ID;</li>
<li>SecretAccessKey:鉴权参数 Secret Access Key;</li>
<li>SignatureVersion:鉴权版本,v2 或者 v4;</li>
<li>Region:存储桶地域。</li>
:type Name: str
:param _Value: 私有鉴权参数值。
:type Value: str
"""
self._Name = None
self._Value = None
@property
def Name(self):
"""私有鉴权参数名称,取值有:
<li>AccessKeyId:鉴权参数 Access Key ID;</li>
<li>SecretAccessKey:鉴权参数 Secret Access Key;</li>
<li>SignatureVersion:鉴权版本,v2 或者 v4;</li>
<li>Region:存储桶地域。</li>
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Value(self):
"""私有鉴权参数值。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Name = params.get("Name")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class QUICParameters(AbstractModel):
"""QUIC 配置项。
"""
def __init__(self):
r"""
:param _Switch: QUIC 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""QUIC 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class QueryCondition(AbstractModel):
"""查询条件
"""
def __init__(self):
r"""
:param _Key: 筛选条件的key。
:type Key: str
:param _Operator: 查询条件操作符,操作类型有:
<li>equals: 等于;</li>
<li>notEquals: 不等于;</li>
<li>include: 包含;</li>
<li>notInclude: 不包含; </li>
<li>startWith: 开始的值是value;</li>
<li>notStartWith: 不以value的值开始;</li>
<li>endWith: 结尾是value值;</li>
<li>notEndWith: 不以value的值结尾。</li>
:type Operator: str
:param _Value: 筛选条件的值。
:type Value: list of str
"""
self._Key = None
self._Operator = None
self._Value = None
@property
def Key(self):
"""筛选条件的key。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Operator(self):
"""查询条件操作符,操作类型有:
<li>equals: 等于;</li>
<li>notEquals: 不等于;</li>
<li>include: 包含;</li>
<li>notInclude: 不包含; </li>
<li>startWith: 开始的值是value;</li>
<li>notStartWith: 不以value的值开始;</li>
<li>endWith: 结尾是value值;</li>
<li>notEndWith: 不以value的值结尾。</li>
:rtype: str
"""
return self._Operator
@Operator.setter
def Operator(self, Operator):
self._Operator = Operator
@property
def Value(self):
"""筛选条件的值。
:rtype: list of str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Key = params.get("Key")
self._Operator = params.get("Operator")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class QueryString(AbstractModel):
"""CacheKey中包含请求参数
"""
def __init__(self):
r"""
:param _Switch: CacheKey是否由QueryString组成,取值有:
<li>on:是;</li>
<li>off:否。</li>
:type Switch: str
:param _Action: CacheKey使用QueryString的方式,取值有:
<li>includeCustom:使用部分url参数;</li>
<li>excludeCustom:排除部分url参数。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Action: str
:param _Value: 使用/排除的url参数数组。
注意:此字段可能返回 null,表示取不到有效值。
:type Value: list of str
"""
self._Switch = None
self._Action = None
self._Value = None
@property
def Switch(self):
"""CacheKey是否由QueryString组成,取值有:
<li>on:是;</li>
<li>off:否。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Action(self):
"""CacheKey使用QueryString的方式,取值有:
<li>includeCustom:使用部分url参数;</li>
<li>excludeCustom:排除部分url参数。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Value(self):
"""使用/排除的url参数数组。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Action = params.get("Action")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Quic(AbstractModel):
"""Quic配置项
"""
def __init__(self):
r"""
:param _Switch: 是否开启 Quic 配置,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""是否开启 Quic 配置,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Quota(AbstractModel):
"""刷新/预热 可用量及配额
"""
def __init__(self):
r"""
:param _Batch: 单次批量提交配额上限。
:type Batch: int
:param _Daily: 每日提交配额上限。
:type Daily: int
:param _DailyAvailable: 每日剩余的可提交配额。
:type DailyAvailable: int
:param _Type: 刷新预热缓存类型,取值有:
<li> purge_prefix:按前缀刷新;</li>
<li> purge_url:按URL刷新;</li>
<li> purge_host:按Hostname刷新;</li>
<li> purge_all:刷新全部缓存内容;</li>
<li> purge_cache_tag:按CacheTag刷新;</li><li> prefetch_url:按URL预热。</li>
:type Type: str
"""
self._Batch = None
self._Daily = None
self._DailyAvailable = None
self._Type = None
@property
def Batch(self):
"""单次批量提交配额上限。
:rtype: int
"""
return self._Batch
@Batch.setter
def Batch(self, Batch):
self._Batch = Batch
@property
def Daily(self):
"""每日提交配额上限。
:rtype: int
"""
return self._Daily
@Daily.setter
def Daily(self, Daily):
self._Daily = Daily
@property
def DailyAvailable(self):
"""每日剩余的可提交配额。
:rtype: int
"""
return self._DailyAvailable
@DailyAvailable.setter
def DailyAvailable(self, DailyAvailable):
self._DailyAvailable = DailyAvailable
@property
def Type(self):
"""刷新预热缓存类型,取值有:
<li> purge_prefix:按前缀刷新;</li>
<li> purge_url:按URL刷新;</li>
<li> purge_host:按Hostname刷新;</li>
<li> purge_all:刷新全部缓存内容;</li>
<li> purge_cache_tag:按CacheTag刷新;</li><li> prefetch_url:按URL预热。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
def _deserialize(self, params):
self._Batch = params.get("Batch")
self._Daily = params.get("Daily")
self._DailyAvailable = params.get("DailyAvailable")
self._Type = params.get("Type")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RangeOriginPullParameters(AbstractModel):
"""分片回源配置参数。
"""
def __init__(self):
r"""
:param _Switch: 分片回源开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""分片回源开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RateLimitConfig(AbstractModel):
"""速率限制规则
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _RateLimitUserRules: 速率限制-用户规则列表。如果为null,默认使用历史配置。
:type RateLimitUserRules: list of RateLimitUserRule
:param _RateLimitTemplate: 速率限制模板功能。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type RateLimitTemplate: :class:`tencentcloud.teo.v20220901.models.RateLimitTemplate`
:param _RateLimitIntelligence: 智能客户端过滤。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type RateLimitIntelligence: :class:`tencentcloud.teo.v20220901.models.RateLimitIntelligence`
:param _RateLimitCustomizes: 速率限制-托管定制规则。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type RateLimitCustomizes: list of RateLimitUserRule
"""
self._Switch = None
self._RateLimitUserRules = None
self._RateLimitTemplate = None
self._RateLimitIntelligence = None
self._RateLimitCustomizes = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def RateLimitUserRules(self):
"""速率限制-用户规则列表。如果为null,默认使用历史配置。
:rtype: list of RateLimitUserRule
"""
return self._RateLimitUserRules
@RateLimitUserRules.setter
def RateLimitUserRules(self, RateLimitUserRules):
self._RateLimitUserRules = RateLimitUserRules
@property
def RateLimitTemplate(self):
"""速率限制模板功能。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.RateLimitTemplate`
"""
return self._RateLimitTemplate
@RateLimitTemplate.setter
def RateLimitTemplate(self, RateLimitTemplate):
self._RateLimitTemplate = RateLimitTemplate
@property
def RateLimitIntelligence(self):
"""智能客户端过滤。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.RateLimitIntelligence`
"""
return self._RateLimitIntelligence
@RateLimitIntelligence.setter
def RateLimitIntelligence(self, RateLimitIntelligence):
self._RateLimitIntelligence = RateLimitIntelligence
@property
def RateLimitCustomizes(self):
"""速率限制-托管定制规则。如果为null,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of RateLimitUserRule
"""
return self._RateLimitCustomizes
@RateLimitCustomizes.setter
def RateLimitCustomizes(self, RateLimitCustomizes):
self._RateLimitCustomizes = RateLimitCustomizes
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("RateLimitUserRules") is not None:
self._RateLimitUserRules = []
for item in params.get("RateLimitUserRules"):
obj = RateLimitUserRule()
obj._deserialize(item)
self._RateLimitUserRules.append(obj)
if params.get("RateLimitTemplate") is not None:
self._RateLimitTemplate = RateLimitTemplate()
self._RateLimitTemplate._deserialize(params.get("RateLimitTemplate"))
if params.get("RateLimitIntelligence") is not None:
self._RateLimitIntelligence = RateLimitIntelligence()
self._RateLimitIntelligence._deserialize(params.get("RateLimitIntelligence"))
if params.get("RateLimitCustomizes") is not None:
self._RateLimitCustomizes = []
for item in params.get("RateLimitCustomizes"):
obj = RateLimitUserRule()
obj._deserialize(item)
self._RateLimitCustomizes.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RateLimitIntelligence(AbstractModel):
"""智能客户端过滤
"""
def __init__(self):
r"""
:param _Switch: 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Action: 执行动作,取值有:
<li>monitor:观察;</li>
<li>alg:挑战。</li>
:type Action: str
:param _RuleId: 规则id,仅出参使用。
:type RuleId: int
"""
self._Switch = None
self._Action = None
self._RuleId = None
@property
def Switch(self):
"""功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Action(self):
"""执行动作,取值有:
<li>monitor:观察;</li>
<li>alg:挑战。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RuleId(self):
"""规则id,仅出参使用。
:rtype: int
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Action = params.get("Action")
self._RuleId = params.get("RuleId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RateLimitTemplate(AbstractModel):
"""速率限制模板
"""
def __init__(self):
r"""
:param _Mode: 模板等级名称,取值有:
<li>sup_loose:超级宽松;</li>
<li>loose:宽松;</li>
<li>emergency:紧急;</li>
<li>normal:适中;</li>
<li>strict:严格;</li>
<li>close:关闭,仅精准速率限制生效。</li>
:type Mode: str
:param _Action: 模板处置方式,取值有:
<li>alg:JavaScript挑战;</li>
<li>monitor:观察。</li>不填写默认取alg。
:type Action: str
:param _RateLimitTemplateDetail: 模板值详情。仅出参返回。
:type RateLimitTemplateDetail: :class:`tencentcloud.teo.v20220901.models.RateLimitTemplateDetail`
"""
self._Mode = None
self._Action = None
self._RateLimitTemplateDetail = None
@property
def Mode(self):
"""模板等级名称,取值有:
<li>sup_loose:超级宽松;</li>
<li>loose:宽松;</li>
<li>emergency:紧急;</li>
<li>normal:适中;</li>
<li>strict:严格;</li>
<li>close:关闭,仅精准速率限制生效。</li>
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def Action(self):
"""模板处置方式,取值有:
<li>alg:JavaScript挑战;</li>
<li>monitor:观察。</li>不填写默认取alg。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RateLimitTemplateDetail(self):
"""模板值详情。仅出参返回。
:rtype: :class:`tencentcloud.teo.v20220901.models.RateLimitTemplateDetail`
"""
return self._RateLimitTemplateDetail
@RateLimitTemplateDetail.setter
def RateLimitTemplateDetail(self, RateLimitTemplateDetail):
self._RateLimitTemplateDetail = RateLimitTemplateDetail
def _deserialize(self, params):
self._Mode = params.get("Mode")
self._Action = params.get("Action")
if params.get("RateLimitTemplateDetail") is not None:
self._RateLimitTemplateDetail = RateLimitTemplateDetail()
self._RateLimitTemplateDetail._deserialize(params.get("RateLimitTemplateDetail"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RateLimitTemplateDetail(AbstractModel):
"""模板当前详细配置
"""
def __init__(self):
r"""
:param _Mode: 模板等级名称,取值有:
<li>sup_loose:超级宽松;</li>
<li>loose:宽松;</li>
<li>emergency:紧急;</li>
<li>normal:适中;</li>
<li>strict:严格;</li>
<li>close:关闭,仅精准速率限制生效。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Mode: str
:param _ID: 唯一id。
:type ID: int
:param _Action: 模板处置方式,取值有:
<li>alg:JavaScript挑战;</li>
<li>monitor:观察。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Action: str
:param _PunishTime: 惩罚时间,取值范围0-2天,单位秒。
注意:此字段可能返回 null,表示取不到有效值。
:type PunishTime: int
:param _Threshold: 统计阈值,单位是次,取值范围0-4294967294。
:type Threshold: int
:param _Period: 统计周期,取值范围0-120秒。
:type Period: int
"""
self._Mode = None
self._ID = None
self._Action = None
self._PunishTime = None
self._Threshold = None
self._Period = None
@property
def Mode(self):
"""模板等级名称,取值有:
<li>sup_loose:超级宽松;</li>
<li>loose:宽松;</li>
<li>emergency:紧急;</li>
<li>normal:适中;</li>
<li>strict:严格;</li>
<li>close:关闭,仅精准速率限制生效。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def ID(self):
"""唯一id。
:rtype: int
"""
return self._ID
@ID.setter
def ID(self, ID):
self._ID = ID
@property
def Action(self):
"""模板处置方式,取值有:
<li>alg:JavaScript挑战;</li>
<li>monitor:观察。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def PunishTime(self):
"""惩罚时间,取值范围0-2天,单位秒。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._PunishTime
@PunishTime.setter
def PunishTime(self, PunishTime):
self._PunishTime = PunishTime
@property
def Threshold(self):
"""统计阈值,单位是次,取值范围0-4294967294。
:rtype: int
"""
return self._Threshold
@Threshold.setter
def Threshold(self, Threshold):
self._Threshold = Threshold
@property
def Period(self):
"""统计周期,取值范围0-120秒。
:rtype: int
"""
return self._Period
@Period.setter
def Period(self, Period):
self._Period = Period
def _deserialize(self, params):
self._Mode = params.get("Mode")
self._ID = params.get("ID")
self._Action = params.get("Action")
self._PunishTime = params.get("PunishTime")
self._Threshold = params.get("Threshold")
self._Period = params.get("Period")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RateLimitUserRule(AbstractModel):
"""RateLimit规则
"""
def __init__(self):
r"""
:param _Threshold: 速率限制统计阈值,单位是次,取值范围0-4294967294。
:type Threshold: int
:param _Period: 速率限制统计时间,取值范围 10/20/30/40/50/60 单位是秒。
:type Period: int
:param _RuleName: 规则名,只能以英文字符,数字,下划线组合,且不能以下划线开头。
:type RuleName: str
:param _Action: 处置动作,取值有: <li>monitor:观察;</li> <li>drop:拦截;</li><li> redirect:重定向;</li><li> page:指定页面;</li><li>alg:JavaScript 挑战。</li>
:type Action: str
:param _PunishTime: 惩罚时长,0-2天。
:type PunishTime: int
:param _PunishTimeUnit: 处罚时长单位,取值有:
<li>second:秒;</li>
<li>minutes:分钟;</li>
<li>hour:小时。</li>
:type PunishTimeUnit: str
:param _RuleStatus: 规则状态,取值有:
<li>on:生效;</li>
<li>off:不生效。</li>默认 on 生效。
:type RuleStatus: str
:param _AclConditions: 规则详情。
:type AclConditions: list of AclCondition
:param _RulePriority: 规则权重,取值范围0-100。
:type RulePriority: int
:param _RuleID: 规则 Id。仅出参使用。
:type RuleID: int
:param _FreqFields: 过滤词,取值有:
<li>sip:客户端 ip。</li>
默认为空字符串。
:type FreqFields: list of str
:param _UpdateTime: 更新时间。仅出参使用。修改时默认为当前时间。
:type UpdateTime: str
:param _FreqScope: 统计范围。取值有:
<li>source_to_eo:(响应)源站到 EdgeOne;</li>
<li>client_to_eo:(请求)客户端到 EdgeOne。</li>
默认为 source_to_eo。
:type FreqScope: list of str
:param _Name: 自定义返回页面的名称。Action 是 page 时必填,且不能为空。
:type Name: str
:param _CustomResponseId: 自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Action 是 page 时必填,且不能为空。
:type CustomResponseId: str
:param _ResponseCode: 自定义返回页面的响应码。Action 是 page 时必填,且不能为空,取值: 100~600,不支持 3xx 响应码。默认值:567。
:type ResponseCode: int
:param _RedirectUrl: 重定向时候的地址。Action 是 redirect 时必填,且不能为空。
:type RedirectUrl: str
"""
self._Threshold = None
self._Period = None
self._RuleName = None
self._Action = None
self._PunishTime = None
self._PunishTimeUnit = None
self._RuleStatus = None
self._AclConditions = None
self._RulePriority = None
self._RuleID = None
self._FreqFields = None
self._UpdateTime = None
self._FreqScope = None
self._Name = None
self._CustomResponseId = None
self._ResponseCode = None
self._RedirectUrl = None
@property
def Threshold(self):
"""速率限制统计阈值,单位是次,取值范围0-4294967294。
:rtype: int
"""
return self._Threshold
@Threshold.setter
def Threshold(self, Threshold):
self._Threshold = Threshold
@property
def Period(self):
"""速率限制统计时间,取值范围 10/20/30/40/50/60 单位是秒。
:rtype: int
"""
return self._Period
@Period.setter
def Period(self, Period):
self._Period = Period
@property
def RuleName(self):
"""规则名,只能以英文字符,数字,下划线组合,且不能以下划线开头。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Action(self):
"""处置动作,取值有: <li>monitor:观察;</li> <li>drop:拦截;</li><li> redirect:重定向;</li><li> page:指定页面;</li><li>alg:JavaScript 挑战。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def PunishTime(self):
"""惩罚时长,0-2天。
:rtype: int
"""
return self._PunishTime
@PunishTime.setter
def PunishTime(self, PunishTime):
self._PunishTime = PunishTime
@property
def PunishTimeUnit(self):
"""处罚时长单位,取值有:
<li>second:秒;</li>
<li>minutes:分钟;</li>
<li>hour:小时。</li>
:rtype: str
"""
return self._PunishTimeUnit
@PunishTimeUnit.setter
def PunishTimeUnit(self, PunishTimeUnit):
self._PunishTimeUnit = PunishTimeUnit
@property
def RuleStatus(self):
"""规则状态,取值有:
<li>on:生效;</li>
<li>off:不生效。</li>默认 on 生效。
:rtype: str
"""
return self._RuleStatus
@RuleStatus.setter
def RuleStatus(self, RuleStatus):
self._RuleStatus = RuleStatus
@property
def AclConditions(self):
"""规则详情。
:rtype: list of AclCondition
"""
return self._AclConditions
@AclConditions.setter
def AclConditions(self, AclConditions):
self._AclConditions = AclConditions
@property
def RulePriority(self):
"""规则权重,取值范围0-100。
:rtype: int
"""
return self._RulePriority
@RulePriority.setter
def RulePriority(self, RulePriority):
self._RulePriority = RulePriority
@property
def RuleID(self):
"""规则 Id。仅出参使用。
:rtype: int
"""
return self._RuleID
@RuleID.setter
def RuleID(self, RuleID):
self._RuleID = RuleID
@property
def FreqFields(self):
"""过滤词,取值有:
<li>sip:客户端 ip。</li>
默认为空字符串。
:rtype: list of str
"""
return self._FreqFields
@FreqFields.setter
def FreqFields(self, FreqFields):
self._FreqFields = FreqFields
@property
def UpdateTime(self):
"""更新时间。仅出参使用。修改时默认为当前时间。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
@property
def FreqScope(self):
"""统计范围。取值有:
<li>source_to_eo:(响应)源站到 EdgeOne;</li>
<li>client_to_eo:(请求)客户端到 EdgeOne。</li>
默认为 source_to_eo。
:rtype: list of str
"""
return self._FreqScope
@FreqScope.setter
def FreqScope(self, FreqScope):
self._FreqScope = FreqScope
@property
def Name(self):
"""自定义返回页面的名称。Action 是 page 时必填,且不能为空。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def CustomResponseId(self):
"""自定义响应 Id。该 Id 可通过查询自定义错误页列表接口获取。默认值为default,使用系统默认页面。Action 是 page 时必填,且不能为空。
:rtype: str
"""
return self._CustomResponseId
@CustomResponseId.setter
def CustomResponseId(self, CustomResponseId):
self._CustomResponseId = CustomResponseId
@property
def ResponseCode(self):
"""自定义返回页面的响应码。Action 是 page 时必填,且不能为空,取值: 100~600,不支持 3xx 响应码。默认值:567。
:rtype: int
"""
return self._ResponseCode
@ResponseCode.setter
def ResponseCode(self, ResponseCode):
self._ResponseCode = ResponseCode
@property
def RedirectUrl(self):
"""重定向时候的地址。Action 是 redirect 时必填,且不能为空。
:rtype: str
"""
return self._RedirectUrl
@RedirectUrl.setter
def RedirectUrl(self, RedirectUrl):
self._RedirectUrl = RedirectUrl
def _deserialize(self, params):
self._Threshold = params.get("Threshold")
self._Period = params.get("Period")
self._RuleName = params.get("RuleName")
self._Action = params.get("Action")
self._PunishTime = params.get("PunishTime")
self._PunishTimeUnit = params.get("PunishTimeUnit")
self._RuleStatus = params.get("RuleStatus")
if params.get("AclConditions") is not None:
self._AclConditions = []
for item in params.get("AclConditions"):
obj = AclCondition()
obj._deserialize(item)
self._AclConditions.append(obj)
self._RulePriority = params.get("RulePriority")
self._RuleID = params.get("RuleID")
self._FreqFields = params.get("FreqFields")
self._UpdateTime = params.get("UpdateTime")
self._FreqScope = params.get("FreqScope")
self._Name = params.get("Name")
self._CustomResponseId = params.get("CustomResponseId")
self._ResponseCode = params.get("ResponseCode")
self._RedirectUrl = params.get("RedirectUrl")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RealtimeLogDeliveryTask(AbstractModel):
"""实时日志投递任务。
"""
def __init__(self):
r"""
:param _TaskId: 实时日志投递任务 ID。
:type TaskId: str
:param _TaskName: 实时日志投递任务的名称。
:type TaskName: str
:param _DeliveryStatus: 实时日志投递任务的状态,取值有: <li>enabled: 已启用;</li> <li>disabled: 已停用;</li><li>deleted: 异常删除状态,请检查目的地腾讯云 CLS 日志集/日志主题是否已被删除。</li>
:type DeliveryStatus: str
:param _TaskType: 实时日志投递任务类型,取值有: <li>cls: 推送到腾讯云 CLS;</li> <li>custom_endpoint:推送到自定义 HTTP(S) 地址;</li> <li>s3:推送到 AWS S3 兼容存储桶地址。</li>
:type TaskType: str
:param _EntityList: 实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下: <li>七层域名:domain.example.com;</li> <li>四层代理实例:sid-2s69eb5wcms7。</li>
:type EntityList: list of str
:param _LogType: 数据投递类型,取值有: <li>domain:站点加速日志;</li> <li>application:四层代理日志;</li> <li>web-rateLiming:速率限制和 CC 攻击防护日志;</li> <li>web-attack:托管规则日志;</li> <li>web-rule:自定义规则日志;</li> <li>web-bot:Bot管理日志。</li>
:type LogType: str
:param _Area: 数据投递区域,取值有: <li>mainland:中国大陆境内;</li> <li>overseas:全球(不含中国大陆)。</li>
:type Area: str
:param _Fields: 投递的预设字段列表。
:type Fields: list of str
:param _CustomFields: 投递的自定义字段列表。
:type CustomFields: list of CustomField
:param _DeliveryConditions: 日志投递的过滤条件。
:type DeliveryConditions: list of DeliveryCondition
:param _Sample: 采样比例,采用千分制,取值范围为1-1000,例如:605 表示采样比例为 60.5%。
:type Sample: int
:param _LogFormat: 日志投递的输出格式。出参为 null 时表示为默认格式,默认格式逻辑如下:
<li>当 TaskType 取值为 custom_endpoint 时,默认格式为多个 JSON 对象组成的数组,每个 JSON 对象为一条日志;</li>
<li>当 TaskType 取值为 s3 时,默认格式为 JSON Lines。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type LogFormat: :class:`tencentcloud.teo.v20220901.models.LogFormat`
:param _CLS: CLS 的配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:type CLS: :class:`tencentcloud.teo.v20220901.models.CLSTopic`
:param _CustomEndpoint: 自定义 HTTP 服务的配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:type CustomEndpoint: :class:`tencentcloud.teo.v20220901.models.CustomEndpoint`
:param _S3: AWS S3 兼容存储桶的配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:type S3: :class:`tencentcloud.teo.v20220901.models.S3`
:param _CreateTime: 创建时间。
:type CreateTime: str
:param _UpdateTime: 更新时间。
:type UpdateTime: str
"""
self._TaskId = None
self._TaskName = None
self._DeliveryStatus = None
self._TaskType = None
self._EntityList = None
self._LogType = None
self._Area = None
self._Fields = None
self._CustomFields = None
self._DeliveryConditions = None
self._Sample = None
self._LogFormat = None
self._CLS = None
self._CustomEndpoint = None
self._S3 = None
self._CreateTime = None
self._UpdateTime = None
@property
def TaskId(self):
"""实时日志投递任务 ID。
:rtype: str
"""
return self._TaskId
@TaskId.setter
def TaskId(self, TaskId):
self._TaskId = TaskId
@property
def TaskName(self):
"""实时日志投递任务的名称。
:rtype: str
"""
return self._TaskName
@TaskName.setter
def TaskName(self, TaskName):
self._TaskName = TaskName
@property
def DeliveryStatus(self):
"""实时日志投递任务的状态,取值有: <li>enabled: 已启用;</li> <li>disabled: 已停用;</li><li>deleted: 异常删除状态,请检查目的地腾讯云 CLS 日志集/日志主题是否已被删除。</li>
:rtype: str
"""
return self._DeliveryStatus
@DeliveryStatus.setter
def DeliveryStatus(self, DeliveryStatus):
self._DeliveryStatus = DeliveryStatus
@property
def TaskType(self):
"""实时日志投递任务类型,取值有: <li>cls: 推送到腾讯云 CLS;</li> <li>custom_endpoint:推送到自定义 HTTP(S) 地址;</li> <li>s3:推送到 AWS S3 兼容存储桶地址。</li>
:rtype: str
"""
return self._TaskType
@TaskType.setter
def TaskType(self, TaskType):
self._TaskType = TaskType
@property
def EntityList(self):
"""实时日志投递任务对应的实体(七层域名或者四层代理实例)列表。取值示例如下: <li>七层域名:domain.example.com;</li> <li>四层代理实例:sid-2s69eb5wcms7。</li>
:rtype: list of str
"""
return self._EntityList
@EntityList.setter
def EntityList(self, EntityList):
self._EntityList = EntityList
@property
def LogType(self):
"""数据投递类型,取值有: <li>domain:站点加速日志;</li> <li>application:四层代理日志;</li> <li>web-rateLiming:速率限制和 CC 攻击防护日志;</li> <li>web-attack:托管规则日志;</li> <li>web-rule:自定义规则日志;</li> <li>web-bot:Bot管理日志。</li>
:rtype: str
"""
return self._LogType
@LogType.setter
def LogType(self, LogType):
self._LogType = LogType
@property
def Area(self):
"""数据投递区域,取值有: <li>mainland:中国大陆境内;</li> <li>overseas:全球(不含中国大陆)。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def Fields(self):
"""投递的预设字段列表。
:rtype: list of str
"""
return self._Fields
@Fields.setter
def Fields(self, Fields):
self._Fields = Fields
@property
def CustomFields(self):
"""投递的自定义字段列表。
:rtype: list of CustomField
"""
return self._CustomFields
@CustomFields.setter
def CustomFields(self, CustomFields):
self._CustomFields = CustomFields
@property
def DeliveryConditions(self):
"""日志投递的过滤条件。
:rtype: list of DeliveryCondition
"""
return self._DeliveryConditions
@DeliveryConditions.setter
def DeliveryConditions(self, DeliveryConditions):
self._DeliveryConditions = DeliveryConditions
@property
def Sample(self):
"""采样比例,采用千分制,取值范围为1-1000,例如:605 表示采样比例为 60.5%。
:rtype: int
"""
return self._Sample
@Sample.setter
def Sample(self, Sample):
self._Sample = Sample
@property
def LogFormat(self):
"""日志投递的输出格式。出参为 null 时表示为默认格式,默认格式逻辑如下:
<li>当 TaskType 取值为 custom_endpoint 时,默认格式为多个 JSON 对象组成的数组,每个 JSON 对象为一条日志;</li>
<li>当 TaskType 取值为 s3 时,默认格式为 JSON Lines。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.LogFormat`
"""
return self._LogFormat
@LogFormat.setter
def LogFormat(self, LogFormat):
self._LogFormat = LogFormat
@property
def CLS(self):
"""CLS 的配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CLSTopic`
"""
return self._CLS
@CLS.setter
def CLS(self, CLS):
self._CLS = CLS
@property
def CustomEndpoint(self):
"""自定义 HTTP 服务的配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CustomEndpoint`
"""
return self._CustomEndpoint
@CustomEndpoint.setter
def CustomEndpoint(self, CustomEndpoint):
self._CustomEndpoint = CustomEndpoint
@property
def S3(self):
"""AWS S3 兼容存储桶的配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.S3`
"""
return self._S3
@S3.setter
def S3(self, S3):
self._S3 = S3
@property
def CreateTime(self):
"""创建时间。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def UpdateTime(self):
"""更新时间。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._TaskId = params.get("TaskId")
self._TaskName = params.get("TaskName")
self._DeliveryStatus = params.get("DeliveryStatus")
self._TaskType = params.get("TaskType")
self._EntityList = params.get("EntityList")
self._LogType = params.get("LogType")
self._Area = params.get("Area")
self._Fields = params.get("Fields")
if params.get("CustomFields") is not None:
self._CustomFields = []
for item in params.get("CustomFields"):
obj = CustomField()
obj._deserialize(item)
self._CustomFields.append(obj)
if params.get("DeliveryConditions") is not None:
self._DeliveryConditions = []
for item in params.get("DeliveryConditions"):
obj = DeliveryCondition()
obj._deserialize(item)
self._DeliveryConditions.append(obj)
self._Sample = params.get("Sample")
if params.get("LogFormat") is not None:
self._LogFormat = LogFormat()
self._LogFormat._deserialize(params.get("LogFormat"))
if params.get("CLS") is not None:
self._CLS = CLSTopic()
self._CLS._deserialize(params.get("CLS"))
if params.get("CustomEndpoint") is not None:
self._CustomEndpoint = CustomEndpoint()
self._CustomEndpoint._deserialize(params.get("CustomEndpoint"))
if params.get("S3") is not None:
self._S3 = S3()
self._S3._deserialize(params.get("S3"))
self._CreateTime = params.get("CreateTime")
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RenewFlag(AbstractModel):
"""预付费套餐自动续费配置项。
"""
def __init__(self):
r"""
:param _Switch: 预付费套餐的自动续费标志,取值有:
<li> on:开启自动续费;</li>
<li> off:不开启自动续费。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""预付费套餐的自动续费标志,取值有:
<li> on:开启自动续费;</li>
<li> off:不开启自动续费。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RenewPlanRequest(AbstractModel):
"""RenewPlan请求参数结构体
"""
def __init__(self):
r"""
:param _PlanId: 套餐 ID,形如 edgeone-2unuvzjmmn2q。
:type PlanId: str
:param _Period: 续费套餐的时长,单位:月,取值有:1,2,3,4,5,6,7,8,9,10,11,12,24,36。
:type Period: int
:param _AutoUseVoucher: 是否自动使用代金券,取值有:<li> true:是;</li><li> false:否。</li>不填写使用默认值 false。
:type AutoUseVoucher: str
"""
self._PlanId = None
self._Period = None
self._AutoUseVoucher = None
@property
def PlanId(self):
"""套餐 ID,形如 edgeone-2unuvzjmmn2q。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def Period(self):
"""续费套餐的时长,单位:月,取值有:1,2,3,4,5,6,7,8,9,10,11,12,24,36。
:rtype: int
"""
return self._Period
@Period.setter
def Period(self, Period):
self._Period = Period
@property
def AutoUseVoucher(self):
"""是否自动使用代金券,取值有:<li> true:是;</li><li> false:否。</li>不填写使用默认值 false。
:rtype: str
"""
return self._AutoUseVoucher
@AutoUseVoucher.setter
def AutoUseVoucher(self, AutoUseVoucher):
self._AutoUseVoucher = AutoUseVoucher
def _deserialize(self, params):
self._PlanId = params.get("PlanId")
self._Period = params.get("Period")
self._AutoUseVoucher = params.get("AutoUseVoucher")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RenewPlanResponse(AbstractModel):
"""RenewPlan返回参数结构体
"""
def __init__(self):
r"""
:param _DealName: 订单号。
:type DealName: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._DealName = None
self._RequestId = None
@property
def DealName(self):
"""订单号。
:rtype: str
"""
return self._DealName
@DealName.setter
def DealName(self, DealName):
self._DealName = DealName
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._DealName = params.get("DealName")
self._RequestId = params.get("RequestId")
class Resource(AbstractModel):
"""计费资源
"""
def __init__(self):
r"""
:param _Id: 资源 ID。
:type Id: str
:param _PayMode: 付费模式,取值有:
<li>0:后付费。</li>
:type PayMode: int
:param _CreateTime: 创建时间。
:type CreateTime: str
:param _EnableTime: 生效时间。
:type EnableTime: str
:param _ExpireTime: 失效时间。
:type ExpireTime: str
:param _Status: 套餐状态,取值有:
<li>normal:正常;</li>
<li>isolated:隔离;</li>
<li>destroyed:销毁。</li>
:type Status: str
:param _Sv: 询价参数。
:type Sv: list of Sv
:param _AutoRenewFlag: 是否自动续费,取值有:
<li>0:默认状态;</li>
<li>1:自动续费;</li>
<li>2:不自动续费。</li>
:type AutoRenewFlag: int
:param _PlanId: 套餐关联资源 ID。
:type PlanId: str
:param _Area: 地域,取值有:
<li>mainland:国内;</li>
<li>overseas:海外。</li>
<li>global:全球。</li>
:type Area: str
:param _Group: 资源类型,取值有:
<li>plan:套餐类型;</li>
<li>pay-as-you-go:后付费类型。</li>
<li>value-added:增值服务类型。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Group: str
:param _ZoneNumber: 当前资源绑定的站点数量。
注意:此字段可能返回 null,表示取不到有效值。
:type ZoneNumber: int
:param _Type: 资源标记类型,取值有:
<li>vodeo:vodeo资源。</li>
:type Type: str
"""
self._Id = None
self._PayMode = None
self._CreateTime = None
self._EnableTime = None
self._ExpireTime = None
self._Status = None
self._Sv = None
self._AutoRenewFlag = None
self._PlanId = None
self._Area = None
self._Group = None
self._ZoneNumber = None
self._Type = None
@property
def Id(self):
"""资源 ID。
:rtype: str
"""
return self._Id
@Id.setter
def Id(self, Id):
self._Id = Id
@property
def PayMode(self):
"""付费模式,取值有:
<li>0:后付费。</li>
:rtype: int
"""
return self._PayMode
@PayMode.setter
def PayMode(self, PayMode):
self._PayMode = PayMode
@property
def CreateTime(self):
"""创建时间。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def EnableTime(self):
"""生效时间。
:rtype: str
"""
return self._EnableTime
@EnableTime.setter
def EnableTime(self, EnableTime):
self._EnableTime = EnableTime
@property
def ExpireTime(self):
"""失效时间。
:rtype: str
"""
return self._ExpireTime
@ExpireTime.setter
def ExpireTime(self, ExpireTime):
self._ExpireTime = ExpireTime
@property
def Status(self):
"""套餐状态,取值有:
<li>normal:正常;</li>
<li>isolated:隔离;</li>
<li>destroyed:销毁。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Sv(self):
"""询价参数。
:rtype: list of Sv
"""
return self._Sv
@Sv.setter
def Sv(self, Sv):
self._Sv = Sv
@property
def AutoRenewFlag(self):
"""是否自动续费,取值有:
<li>0:默认状态;</li>
<li>1:自动续费;</li>
<li>2:不自动续费。</li>
:rtype: int
"""
return self._AutoRenewFlag
@AutoRenewFlag.setter
def AutoRenewFlag(self, AutoRenewFlag):
self._AutoRenewFlag = AutoRenewFlag
@property
def PlanId(self):
"""套餐关联资源 ID。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def Area(self):
"""地域,取值有:
<li>mainland:国内;</li>
<li>overseas:海外。</li>
<li>global:全球。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def Group(self):
"""资源类型,取值有:
<li>plan:套餐类型;</li>
<li>pay-as-you-go:后付费类型。</li>
<li>value-added:增值服务类型。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Group
@Group.setter
def Group(self, Group):
self._Group = Group
@property
def ZoneNumber(self):
"""当前资源绑定的站点数量。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._ZoneNumber
@ZoneNumber.setter
def ZoneNumber(self, ZoneNumber):
self._ZoneNumber = ZoneNumber
@property
def Type(self):
"""资源标记类型,取值有:
<li>vodeo:vodeo资源。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
def _deserialize(self, params):
self._Id = params.get("Id")
self._PayMode = params.get("PayMode")
self._CreateTime = params.get("CreateTime")
self._EnableTime = params.get("EnableTime")
self._ExpireTime = params.get("ExpireTime")
self._Status = params.get("Status")
if params.get("Sv") is not None:
self._Sv = []
for item in params.get("Sv"):
obj = Sv()
obj._deserialize(item)
self._Sv.append(obj)
self._AutoRenewFlag = params.get("AutoRenewFlag")
self._PlanId = params.get("PlanId")
self._Area = params.get("Area")
self._Group = params.get("Group")
self._ZoneNumber = params.get("ZoneNumber")
self._Type = params.get("Type")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ResponseSpeedLimitParameters(AbstractModel):
"""单连接下载限速配置参数。
"""
def __init__(self):
r"""
:param _Mode: 下载限速模式,取值有:
<li>LimitUponDownload:全过程下载限速;</li>
<li>LimitAfterSpecificBytesDownloaded:全速下载特定字节后开始限速;</li>
<li>LimitAfterSpecificSecondsDownloaded:全速下载特定时间后开始限速。</li>
:type Mode: str
:param _MaxSpeed: 限速值,指定限速大小,填写含单位的数值或变量。当前支持单位有:KB/s。
:type MaxSpeed: str
:param _StartAt: 限速开始值,可以为下载大小或指定时长,填写含单位的数值或变量,指定下载大小或指定时长。
- 当Mode 取值为 LimitAfterSpecificBytesDownloaded 时,单位取值有: KB;
- 当Mode 取值为 LimitAfterSpecificSecondsDownloaded 时,单位取值有: s。
:type StartAt: str
"""
self._Mode = None
self._MaxSpeed = None
self._StartAt = None
@property
def Mode(self):
"""下载限速模式,取值有:
<li>LimitUponDownload:全过程下载限速;</li>
<li>LimitAfterSpecificBytesDownloaded:全速下载特定字节后开始限速;</li>
<li>LimitAfterSpecificSecondsDownloaded:全速下载特定时间后开始限速。</li>
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def MaxSpeed(self):
"""限速值,指定限速大小,填写含单位的数值或变量。当前支持单位有:KB/s。
:rtype: str
"""
return self._MaxSpeed
@MaxSpeed.setter
def MaxSpeed(self, MaxSpeed):
self._MaxSpeed = MaxSpeed
@property
def StartAt(self):
"""限速开始值,可以为下载大小或指定时长,填写含单位的数值或变量,指定下载大小或指定时长。
- 当Mode 取值为 LimitAfterSpecificBytesDownloaded 时,单位取值有: KB;
- 当Mode 取值为 LimitAfterSpecificSecondsDownloaded 时,单位取值有: s。
:rtype: str
"""
return self._StartAt
@StartAt.setter
def StartAt(self, StartAt):
self._StartAt = StartAt
def _deserialize(self, params):
self._Mode = params.get("Mode")
self._MaxSpeed = params.get("MaxSpeed")
self._StartAt = params.get("StartAt")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RewriteAction(AbstractModel):
"""规则引擎HTTP请求头/响应头类型的动作
"""
def __init__(self):
r"""
:param _Action: 功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:type Action: str
:param _Parameters: 参数。
:type Parameters: list of RuleRewriteActionParams
"""
self._Action = None
self._Parameters = None
@property
def Action(self):
"""功能名称,功能名称填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Parameters(self):
"""参数。
:rtype: list of RuleRewriteActionParams
"""
return self._Parameters
@Parameters.setter
def Parameters(self, Parameters):
self._Parameters = Parameters
def _deserialize(self, params):
self._Action = params.get("Action")
if params.get("Parameters") is not None:
self._Parameters = []
for item in params.get("Parameters"):
obj = RuleRewriteActionParams()
obj._deserialize(item)
self._Parameters.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Rule(AbstractModel):
"""规则引擎规则项,Conditions 数组内多个项的关系为 或,内层 Conditions 列表内多个项的关系为 且。
"""
def __init__(self):
r"""
:param _Conditions: 执行功能判断条件。
注意:满足该数组内任意一项条件,功能即可执行。
:type Conditions: list of RuleAndConditions
:param _Actions: 执行的功能。注意:Actions 和 SubRules 不可都为空
:type Actions: list of Action
:param _SubRules: 嵌套规则。注意:SubRules 和 Actions 不可都为空
:type SubRules: list of SubRuleItem
"""
self._Conditions = None
self._Actions = None
self._SubRules = None
@property
def Conditions(self):
"""执行功能判断条件。
注意:满足该数组内任意一项条件,功能即可执行。
:rtype: list of RuleAndConditions
"""
return self._Conditions
@Conditions.setter
def Conditions(self, Conditions):
self._Conditions = Conditions
@property
def Actions(self):
"""执行的功能。注意:Actions 和 SubRules 不可都为空
:rtype: list of Action
"""
return self._Actions
@Actions.setter
def Actions(self, Actions):
self._Actions = Actions
@property
def SubRules(self):
"""嵌套规则。注意:SubRules 和 Actions 不可都为空
:rtype: list of SubRuleItem
"""
return self._SubRules
@SubRules.setter
def SubRules(self, SubRules):
self._SubRules = SubRules
def _deserialize(self, params):
if params.get("Conditions") is not None:
self._Conditions = []
for item in params.get("Conditions"):
obj = RuleAndConditions()
obj._deserialize(item)
self._Conditions.append(obj)
if params.get("Actions") is not None:
self._Actions = []
for item in params.get("Actions"):
obj = Action()
obj._deserialize(item)
self._Actions.append(obj)
if params.get("SubRules") is not None:
self._SubRules = []
for item in params.get("SubRules"):
obj = SubRuleItem()
obj._deserialize(item)
self._SubRules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleAndConditions(AbstractModel):
"""规则引擎条件且关系条件列表
"""
def __init__(self):
r"""
:param _Conditions: 规则引擎条件,该数组内所有项全部满足即判断该条件满足。
:type Conditions: list of RuleCondition
"""
self._Conditions = None
@property
def Conditions(self):
"""规则引擎条件,该数组内所有项全部满足即判断该条件满足。
:rtype: list of RuleCondition
"""
return self._Conditions
@Conditions.setter
def Conditions(self, Conditions):
self._Conditions = Conditions
def _deserialize(self, params):
if params.get("Conditions") is not None:
self._Conditions = []
for item in params.get("Conditions"):
obj = RuleCondition()
obj._deserialize(item)
self._Conditions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleBranch(AbstractModel):
"""子规则分支。
"""
def __init__(self):
r"""
:param _Condition: [匹配条件](https://cloud.tencent.com/document/product/1552/90438#33f65828-c6c6-4b66-a011-25a20b548d5d)。
:type Condition: str
:param _Actions: [操作](https://cloud.tencent.com/document/product/1552/90438#c7bd7e02-9247-4a72-b0e4-11c27cadb198)。<br>注意:Actions 和 SubRules 不可同时为空。
注意:此字段可能返回 null,表示取不到有效值。
:type Actions: list of RuleEngineAction
:param _SubRules: 子规则列表。此列表中时存在多条规则,按照从上往下的顺序依次执行。<br>注意:SubRules 和 Actions 不可同时为空。且当前只支持填写一层 SubRules。
注意:此字段可能返回 null,表示取不到有效值。
:type SubRules: list of RuleEngineSubRule
"""
self._Condition = None
self._Actions = None
self._SubRules = None
@property
def Condition(self):
"""[匹配条件](https://cloud.tencent.com/document/product/1552/90438#33f65828-c6c6-4b66-a011-25a20b548d5d)。
:rtype: str
"""
return self._Condition
@Condition.setter
def Condition(self, Condition):
self._Condition = Condition
@property
def Actions(self):
"""[操作](https://cloud.tencent.com/document/product/1552/90438#c7bd7e02-9247-4a72-b0e4-11c27cadb198)。<br>注意:Actions 和 SubRules 不可同时为空。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of RuleEngineAction
"""
return self._Actions
@Actions.setter
def Actions(self, Actions):
self._Actions = Actions
@property
def SubRules(self):
"""子规则列表。此列表中时存在多条规则,按照从上往下的顺序依次执行。<br>注意:SubRules 和 Actions 不可同时为空。且当前只支持填写一层 SubRules。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of RuleEngineSubRule
"""
return self._SubRules
@SubRules.setter
def SubRules(self, SubRules):
self._SubRules = SubRules
def _deserialize(self, params):
self._Condition = params.get("Condition")
if params.get("Actions") is not None:
self._Actions = []
for item in params.get("Actions"):
obj = RuleEngineAction()
obj._deserialize(item)
self._Actions.append(obj)
if params.get("SubRules") is not None:
self._SubRules = []
for item in params.get("SubRules"):
obj = RuleEngineSubRule()
obj._deserialize(item)
self._SubRules.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleChoicePropertiesItem(AbstractModel):
"""规则引擎可应用于匹配请求的设置详细信息,可选参数配置项
"""
def __init__(self):
r"""
:param _Name: 参数名称。
:type Name: str
:param _Type: 参数值类型。
<li> CHOICE:参数值只能在 ChoicesValue 中选择; </li>
<li> TOGGLE:参数值为开关类型,可在 ChoicesValue 中选择;</li>
<li> CUSTOM_NUM:参数值用户自定义,整型类型;</li>
<li> CUSTOM_STRING:参数值用户自定义,字符串类型。</li>
:type Type: str
:param _ChoicesValue: 参数值的可选值。
注意:若参数值为用户自定义则该数组为空数组。
:type ChoicesValue: list of str
:param _Min: 数值参数的最小值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:type Min: int
:param _Max: 数值参数的最大值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:type Max: int
:param _IsMultiple: 参数值是否支持多选或者填写多个。
:type IsMultiple: bool
:param _IsAllowEmpty: 是否允许为空。
:type IsAllowEmpty: bool
:param _ExtraParameter: 特殊参数。
<li> 为 NULL:RuleAction 选择 NormalAction;</li>
<li> 成员参数 Id 为 Action:RuleAction 选择 RewirteAction;</li>
<li> 成员参数 Id 为 StatusCode:RuleAction 选择 CodeAction。</li>
:type ExtraParameter: :class:`tencentcloud.teo.v20220901.models.RuleExtraParameter`
"""
self._Name = None
self._Type = None
self._ChoicesValue = None
self._Min = None
self._Max = None
self._IsMultiple = None
self._IsAllowEmpty = None
self._ExtraParameter = None
@property
def Name(self):
"""参数名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Type(self):
"""参数值类型。
<li> CHOICE:参数值只能在 ChoicesValue 中选择; </li>
<li> TOGGLE:参数值为开关类型,可在 ChoicesValue 中选择;</li>
<li> CUSTOM_NUM:参数值用户自定义,整型类型;</li>
<li> CUSTOM_STRING:参数值用户自定义,字符串类型。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def ChoicesValue(self):
"""参数值的可选值。
注意:若参数值为用户自定义则该数组为空数组。
:rtype: list of str
"""
return self._ChoicesValue
@ChoicesValue.setter
def ChoicesValue(self, ChoicesValue):
self._ChoicesValue = ChoicesValue
@property
def Min(self):
"""数值参数的最小值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:rtype: int
"""
return self._Min
@Min.setter
def Min(self, Min):
self._Min = Min
@property
def Max(self):
"""数值参数的最大值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:rtype: int
"""
return self._Max
@Max.setter
def Max(self, Max):
self._Max = Max
@property
def IsMultiple(self):
"""参数值是否支持多选或者填写多个。
:rtype: bool
"""
return self._IsMultiple
@IsMultiple.setter
def IsMultiple(self, IsMultiple):
self._IsMultiple = IsMultiple
@property
def IsAllowEmpty(self):
"""是否允许为空。
:rtype: bool
"""
return self._IsAllowEmpty
@IsAllowEmpty.setter
def IsAllowEmpty(self, IsAllowEmpty):
self._IsAllowEmpty = IsAllowEmpty
@property
def ExtraParameter(self):
"""特殊参数。
<li> 为 NULL:RuleAction 选择 NormalAction;</li>
<li> 成员参数 Id 为 Action:RuleAction 选择 RewirteAction;</li>
<li> 成员参数 Id 为 StatusCode:RuleAction 选择 CodeAction。</li>
:rtype: :class:`tencentcloud.teo.v20220901.models.RuleExtraParameter`
"""
return self._ExtraParameter
@ExtraParameter.setter
def ExtraParameter(self, ExtraParameter):
self._ExtraParameter = ExtraParameter
def _deserialize(self, params):
self._Name = params.get("Name")
self._Type = params.get("Type")
self._ChoicesValue = params.get("ChoicesValue")
self._Min = params.get("Min")
self._Max = params.get("Max")
self._IsMultiple = params.get("IsMultiple")
self._IsAllowEmpty = params.get("IsAllowEmpty")
if params.get("ExtraParameter") is not None:
self._ExtraParameter = RuleExtraParameter()
self._ExtraParameter._deserialize(params.get("ExtraParameter"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleCodeActionParams(AbstractModel):
"""规则引擎条件使用StatusCode字段动作参数
"""
def __init__(self):
r"""
:param _StatusCode: 状态 Code。
:type StatusCode: int
:param _Name: 参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:type Name: str
:param _Values: 参数值。
:type Values: list of str
"""
self._StatusCode = None
self._Name = None
self._Values = None
@property
def StatusCode(self):
"""状态 Code。
:rtype: int
"""
return self._StatusCode
@StatusCode.setter
def StatusCode(self, StatusCode):
self._StatusCode = StatusCode
@property
def Name(self):
"""参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Values(self):
"""参数值。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._StatusCode = params.get("StatusCode")
self._Name = params.get("Name")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleCondition(AbstractModel):
"""规则引擎条件参数
"""
def __init__(self):
r"""
:param _Operator: 运算符,取值有:
<li> equal: 等于; </li>
<li> notequal: 不等于;</li>
<li> exist: 存在; </li>
<li> notexist: 不存在。</li>
:type Operator: str
:param _Target: 匹配类型,取值有: <li> filename:文件名; </li> <li> extension:文件后缀; </li> <li> host:HOST; </li> <li> full_url:URL Full,当前站点下完整 URL 路径,必须包含 HTTP 协议,Host 和 路径; </li> <li> url:URL Path,当前站点下 URL 路径的请求; </li><li>client_country:客户端国家/地区;</li> <li> query_string:查询字符串,当前站点下请求 URL 的查询字符串; </li> <li> request_header:HTTP 请求头部。 </li><li> client_ip:客户端 IP。 </li><li> request_protocol:请求协议。 </li><li> request_method:HTTP 请求方法。 </li>
:type Target: str
:param _Values: 对应匹配类型的参数值,仅在匹配类型为查询字符串或HTTP请求头并且运算符取值为存在或不存在时允许传空数组,对应匹配类型有:
<li> 文件后缀:jpg、txt 等文件后缀;</li>
<li> 文件名称:例如 foo.jpg 中的 foo;</li>
<li> 全部(站点任意请求):all;</li>
<li> HOST:当前站点下的 host ,例如www.maxx55.com;</li>
<li> URL Path:当前站点下 URL 路径的请求,例如:/example;</li>
<li> URL Full:当前站点下完整 URL 请求,必须包含 HTTP 协议,Host 和 路径,例如:https://www.maxx55.cn/example;</li>
<li> 客户端国家/地区:符合 ISO3166 标准的国家/地区标识;</li>
<li> 查询字符串: 当前站点下 URL 请求中查询字符串的参数值,例如 lang=cn&version=1 中的 cn 和 1; </li>
<li> HTTP 请求头: HTTP 请求头部字段值,例如 Accept-Language:zh-CN,zh;q=0.9中的zh-CN,zh;q=0.9 ;</li>
<li> 客户端 IP: 当前请求携带的客户端请求 IP,支持 IPv4/IPv6, 支持 IP 段; </li>
<li> 请求协议: 当前请求的协议,取值范围为:HTTP、HTTPS;</li>
<li> HTTP 请求方法: 当前请求的方法,取值范围为:GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT、OPTIONS、PATCH、COPY、LOCK、MKCOL、MOVE、PROPFIND、PROPPATCH、UNLOCK。 </li>
:type Values: list of str
:param _IgnoreCase: 是否忽略参数值的大小写,默认值为 false。
:type IgnoreCase: bool
:param _Name: 对应匹配类型的参数名称,在 Target 值为以下取值时有效,有效时值不能为空:
<li> query_string(查询字符串): 当前站点下URL请求中查询字符串的参数名称,例如lang=cn&version=1中的lang和version; </li>
<li> request_header(HTTP 请求头): HTTP请求头部字段名,例如Accept-Language:zh-CN,zh;q=0.9中的Accept-Language。 </li>
:type Name: str
:param _IgnoreNameCase: 是否忽略参数名称的大小写,默认值为 false。
注意:此字段可能返回 null,表示取不到有效值。
:type IgnoreNameCase: bool
"""
self._Operator = None
self._Target = None
self._Values = None
self._IgnoreCase = None
self._Name = None
self._IgnoreNameCase = None
@property
def Operator(self):
"""运算符,取值有:
<li> equal: 等于; </li>
<li> notequal: 不等于;</li>
<li> exist: 存在; </li>
<li> notexist: 不存在。</li>
:rtype: str
"""
return self._Operator
@Operator.setter
def Operator(self, Operator):
self._Operator = Operator
@property
def Target(self):
"""匹配类型,取值有: <li> filename:文件名; </li> <li> extension:文件后缀; </li> <li> host:HOST; </li> <li> full_url:URL Full,当前站点下完整 URL 路径,必须包含 HTTP 协议,Host 和 路径; </li> <li> url:URL Path,当前站点下 URL 路径的请求; </li><li>client_country:客户端国家/地区;</li> <li> query_string:查询字符串,当前站点下请求 URL 的查询字符串; </li> <li> request_header:HTTP 请求头部。 </li><li> client_ip:客户端 IP。 </li><li> request_protocol:请求协议。 </li><li> request_method:HTTP 请求方法。 </li>
:rtype: str
"""
return self._Target
@Target.setter
def Target(self, Target):
self._Target = Target
@property
def Values(self):
"""对应匹配类型的参数值,仅在匹配类型为查询字符串或HTTP请求头并且运算符取值为存在或不存在时允许传空数组,对应匹配类型有:
<li> 文件后缀:jpg、txt 等文件后缀;</li>
<li> 文件名称:例如 foo.jpg 中的 foo;</li>
<li> 全部(站点任意请求):all;</li>
<li> HOST:当前站点下的 host ,例如www.maxx55.com;</li>
<li> URL Path:当前站点下 URL 路径的请求,例如:/example;</li>
<li> URL Full:当前站点下完整 URL 请求,必须包含 HTTP 协议,Host 和 路径,例如:https://www.maxx55.cn/example;</li>
<li> 客户端国家/地区:符合 ISO3166 标准的国家/地区标识;</li>
<li> 查询字符串: 当前站点下 URL 请求中查询字符串的参数值,例如 lang=cn&version=1 中的 cn 和 1; </li>
<li> HTTP 请求头: HTTP 请求头部字段值,例如 Accept-Language:zh-CN,zh;q=0.9中的zh-CN,zh;q=0.9 ;</li>
<li> 客户端 IP: 当前请求携带的客户端请求 IP,支持 IPv4/IPv6, 支持 IP 段; </li>
<li> 请求协议: 当前请求的协议,取值范围为:HTTP、HTTPS;</li>
<li> HTTP 请求方法: 当前请求的方法,取值范围为:GET、HEAD、POST、PUT、DELETE、TRACE、CONNECT、OPTIONS、PATCH、COPY、LOCK、MKCOL、MOVE、PROPFIND、PROPPATCH、UNLOCK。 </li>
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
@property
def IgnoreCase(self):
"""是否忽略参数值的大小写,默认值为 false。
:rtype: bool
"""
return self._IgnoreCase
@IgnoreCase.setter
def IgnoreCase(self, IgnoreCase):
self._IgnoreCase = IgnoreCase
@property
def Name(self):
"""对应匹配类型的参数名称,在 Target 值为以下取值时有效,有效时值不能为空:
<li> query_string(查询字符串): 当前站点下URL请求中查询字符串的参数名称,例如lang=cn&version=1中的lang和version; </li>
<li> request_header(HTTP 请求头): HTTP请求头部字段名,例如Accept-Language:zh-CN,zh;q=0.9中的Accept-Language。 </li>
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def IgnoreNameCase(self):
warnings.warn("parameter `IgnoreNameCase` is deprecated", DeprecationWarning)
"""是否忽略参数名称的大小写,默认值为 false。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: bool
"""
return self._IgnoreNameCase
@IgnoreNameCase.setter
def IgnoreNameCase(self, IgnoreNameCase):
warnings.warn("parameter `IgnoreNameCase` is deprecated", DeprecationWarning)
self._IgnoreNameCase = IgnoreNameCase
def _deserialize(self, params):
self._Operator = params.get("Operator")
self._Target = params.get("Target")
self._Values = params.get("Values")
self._IgnoreCase = params.get("IgnoreCase")
self._Name = params.get("Name")
self._IgnoreNameCase = params.get("IgnoreNameCase")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleEngineAction(AbstractModel):
"""规则引擎操作。
"""
def __init__(self):
r"""
:param _Name: 操作名称。名称需要与参数结构体对应,例如 Name=Cache,则 CacheParameters 必填。
<li>Cache:节点缓存 TTL;</li>
<li>CacheKey:自定义 Cache Key;</li>
<li>CachePrefresh:缓存预刷新;</li>
<li>AccessURLRedirect:访问 URL 重定向;</li>
<li>UpstreamURLRewrite:回源 URL 重写;</li>
<li>QUIC:QUIC;</li>
<li>WebSocket:WebSocket;</li>
<li>Authentication:Token 鉴权;</li>
<li>MaxAge:浏览器缓存 TTL;</li>
<li>StatusCodeCache:状态码缓存 TTL;</li>
<li>OfflineCache:离线缓存;</li>
<li>SmartRouting:智能加速;</li>
<li>RangeOriginPull:分片回源 ;</li>
<li>UpstreamHTTP2:HTTP2 回源;</li>
<li>HostHeader:Host Header 重写;</li>
<li>ForceRedirectHTTPS:访问协议强制 HTTPS 跳转配置;</li>
<li>OriginPullProtocol:回源 HTTPS;</li>
<li>Compression:智能压缩配置;</li>
<li>HSTS:HSTS;</li>
<li>ClientIPHeader:存储客户端请求 IP 的头部信息配置;</li>
<li>OCSPStapling:OCSP 装订;</li>
<li>HTTP2:HTTP2 接入;</li>
<li>PostMaxSize:POST 请求上传文件流式传输最大限制配置;</li>
<li>ClientIPCountry:回源时携带客户端 IP 所属地域信息;</li>
<li>UpstreamFollowRedirect:回源跟随重定向参数配置;</li>
<li>UpstreamRequest:回源请求参数;</li>
<li>TLSConfig:SSL/TLS 安全;</li>
<li>ModifyOrigin:修改源站;</li>
<li>HTTPUpstreamTimeout:七层回源超时配置;</li>
<li>HttpResponse:HTTP 应答;</li>
<li>ErrorPage:自定义错误页面;</li>
<li>ModifyResponseHeader:修改 HTTP 节点响应头;</li>
<li>ModifyRequestHeader:修改 HTTP 节点请求头;</li>
<li>ResponseSpeedLimit:单连接下载限速。</li>
<li>SetContentIdentifierParameters:设置内容标识符。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Name: str
:param _CacheParameters: 节点缓存 TTL 配置参数,当 Name 取值为 Cache 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheParameters: :class:`tencentcloud.teo.v20220901.models.CacheParameters`
:param _CacheKeyParameters: 自定义 Cache Key 配置参数,当 Name 取值为 CacheKey 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheKeyParameters: :class:`tencentcloud.teo.v20220901.models.CacheKeyParameters`
:param _CachePrefreshParameters: 缓存预刷新配置参数,当 Name 取值为 CachePrefresh 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type CachePrefreshParameters: :class:`tencentcloud.teo.v20220901.models.CachePrefreshParameters`
:param _AccessURLRedirectParameters: 访问 URL 重定向配置参数,当 Name 取值为 AccessURLRedirect 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type AccessURLRedirectParameters: :class:`tencentcloud.teo.v20220901.models.AccessURLRedirectParameters`
:param _UpstreamURLRewriteParameters: 回源 URL 重写配置参数,当 Name 取值为 UpstreamURLRewrite 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type UpstreamURLRewriteParameters: :class:`tencentcloud.teo.v20220901.models.UpstreamURLRewriteParameters`
:param _QUICParameters: QUIC 配置参数,当 Name 取值为 QUIC 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type QUICParameters: :class:`tencentcloud.teo.v20220901.models.QUICParameters`
:param _WebSocketParameters: WebSocket 配置参数,当 Name 取值为 WebSocket 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type WebSocketParameters: :class:`tencentcloud.teo.v20220901.models.WebSocketParameters`
:param _AuthenticationParameters: Token 鉴权配置参数,当 Name 取值为 Authentication 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type AuthenticationParameters: :class:`tencentcloud.teo.v20220901.models.AuthenticationParameters`
:param _MaxAgeParameters: 浏览器缓存 TTL 配置参数,当 Name 取值为 MaxAge 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type MaxAgeParameters: :class:`tencentcloud.teo.v20220901.models.MaxAgeParameters`
:param _StatusCodeCacheParameters: 状态码缓存 TTL 配置参数,当 Name 取值为 StatusCodeCache 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type StatusCodeCacheParameters: :class:`tencentcloud.teo.v20220901.models.StatusCodeCacheParameters`
:param _OfflineCacheParameters: 离线缓存配置参数,当 Name 取值为 OfflineCache 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type OfflineCacheParameters: :class:`tencentcloud.teo.v20220901.models.OfflineCacheParameters`
:param _SmartRoutingParameters: 智能加速配置参数,当 Name 取值为 SmartRouting 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type SmartRoutingParameters: :class:`tencentcloud.teo.v20220901.models.SmartRoutingParameters`
:param _RangeOriginPullParameters: 分片回源配置参数,当 Name 取值为 RangeOriginPull 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type RangeOriginPullParameters: :class:`tencentcloud.teo.v20220901.models.RangeOriginPullParameters`
:param _UpstreamHTTP2Parameters: HTTP2 回源配置参数,当 Name 取值为 UpstreamHTTP2 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type UpstreamHTTP2Parameters: :class:`tencentcloud.teo.v20220901.models.UpstreamHTTP2Parameters`
:param _HostHeaderParameters: Host Header 重写配置参数,当 Name 取值为 HostHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type HostHeaderParameters: :class:`tencentcloud.teo.v20220901.models.HostHeaderParameters`
:param _ForceRedirectHTTPSParameters: 访问协议强制 HTTPS 跳转配置,当 Name 取值为 ForceRedirectHTTPS 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ForceRedirectHTTPSParameters: :class:`tencentcloud.teo.v20220901.models.ForceRedirectHTTPSParameters`
:param _CompressionParameters: 智能压缩配置,当 Name 取值为 Compression 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type CompressionParameters: :class:`tencentcloud.teo.v20220901.models.CompressionParameters`
:param _HSTSParameters: HSTS 配置参数,当 Name 取值为 HSTS 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type HSTSParameters: :class:`tencentcloud.teo.v20220901.models.HSTSParameters`
:param _ClientIPHeaderParameters: 存储客户端请求 IP 的头部信息配置,当 Name 取值为 ClientIPHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIPHeaderParameters: :class:`tencentcloud.teo.v20220901.models.ClientIPHeaderParameters`
:param _OCSPStaplingParameters: OCSP 装订配置参数,当 Name 取值为 OCSPStapling 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type OCSPStaplingParameters: :class:`tencentcloud.teo.v20220901.models.OCSPStaplingParameters`
:param _HTTP2Parameters: HTTP2 接入配置参数,当 Name 取值为 HTTP2 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type HTTP2Parameters: :class:`tencentcloud.teo.v20220901.models.HTTP2Parameters`
:param _PostMaxSizeParameters: POST 请求上传文件流式传输最大限制配置,当 Name 取值为 PostMaxSize 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type PostMaxSizeParameters: :class:`tencentcloud.teo.v20220901.models.PostMaxSizeParameters`
:param _ClientIPCountryParameters: 回源时携带客户端 IP 所属地域信息配置参数,当 Name 取值为 ClientIPCountry 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIPCountryParameters: :class:`tencentcloud.teo.v20220901.models.ClientIPCountryParameters`
:param _UpstreamFollowRedirectParameters: 回源跟随重定向参数配置,当 Name 取值为 UpstreamFollowRedirect 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type UpstreamFollowRedirectParameters: :class:`tencentcloud.teo.v20220901.models.UpstreamFollowRedirectParameters`
:param _UpstreamRequestParameters: 回源请求参数配置参数,当 Name 取值为 UpstreamRequest 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type UpstreamRequestParameters: :class:`tencentcloud.teo.v20220901.models.UpstreamRequestParameters`
:param _TLSConfigParameters: SSL/TLS 安全配置参数,当 Name 取值为 TLSConfig 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type TLSConfigParameters: :class:`tencentcloud.teo.v20220901.models.TLSConfigParameters`
:param _ModifyOriginParameters: 修改源站配置参数,当 Name 取值为 ModifyOrigin 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ModifyOriginParameters: :class:`tencentcloud.teo.v20220901.models.ModifyOriginParameters`
:param _HTTPUpstreamTimeoutParameters: 七层回源超时配置,当 Name 取值为 HTTPUpstreamTimeout 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type HTTPUpstreamTimeoutParameters: :class:`tencentcloud.teo.v20220901.models.HTTPUpstreamTimeoutParameters`
:param _HttpResponseParameters: HTTP 应答配置参数,当 Name 取值为 HttpResponse 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type HttpResponseParameters: :class:`tencentcloud.teo.v20220901.models.HTTPResponseParameters`
:param _ErrorPageParameters: 自定义错误页面配置参数,当 Name 取值为 ErrorPage 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ErrorPageParameters: :class:`tencentcloud.teo.v20220901.models.ErrorPageParameters`
:param _ModifyResponseHeaderParameters: 修改 HTTP 节点响应头配置参数,当 Name 取值为 ModifyResponseHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ModifyResponseHeaderParameters: :class:`tencentcloud.teo.v20220901.models.ModifyResponseHeaderParameters`
:param _ModifyRequestHeaderParameters: 修改 HTTP 节点请求头配置参数,当 Name 取值为 ModifyRequestHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ModifyRequestHeaderParameters: :class:`tencentcloud.teo.v20220901.models.ModifyRequestHeaderParameters`
:param _ResponseSpeedLimitParameters: 单连接下载限速配置参数,当 Name 取值为 ResponseSpeedLimit 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type ResponseSpeedLimitParameters: :class:`tencentcloud.teo.v20220901.models.ResponseSpeedLimitParameters`
:param _SetContentIdentifierParameters: 内容标识配置参数,当 Name 取值为 HttpResponse 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:type SetContentIdentifierParameters: :class:`tencentcloud.teo.v20220901.models.SetContentIdentifierParameters`
"""
self._Name = None
self._CacheParameters = None
self._CacheKeyParameters = None
self._CachePrefreshParameters = None
self._AccessURLRedirectParameters = None
self._UpstreamURLRewriteParameters = None
self._QUICParameters = None
self._WebSocketParameters = None
self._AuthenticationParameters = None
self._MaxAgeParameters = None
self._StatusCodeCacheParameters = None
self._OfflineCacheParameters = None
self._SmartRoutingParameters = None
self._RangeOriginPullParameters = None
self._UpstreamHTTP2Parameters = None
self._HostHeaderParameters = None
self._ForceRedirectHTTPSParameters = None
self._CompressionParameters = None
self._HSTSParameters = None
self._ClientIPHeaderParameters = None
self._OCSPStaplingParameters = None
self._HTTP2Parameters = None
self._PostMaxSizeParameters = None
self._ClientIPCountryParameters = None
self._UpstreamFollowRedirectParameters = None
self._UpstreamRequestParameters = None
self._TLSConfigParameters = None
self._ModifyOriginParameters = None
self._HTTPUpstreamTimeoutParameters = None
self._HttpResponseParameters = None
self._ErrorPageParameters = None
self._ModifyResponseHeaderParameters = None
self._ModifyRequestHeaderParameters = None
self._ResponseSpeedLimitParameters = None
self._SetContentIdentifierParameters = None
@property
def Name(self):
"""操作名称。名称需要与参数结构体对应,例如 Name=Cache,则 CacheParameters 必填。
<li>Cache:节点缓存 TTL;</li>
<li>CacheKey:自定义 Cache Key;</li>
<li>CachePrefresh:缓存预刷新;</li>
<li>AccessURLRedirect:访问 URL 重定向;</li>
<li>UpstreamURLRewrite:回源 URL 重写;</li>
<li>QUIC:QUIC;</li>
<li>WebSocket:WebSocket;</li>
<li>Authentication:Token 鉴权;</li>
<li>MaxAge:浏览器缓存 TTL;</li>
<li>StatusCodeCache:状态码缓存 TTL;</li>
<li>OfflineCache:离线缓存;</li>
<li>SmartRouting:智能加速;</li>
<li>RangeOriginPull:分片回源 ;</li>
<li>UpstreamHTTP2:HTTP2 回源;</li>
<li>HostHeader:Host Header 重写;</li>
<li>ForceRedirectHTTPS:访问协议强制 HTTPS 跳转配置;</li>
<li>OriginPullProtocol:回源 HTTPS;</li>
<li>Compression:智能压缩配置;</li>
<li>HSTS:HSTS;</li>
<li>ClientIPHeader:存储客户端请求 IP 的头部信息配置;</li>
<li>OCSPStapling:OCSP 装订;</li>
<li>HTTP2:HTTP2 接入;</li>
<li>PostMaxSize:POST 请求上传文件流式传输最大限制配置;</li>
<li>ClientIPCountry:回源时携带客户端 IP 所属地域信息;</li>
<li>UpstreamFollowRedirect:回源跟随重定向参数配置;</li>
<li>UpstreamRequest:回源请求参数;</li>
<li>TLSConfig:SSL/TLS 安全;</li>
<li>ModifyOrigin:修改源站;</li>
<li>HTTPUpstreamTimeout:七层回源超时配置;</li>
<li>HttpResponse:HTTP 应答;</li>
<li>ErrorPage:自定义错误页面;</li>
<li>ModifyResponseHeader:修改 HTTP 节点响应头;</li>
<li>ModifyRequestHeader:修改 HTTP 节点请求头;</li>
<li>ResponseSpeedLimit:单连接下载限速。</li>
<li>SetContentIdentifierParameters:设置内容标识符。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def CacheParameters(self):
"""节点缓存 TTL 配置参数,当 Name 取值为 Cache 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheParameters`
"""
return self._CacheParameters
@CacheParameters.setter
def CacheParameters(self, CacheParameters):
self._CacheParameters = CacheParameters
@property
def CacheKeyParameters(self):
"""自定义 Cache Key 配置参数,当 Name 取值为 CacheKey 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKeyParameters`
"""
return self._CacheKeyParameters
@CacheKeyParameters.setter
def CacheKeyParameters(self, CacheKeyParameters):
self._CacheKeyParameters = CacheKeyParameters
@property
def CachePrefreshParameters(self):
"""缓存预刷新配置参数,当 Name 取值为 CachePrefresh 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CachePrefreshParameters`
"""
return self._CachePrefreshParameters
@CachePrefreshParameters.setter
def CachePrefreshParameters(self, CachePrefreshParameters):
self._CachePrefreshParameters = CachePrefreshParameters
@property
def AccessURLRedirectParameters(self):
"""访问 URL 重定向配置参数,当 Name 取值为 AccessURLRedirect 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccessURLRedirectParameters`
"""
return self._AccessURLRedirectParameters
@AccessURLRedirectParameters.setter
def AccessURLRedirectParameters(self, AccessURLRedirectParameters):
self._AccessURLRedirectParameters = AccessURLRedirectParameters
@property
def UpstreamURLRewriteParameters(self):
"""回源 URL 重写配置参数,当 Name 取值为 UpstreamURLRewrite 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamURLRewriteParameters`
"""
return self._UpstreamURLRewriteParameters
@UpstreamURLRewriteParameters.setter
def UpstreamURLRewriteParameters(self, UpstreamURLRewriteParameters):
self._UpstreamURLRewriteParameters = UpstreamURLRewriteParameters
@property
def QUICParameters(self):
"""QUIC 配置参数,当 Name 取值为 QUIC 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.QUICParameters`
"""
return self._QUICParameters
@QUICParameters.setter
def QUICParameters(self, QUICParameters):
self._QUICParameters = QUICParameters
@property
def WebSocketParameters(self):
"""WebSocket 配置参数,当 Name 取值为 WebSocket 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.WebSocketParameters`
"""
return self._WebSocketParameters
@WebSocketParameters.setter
def WebSocketParameters(self, WebSocketParameters):
self._WebSocketParameters = WebSocketParameters
@property
def AuthenticationParameters(self):
"""Token 鉴权配置参数,当 Name 取值为 Authentication 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AuthenticationParameters`
"""
return self._AuthenticationParameters
@AuthenticationParameters.setter
def AuthenticationParameters(self, AuthenticationParameters):
self._AuthenticationParameters = AuthenticationParameters
@property
def MaxAgeParameters(self):
"""浏览器缓存 TTL 配置参数,当 Name 取值为 MaxAge 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.MaxAgeParameters`
"""
return self._MaxAgeParameters
@MaxAgeParameters.setter
def MaxAgeParameters(self, MaxAgeParameters):
self._MaxAgeParameters = MaxAgeParameters
@property
def StatusCodeCacheParameters(self):
"""状态码缓存 TTL 配置参数,当 Name 取值为 StatusCodeCache 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.StatusCodeCacheParameters`
"""
return self._StatusCodeCacheParameters
@StatusCodeCacheParameters.setter
def StatusCodeCacheParameters(self, StatusCodeCacheParameters):
self._StatusCodeCacheParameters = StatusCodeCacheParameters
@property
def OfflineCacheParameters(self):
"""离线缓存配置参数,当 Name 取值为 OfflineCache 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OfflineCacheParameters`
"""
return self._OfflineCacheParameters
@OfflineCacheParameters.setter
def OfflineCacheParameters(self, OfflineCacheParameters):
self._OfflineCacheParameters = OfflineCacheParameters
@property
def SmartRoutingParameters(self):
"""智能加速配置参数,当 Name 取值为 SmartRouting 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SmartRoutingParameters`
"""
return self._SmartRoutingParameters
@SmartRoutingParameters.setter
def SmartRoutingParameters(self, SmartRoutingParameters):
self._SmartRoutingParameters = SmartRoutingParameters
@property
def RangeOriginPullParameters(self):
"""分片回源配置参数,当 Name 取值为 RangeOriginPull 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.RangeOriginPullParameters`
"""
return self._RangeOriginPullParameters
@RangeOriginPullParameters.setter
def RangeOriginPullParameters(self, RangeOriginPullParameters):
self._RangeOriginPullParameters = RangeOriginPullParameters
@property
def UpstreamHTTP2Parameters(self):
"""HTTP2 回源配置参数,当 Name 取值为 UpstreamHTTP2 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamHTTP2Parameters`
"""
return self._UpstreamHTTP2Parameters
@UpstreamHTTP2Parameters.setter
def UpstreamHTTP2Parameters(self, UpstreamHTTP2Parameters):
self._UpstreamHTTP2Parameters = UpstreamHTTP2Parameters
@property
def HostHeaderParameters(self):
"""Host Header 重写配置参数,当 Name 取值为 HostHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HostHeaderParameters`
"""
return self._HostHeaderParameters
@HostHeaderParameters.setter
def HostHeaderParameters(self, HostHeaderParameters):
self._HostHeaderParameters = HostHeaderParameters
@property
def ForceRedirectHTTPSParameters(self):
"""访问协议强制 HTTPS 跳转配置,当 Name 取值为 ForceRedirectHTTPS 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ForceRedirectHTTPSParameters`
"""
return self._ForceRedirectHTTPSParameters
@ForceRedirectHTTPSParameters.setter
def ForceRedirectHTTPSParameters(self, ForceRedirectHTTPSParameters):
self._ForceRedirectHTTPSParameters = ForceRedirectHTTPSParameters
@property
def CompressionParameters(self):
"""智能压缩配置,当 Name 取值为 Compression 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CompressionParameters`
"""
return self._CompressionParameters
@CompressionParameters.setter
def CompressionParameters(self, CompressionParameters):
self._CompressionParameters = CompressionParameters
@property
def HSTSParameters(self):
"""HSTS 配置参数,当 Name 取值为 HSTS 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HSTSParameters`
"""
return self._HSTSParameters
@HSTSParameters.setter
def HSTSParameters(self, HSTSParameters):
self._HSTSParameters = HSTSParameters
@property
def ClientIPHeaderParameters(self):
"""存储客户端请求 IP 的头部信息配置,当 Name 取值为 ClientIPHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIPHeaderParameters`
"""
return self._ClientIPHeaderParameters
@ClientIPHeaderParameters.setter
def ClientIPHeaderParameters(self, ClientIPHeaderParameters):
self._ClientIPHeaderParameters = ClientIPHeaderParameters
@property
def OCSPStaplingParameters(self):
"""OCSP 装订配置参数,当 Name 取值为 OCSPStapling 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OCSPStaplingParameters`
"""
return self._OCSPStaplingParameters
@OCSPStaplingParameters.setter
def OCSPStaplingParameters(self, OCSPStaplingParameters):
self._OCSPStaplingParameters = OCSPStaplingParameters
@property
def HTTP2Parameters(self):
"""HTTP2 接入配置参数,当 Name 取值为 HTTP2 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HTTP2Parameters`
"""
return self._HTTP2Parameters
@HTTP2Parameters.setter
def HTTP2Parameters(self, HTTP2Parameters):
self._HTTP2Parameters = HTTP2Parameters
@property
def PostMaxSizeParameters(self):
"""POST 请求上传文件流式传输最大限制配置,当 Name 取值为 PostMaxSize 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.PostMaxSizeParameters`
"""
return self._PostMaxSizeParameters
@PostMaxSizeParameters.setter
def PostMaxSizeParameters(self, PostMaxSizeParameters):
self._PostMaxSizeParameters = PostMaxSizeParameters
@property
def ClientIPCountryParameters(self):
"""回源时携带客户端 IP 所属地域信息配置参数,当 Name 取值为 ClientIPCountry 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIPCountryParameters`
"""
return self._ClientIPCountryParameters
@ClientIPCountryParameters.setter
def ClientIPCountryParameters(self, ClientIPCountryParameters):
self._ClientIPCountryParameters = ClientIPCountryParameters
@property
def UpstreamFollowRedirectParameters(self):
"""回源跟随重定向参数配置,当 Name 取值为 UpstreamFollowRedirect 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamFollowRedirectParameters`
"""
return self._UpstreamFollowRedirectParameters
@UpstreamFollowRedirectParameters.setter
def UpstreamFollowRedirectParameters(self, UpstreamFollowRedirectParameters):
self._UpstreamFollowRedirectParameters = UpstreamFollowRedirectParameters
@property
def UpstreamRequestParameters(self):
"""回源请求参数配置参数,当 Name 取值为 UpstreamRequest 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamRequestParameters`
"""
return self._UpstreamRequestParameters
@UpstreamRequestParameters.setter
def UpstreamRequestParameters(self, UpstreamRequestParameters):
self._UpstreamRequestParameters = UpstreamRequestParameters
@property
def TLSConfigParameters(self):
"""SSL/TLS 安全配置参数,当 Name 取值为 TLSConfig 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.TLSConfigParameters`
"""
return self._TLSConfigParameters
@TLSConfigParameters.setter
def TLSConfigParameters(self, TLSConfigParameters):
self._TLSConfigParameters = TLSConfigParameters
@property
def ModifyOriginParameters(self):
"""修改源站配置参数,当 Name 取值为 ModifyOrigin 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ModifyOriginParameters`
"""
return self._ModifyOriginParameters
@ModifyOriginParameters.setter
def ModifyOriginParameters(self, ModifyOriginParameters):
self._ModifyOriginParameters = ModifyOriginParameters
@property
def HTTPUpstreamTimeoutParameters(self):
"""七层回源超时配置,当 Name 取值为 HTTPUpstreamTimeout 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HTTPUpstreamTimeoutParameters`
"""
return self._HTTPUpstreamTimeoutParameters
@HTTPUpstreamTimeoutParameters.setter
def HTTPUpstreamTimeoutParameters(self, HTTPUpstreamTimeoutParameters):
self._HTTPUpstreamTimeoutParameters = HTTPUpstreamTimeoutParameters
@property
def HttpResponseParameters(self):
"""HTTP 应答配置参数,当 Name 取值为 HttpResponse 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HTTPResponseParameters`
"""
return self._HttpResponseParameters
@HttpResponseParameters.setter
def HttpResponseParameters(self, HttpResponseParameters):
self._HttpResponseParameters = HttpResponseParameters
@property
def ErrorPageParameters(self):
"""自定义错误页面配置参数,当 Name 取值为 ErrorPage 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ErrorPageParameters`
"""
return self._ErrorPageParameters
@ErrorPageParameters.setter
def ErrorPageParameters(self, ErrorPageParameters):
self._ErrorPageParameters = ErrorPageParameters
@property
def ModifyResponseHeaderParameters(self):
"""修改 HTTP 节点响应头配置参数,当 Name 取值为 ModifyResponseHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ModifyResponseHeaderParameters`
"""
return self._ModifyResponseHeaderParameters
@ModifyResponseHeaderParameters.setter
def ModifyResponseHeaderParameters(self, ModifyResponseHeaderParameters):
self._ModifyResponseHeaderParameters = ModifyResponseHeaderParameters
@property
def ModifyRequestHeaderParameters(self):
"""修改 HTTP 节点请求头配置参数,当 Name 取值为 ModifyRequestHeader 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ModifyRequestHeaderParameters`
"""
return self._ModifyRequestHeaderParameters
@ModifyRequestHeaderParameters.setter
def ModifyRequestHeaderParameters(self, ModifyRequestHeaderParameters):
self._ModifyRequestHeaderParameters = ModifyRequestHeaderParameters
@property
def ResponseSpeedLimitParameters(self):
"""单连接下载限速配置参数,当 Name 取值为 ResponseSpeedLimit 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ResponseSpeedLimitParameters`
"""
return self._ResponseSpeedLimitParameters
@ResponseSpeedLimitParameters.setter
def ResponseSpeedLimitParameters(self, ResponseSpeedLimitParameters):
self._ResponseSpeedLimitParameters = ResponseSpeedLimitParameters
@property
def SetContentIdentifierParameters(self):
"""内容标识配置参数,当 Name 取值为 HttpResponse 时,该参数必填。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SetContentIdentifierParameters`
"""
return self._SetContentIdentifierParameters
@SetContentIdentifierParameters.setter
def SetContentIdentifierParameters(self, SetContentIdentifierParameters):
self._SetContentIdentifierParameters = SetContentIdentifierParameters
def _deserialize(self, params):
self._Name = params.get("Name")
if params.get("CacheParameters") is not None:
self._CacheParameters = CacheParameters()
self._CacheParameters._deserialize(params.get("CacheParameters"))
if params.get("CacheKeyParameters") is not None:
self._CacheKeyParameters = CacheKeyParameters()
self._CacheKeyParameters._deserialize(params.get("CacheKeyParameters"))
if params.get("CachePrefreshParameters") is not None:
self._CachePrefreshParameters = CachePrefreshParameters()
self._CachePrefreshParameters._deserialize(params.get("CachePrefreshParameters"))
if params.get("AccessURLRedirectParameters") is not None:
self._AccessURLRedirectParameters = AccessURLRedirectParameters()
self._AccessURLRedirectParameters._deserialize(params.get("AccessURLRedirectParameters"))
if params.get("UpstreamURLRewriteParameters") is not None:
self._UpstreamURLRewriteParameters = UpstreamURLRewriteParameters()
self._UpstreamURLRewriteParameters._deserialize(params.get("UpstreamURLRewriteParameters"))
if params.get("QUICParameters") is not None:
self._QUICParameters = QUICParameters()
self._QUICParameters._deserialize(params.get("QUICParameters"))
if params.get("WebSocketParameters") is not None:
self._WebSocketParameters = WebSocketParameters()
self._WebSocketParameters._deserialize(params.get("WebSocketParameters"))
if params.get("AuthenticationParameters") is not None:
self._AuthenticationParameters = AuthenticationParameters()
self._AuthenticationParameters._deserialize(params.get("AuthenticationParameters"))
if params.get("MaxAgeParameters") is not None:
self._MaxAgeParameters = MaxAgeParameters()
self._MaxAgeParameters._deserialize(params.get("MaxAgeParameters"))
if params.get("StatusCodeCacheParameters") is not None:
self._StatusCodeCacheParameters = StatusCodeCacheParameters()
self._StatusCodeCacheParameters._deserialize(params.get("StatusCodeCacheParameters"))
if params.get("OfflineCacheParameters") is not None:
self._OfflineCacheParameters = OfflineCacheParameters()
self._OfflineCacheParameters._deserialize(params.get("OfflineCacheParameters"))
if params.get("SmartRoutingParameters") is not None:
self._SmartRoutingParameters = SmartRoutingParameters()
self._SmartRoutingParameters._deserialize(params.get("SmartRoutingParameters"))
if params.get("RangeOriginPullParameters") is not None:
self._RangeOriginPullParameters = RangeOriginPullParameters()
self._RangeOriginPullParameters._deserialize(params.get("RangeOriginPullParameters"))
if params.get("UpstreamHTTP2Parameters") is not None:
self._UpstreamHTTP2Parameters = UpstreamHTTP2Parameters()
self._UpstreamHTTP2Parameters._deserialize(params.get("UpstreamHTTP2Parameters"))
if params.get("HostHeaderParameters") is not None:
self._HostHeaderParameters = HostHeaderParameters()
self._HostHeaderParameters._deserialize(params.get("HostHeaderParameters"))
if params.get("ForceRedirectHTTPSParameters") is not None:
self._ForceRedirectHTTPSParameters = ForceRedirectHTTPSParameters()
self._ForceRedirectHTTPSParameters._deserialize(params.get("ForceRedirectHTTPSParameters"))
if params.get("CompressionParameters") is not None:
self._CompressionParameters = CompressionParameters()
self._CompressionParameters._deserialize(params.get("CompressionParameters"))
if params.get("HSTSParameters") is not None:
self._HSTSParameters = HSTSParameters()
self._HSTSParameters._deserialize(params.get("HSTSParameters"))
if params.get("ClientIPHeaderParameters") is not None:
self._ClientIPHeaderParameters = ClientIPHeaderParameters()
self._ClientIPHeaderParameters._deserialize(params.get("ClientIPHeaderParameters"))
if params.get("OCSPStaplingParameters") is not None:
self._OCSPStaplingParameters = OCSPStaplingParameters()
self._OCSPStaplingParameters._deserialize(params.get("OCSPStaplingParameters"))
if params.get("HTTP2Parameters") is not None:
self._HTTP2Parameters = HTTP2Parameters()
self._HTTP2Parameters._deserialize(params.get("HTTP2Parameters"))
if params.get("PostMaxSizeParameters") is not None:
self._PostMaxSizeParameters = PostMaxSizeParameters()
self._PostMaxSizeParameters._deserialize(params.get("PostMaxSizeParameters"))
if params.get("ClientIPCountryParameters") is not None:
self._ClientIPCountryParameters = ClientIPCountryParameters()
self._ClientIPCountryParameters._deserialize(params.get("ClientIPCountryParameters"))
if params.get("UpstreamFollowRedirectParameters") is not None:
self._UpstreamFollowRedirectParameters = UpstreamFollowRedirectParameters()
self._UpstreamFollowRedirectParameters._deserialize(params.get("UpstreamFollowRedirectParameters"))
if params.get("UpstreamRequestParameters") is not None:
self._UpstreamRequestParameters = UpstreamRequestParameters()
self._UpstreamRequestParameters._deserialize(params.get("UpstreamRequestParameters"))
if params.get("TLSConfigParameters") is not None:
self._TLSConfigParameters = TLSConfigParameters()
self._TLSConfigParameters._deserialize(params.get("TLSConfigParameters"))
if params.get("ModifyOriginParameters") is not None:
self._ModifyOriginParameters = ModifyOriginParameters()
self._ModifyOriginParameters._deserialize(params.get("ModifyOriginParameters"))
if params.get("HTTPUpstreamTimeoutParameters") is not None:
self._HTTPUpstreamTimeoutParameters = HTTPUpstreamTimeoutParameters()
self._HTTPUpstreamTimeoutParameters._deserialize(params.get("HTTPUpstreamTimeoutParameters"))
if params.get("HttpResponseParameters") is not None:
self._HttpResponseParameters = HTTPResponseParameters()
self._HttpResponseParameters._deserialize(params.get("HttpResponseParameters"))
if params.get("ErrorPageParameters") is not None:
self._ErrorPageParameters = ErrorPageParameters()
self._ErrorPageParameters._deserialize(params.get("ErrorPageParameters"))
if params.get("ModifyResponseHeaderParameters") is not None:
self._ModifyResponseHeaderParameters = ModifyResponseHeaderParameters()
self._ModifyResponseHeaderParameters._deserialize(params.get("ModifyResponseHeaderParameters"))
if params.get("ModifyRequestHeaderParameters") is not None:
self._ModifyRequestHeaderParameters = ModifyRequestHeaderParameters()
self._ModifyRequestHeaderParameters._deserialize(params.get("ModifyRequestHeaderParameters"))
if params.get("ResponseSpeedLimitParameters") is not None:
self._ResponseSpeedLimitParameters = ResponseSpeedLimitParameters()
self._ResponseSpeedLimitParameters._deserialize(params.get("ResponseSpeedLimitParameters"))
if params.get("SetContentIdentifierParameters") is not None:
self._SetContentIdentifierParameters = SetContentIdentifierParameters()
self._SetContentIdentifierParameters._deserialize(params.get("SetContentIdentifierParameters"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleEngineItem(AbstractModel):
"""规则引擎规则详情。
"""
def __init__(self):
r"""
:param _Status: 规则状态。取值有:<li> enable: 启用; </li><li> disable: 未启用。</li>
:type Status: str
:param _RuleId: 规则 ID。规则的唯一性标识,当调用 ModifyL7AccRules 时,该参数必填。
:type RuleId: str
:param _RuleName: 规则名称。名称长度限制不超过 255 个字符。
:type RuleName: str
:param _Description: 规则注释。可以填写多个注释。
:type Description: list of str
:param _Branches: 子规则分支。此列表当前只支持填写一项规则,多填无效。
注意:此字段可能返回 null,表示取不到有效值。
:type Branches: list of RuleBranch
:param _RulePriority: 规则优先级。仅作为出参使用。
:type RulePriority: int
"""
self._Status = None
self._RuleId = None
self._RuleName = None
self._Description = None
self._Branches = None
self._RulePriority = None
@property
def Status(self):
"""规则状态。取值有:<li> enable: 启用; </li><li> disable: 未启用。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def RuleId(self):
"""规则 ID。规则的唯一性标识,当调用 ModifyL7AccRules 时,该参数必填。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def RuleName(self):
"""规则名称。名称长度限制不超过 255 个字符。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Description(self):
"""规则注释。可以填写多个注释。
:rtype: list of str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
@property
def Branches(self):
"""子规则分支。此列表当前只支持填写一项规则,多填无效。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of RuleBranch
"""
return self._Branches
@Branches.setter
def Branches(self, Branches):
self._Branches = Branches
@property
def RulePriority(self):
"""规则优先级。仅作为出参使用。
:rtype: int
"""
return self._RulePriority
@RulePriority.setter
def RulePriority(self, RulePriority):
self._RulePriority = RulePriority
def _deserialize(self, params):
self._Status = params.get("Status")
self._RuleId = params.get("RuleId")
self._RuleName = params.get("RuleName")
self._Description = params.get("Description")
if params.get("Branches") is not None:
self._Branches = []
for item in params.get("Branches"):
obj = RuleBranch()
obj._deserialize(item)
self._Branches.append(obj)
self._RulePriority = params.get("RulePriority")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleEngineSubRule(AbstractModel):
"""子规则。
"""
def __init__(self):
r"""
:param _Branches: 子规则分支
注意:此字段可能返回 null,表示取不到有效值。
:type Branches: list of RuleBranch
:param _Description: 规则注释。
:type Description: list of str
"""
self._Branches = None
self._Description = None
@property
def Branches(self):
"""子规则分支
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of RuleBranch
"""
return self._Branches
@Branches.setter
def Branches(self, Branches):
self._Branches = Branches
@property
def Description(self):
"""规则注释。
:rtype: list of str
"""
return self._Description
@Description.setter
def Description(self, Description):
self._Description = Description
def _deserialize(self, params):
if params.get("Branches") is not None:
self._Branches = []
for item in params.get("Branches"):
obj = RuleBranch()
obj._deserialize(item)
self._Branches.append(obj)
self._Description = params.get("Description")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleExtraParameter(AbstractModel):
"""规则引擎参数详情信息,特殊参数类型。
"""
def __init__(self):
r"""
:param _Id: 参数名,取值有:
<li> Action:修改 HTTP 头部所需参数,RuleAction 选择 RewirteAction;</li>
<li> StatusCode:状态码相关功能所需参数,RuleAction 选择 CodeAction。</li>
:type Id: str
:param _Type: 参数值类型。
<li> CHOICE:参数值只能在 Values 中选择; </li>
<li> CUSTOM_NUM:参数值用户自定义,整型类型;</li>
<li> CUSTOM_STRING:参数值用户自定义,字符串类型。</li>
:type Type: str
:param _Choices: 可选参数值。
注意:当 Id 的值为 StatusCode 时数组中的值为整型,填写参数值时请填写字符串的整型数值。
:type Choices: list of str
"""
self._Id = None
self._Type = None
self._Choices = None
@property
def Id(self):
"""参数名,取值有:
<li> Action:修改 HTTP 头部所需参数,RuleAction 选择 RewirteAction;</li>
<li> StatusCode:状态码相关功能所需参数,RuleAction 选择 CodeAction。</li>
:rtype: str
"""
return self._Id
@Id.setter
def Id(self, Id):
self._Id = Id
@property
def Type(self):
"""参数值类型。
<li> CHOICE:参数值只能在 Values 中选择; </li>
<li> CUSTOM_NUM:参数值用户自定义,整型类型;</li>
<li> CUSTOM_STRING:参数值用户自定义,字符串类型。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Choices(self):
"""可选参数值。
注意:当 Id 的值为 StatusCode 时数组中的值为整型,填写参数值时请填写字符串的整型数值。
:rtype: list of str
"""
return self._Choices
@Choices.setter
def Choices(self, Choices):
self._Choices = Choices
def _deserialize(self, params):
self._Id = params.get("Id")
self._Type = params.get("Type")
self._Choices = params.get("Choices")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleItem(AbstractModel):
"""规则引擎规则详情
"""
def __init__(self):
r"""
:param _RuleId: 规则ID。
:type RuleId: str
:param _RuleName: 规则名称,名称字符串长度 1~255。
:type RuleName: str
:param _Status: 规则状态,取值有:
<li> enable: 启用; </li>
<li> disable: 未启用。 </li>
:type Status: str
:param _Rules: 规则内容。
:type Rules: list of Rule
:param _RulePriority: 规则优先级, 值越大优先级越高,最小为 1。
:type RulePriority: int
:param _Tags: 规则标签。
:type Tags: list of str
"""
self._RuleId = None
self._RuleName = None
self._Status = None
self._Rules = None
self._RulePriority = None
self._Tags = None
@property
def RuleId(self):
"""规则ID。
:rtype: str
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
@property
def RuleName(self):
"""规则名称,名称字符串长度 1~255。
:rtype: str
"""
return self._RuleName
@RuleName.setter
def RuleName(self, RuleName):
self._RuleName = RuleName
@property
def Status(self):
"""规则状态,取值有:
<li> enable: 启用; </li>
<li> disable: 未启用。 </li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Rules(self):
"""规则内容。
:rtype: list of Rule
"""
return self._Rules
@Rules.setter
def Rules(self, Rules):
self._Rules = Rules
@property
def RulePriority(self):
"""规则优先级, 值越大优先级越高,最小为 1。
:rtype: int
"""
return self._RulePriority
@RulePriority.setter
def RulePriority(self, RulePriority):
self._RulePriority = RulePriority
@property
def Tags(self):
"""规则标签。
:rtype: list of str
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
def _deserialize(self, params):
self._RuleId = params.get("RuleId")
self._RuleName = params.get("RuleName")
self._Status = params.get("Status")
if params.get("Rules") is not None:
self._Rules = []
for item in params.get("Rules"):
obj = Rule()
obj._deserialize(item)
self._Rules.append(obj)
self._RulePriority = params.get("RulePriority")
self._Tags = params.get("Tags")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleNormalActionParams(AbstractModel):
"""规则引擎条件常规动作参数
"""
def __init__(self):
r"""
:param _Name: 参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:type Name: str
:param _Values: 参数值。
:type Values: list of str
"""
self._Name = None
self._Values = None
@property
def Name(self):
"""参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Values(self):
"""参数值。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Name = params.get("Name")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RuleRewriteActionParams(AbstractModel):
"""规则引擎条件 HTTP 请求/响应头操作动作参数。
"""
def __init__(self):
r"""
:param _Action: 功能参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。现在只有三种取值:
<li> add:添加 HTTP 头部;</li>
<li> set:重写 HTTP 头部;</li>
<li> del:删除 HTTP 头部。</li>
:type Action: str
:param _Name: 参数名称。
:type Name: str
:param _Values: 参数值。
:type Values: list of str
"""
self._Action = None
self._Name = None
self._Values = None
@property
def Action(self):
"""功能参数名称,参数填写规范可调用接口 [查询规则引擎的设置参数](https://cloud.tencent.com/document/product/1552/80618) 查看。现在只有三种取值:
<li> add:添加 HTTP 头部;</li>
<li> set:重写 HTTP 头部;</li>
<li> del:删除 HTTP 头部。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Name(self):
"""参数名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Values(self):
"""参数值。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Action = params.get("Action")
self._Name = params.get("Name")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RulesProperties(AbstractModel):
"""规则引擎可应用于匹配请求的设置详细信息。
"""
def __init__(self):
r"""
:param _Name: 值为参数名称。
:type Name: str
:param _Min: 数值参数的最小值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:type Min: int
:param _ChoicesValue: 参数值的可选值。
注意:若参数值为用户自定义则该数组为空数组。
:type ChoicesValue: list of str
:param _Type: 参数值类型。
<li> CHOICE:参数值只能在 ChoicesValue 中选择; </li>
<li> TOGGLE:参数值为开关类型,可在 ChoicesValue 中选择;</li>
<li> OBJECT:参数值为对象类型,ChoiceProperties 为改对象类型关联的属性;</li>
<li> CUSTOM_NUM:参数值用户自定义,整型类型;</li>
<li> CUSTOM_STRING:参数值用户自定义,字符串类型。</li>注意:当参数类型为 OBJECT 类型时,请注意参考 [示例2 参数为 OBJECT 类型的创建](https://cloud.tencent.com/document/product/1552/80622#.E7.A4.BA.E4.BE.8B2-.E4.BF.AE.E6.94.B9.E6.BA.90.E7.AB.99.E4.B8.BAIP.E5.9F.9F.E5.90.8D)
:type Type: str
:param _Max: 数值参数的最大值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:type Max: int
:param _IsMultiple: 参数值是否支持多选或者填写多个。
:type IsMultiple: bool
:param _IsAllowEmpty: 是否允许为空。
:type IsAllowEmpty: bool
:param _ChoiceProperties: 该参数对应的关联配置参数,属于调用接口的必填参数。
注意:如果可选参数无特殊新增参数则该数组为空数组。
:type ChoiceProperties: list of RuleChoicePropertiesItem
:param _ExtraParameter: <li> 为 NULL:无特殊参数,RuleAction 选择 NormalAction;</li>
注意:此字段可能返回 null,表示取不到有效值。
:type ExtraParameter: :class:`tencentcloud.teo.v20220901.models.RuleExtraParameter`
"""
self._Name = None
self._Min = None
self._ChoicesValue = None
self._Type = None
self._Max = None
self._IsMultiple = None
self._IsAllowEmpty = None
self._ChoiceProperties = None
self._ExtraParameter = None
@property
def Name(self):
"""值为参数名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Min(self):
"""数值参数的最小值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:rtype: int
"""
return self._Min
@Min.setter
def Min(self, Min):
self._Min = Min
@property
def ChoicesValue(self):
"""参数值的可选值。
注意:若参数值为用户自定义则该数组为空数组。
:rtype: list of str
"""
return self._ChoicesValue
@ChoicesValue.setter
def ChoicesValue(self, ChoicesValue):
self._ChoicesValue = ChoicesValue
@property
def Type(self):
"""参数值类型。
<li> CHOICE:参数值只能在 ChoicesValue 中选择; </li>
<li> TOGGLE:参数值为开关类型,可在 ChoicesValue 中选择;</li>
<li> OBJECT:参数值为对象类型,ChoiceProperties 为改对象类型关联的属性;</li>
<li> CUSTOM_NUM:参数值用户自定义,整型类型;</li>
<li> CUSTOM_STRING:参数值用户自定义,字符串类型。</li>注意:当参数类型为 OBJECT 类型时,请注意参考 [示例2 参数为 OBJECT 类型的创建](https://cloud.tencent.com/document/product/1552/80622#.E7.A4.BA.E4.BE.8B2-.E4.BF.AE.E6.94.B9.E6.BA.90.E7.AB.99.E4.B8.BAIP.E5.9F.9F.E5.90.8D)
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Max(self):
"""数值参数的最大值,非数值参数或 Min 和 Max 值都为 0 则此项无意义。
:rtype: int
"""
return self._Max
@Max.setter
def Max(self, Max):
self._Max = Max
@property
def IsMultiple(self):
"""参数值是否支持多选或者填写多个。
:rtype: bool
"""
return self._IsMultiple
@IsMultiple.setter
def IsMultiple(self, IsMultiple):
self._IsMultiple = IsMultiple
@property
def IsAllowEmpty(self):
"""是否允许为空。
:rtype: bool
"""
return self._IsAllowEmpty
@IsAllowEmpty.setter
def IsAllowEmpty(self, IsAllowEmpty):
self._IsAllowEmpty = IsAllowEmpty
@property
def ChoiceProperties(self):
"""该参数对应的关联配置参数,属于调用接口的必填参数。
注意:如果可选参数无特殊新增参数则该数组为空数组。
:rtype: list of RuleChoicePropertiesItem
"""
return self._ChoiceProperties
@ChoiceProperties.setter
def ChoiceProperties(self, ChoiceProperties):
self._ChoiceProperties = ChoiceProperties
@property
def ExtraParameter(self):
"""<li> 为 NULL:无特殊参数,RuleAction 选择 NormalAction;</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.RuleExtraParameter`
"""
return self._ExtraParameter
@ExtraParameter.setter
def ExtraParameter(self, ExtraParameter):
self._ExtraParameter = ExtraParameter
def _deserialize(self, params):
self._Name = params.get("Name")
self._Min = params.get("Min")
self._ChoicesValue = params.get("ChoicesValue")
self._Type = params.get("Type")
self._Max = params.get("Max")
self._IsMultiple = params.get("IsMultiple")
self._IsAllowEmpty = params.get("IsAllowEmpty")
if params.get("ChoiceProperties") is not None:
self._ChoiceProperties = []
for item in params.get("ChoiceProperties"):
obj = RuleChoicePropertiesItem()
obj._deserialize(item)
self._ChoiceProperties.append(obj)
if params.get("ExtraParameter") is not None:
self._ExtraParameter = RuleExtraParameter()
self._ExtraParameter._deserialize(params.get("ExtraParameter"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class RulesSettingAction(AbstractModel):
"""规则引擎可应用于匹配请求的设置列表及其详细信息
"""
def __init__(self):
r"""
:param _Action: 功能名称,取值有:
<li> 访问URL 重写(AccessUrlRedirect);</li>
<li> 回源 URL 重写 (UpstreamUrlRedirect);</li>
<li> 自定义错误页面
(ErrorPage);</li>
<li> QUIC(QUIC);</li>
<li> WebSocket (WebSocket);</li>
<li> 视频拖拽(VideoSeek);</li>
<li> Token 鉴权(Authentication);</li>
<li> 自定义CacheKey(CacheKey);</li>
<li> 节点缓存 TTL (Cache);</li>
<li> 浏览器缓存 TTL(MaxAge);</li>
<li> 离线缓存(OfflineCache);</li>
<li> 智能加速(SmartRouting);</li>
<li> 分片回源(RangeOriginPull);</li>
<li> HTTP/2 回源(UpstreamHttp2);</li>
<li> Host Header 重写(HostHeader);</li>
<li> 强制 HTTPS(ForceRedirect);</li>
<li> 回源 HTTPS(OriginPullProtocol);</li>
<li> 缓存预刷新(CachePrefresh);</li>
<li> 智能压缩(Compression);</li>
<li> 修改 HTTP 请求头(RequestHeader);</li>
<li> 修改HTTP响应头(ResponseHeader);</li>
<li> 状态码缓存 TTL(StatusCodeCache);</li>
<li> Hsts;</li>
<li> ClientIpHeader;</li>
<li> TlsVersion;</li>
<li> OcspStapling。</li>
:type Action: str
:param _Properties: 参数信息。
:type Properties: list of RulesProperties
"""
self._Action = None
self._Properties = None
@property
def Action(self):
"""功能名称,取值有:
<li> 访问URL 重写(AccessUrlRedirect);</li>
<li> 回源 URL 重写 (UpstreamUrlRedirect);</li>
<li> 自定义错误页面
(ErrorPage);</li>
<li> QUIC(QUIC);</li>
<li> WebSocket (WebSocket);</li>
<li> 视频拖拽(VideoSeek);</li>
<li> Token 鉴权(Authentication);</li>
<li> 自定义CacheKey(CacheKey);</li>
<li> 节点缓存 TTL (Cache);</li>
<li> 浏览器缓存 TTL(MaxAge);</li>
<li> 离线缓存(OfflineCache);</li>
<li> 智能加速(SmartRouting);</li>
<li> 分片回源(RangeOriginPull);</li>
<li> HTTP/2 回源(UpstreamHttp2);</li>
<li> Host Header 重写(HostHeader);</li>
<li> 强制 HTTPS(ForceRedirect);</li>
<li> 回源 HTTPS(OriginPullProtocol);</li>
<li> 缓存预刷新(CachePrefresh);</li>
<li> 智能压缩(Compression);</li>
<li> 修改 HTTP 请求头(RequestHeader);</li>
<li> 修改HTTP响应头(ResponseHeader);</li>
<li> 状态码缓存 TTL(StatusCodeCache);</li>
<li> Hsts;</li>
<li> ClientIpHeader;</li>
<li> TlsVersion;</li>
<li> OcspStapling。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Properties(self):
"""参数信息。
:rtype: list of RulesProperties
"""
return self._Properties
@Properties.setter
def Properties(self, Properties):
self._Properties = Properties
def _deserialize(self, params):
self._Action = params.get("Action")
if params.get("Properties") is not None:
self._Properties = []
for item in params.get("Properties"):
obj = RulesProperties()
obj._deserialize(item)
self._Properties.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class S3(AbstractModel):
"""实时日志投递到 AWS S3 兼容存储桶的配置信息。
"""
def __init__(self):
r"""
:param _Endpoint: 不包含存储桶名称或路径的 URL,例如:`https://storage.googleapis.com`、`https://s3.ap-northeast-2.amazonaws.com`、`https://cos.ap-nanjing.myqcloud.com`。
:type Endpoint: str
:param _Region: 存储桶所在的地域,例如:`ap-northeast-2`。
:type Region: str
:param _Bucket: 存储桶名称和日志存储目录,例如:`your_bucket_name/EO-logs/`。如果存储桶中无此目录则会自动创建。
:type Bucket: str
:param _AccessId: 访问存储桶使用的 Access Key ID。
:type AccessId: str
:param _AccessKey: 访问存储桶使用的 secret key。
:type AccessKey: str
:param _CompressType: 数据压缩类型,取值有: <li> gzip:gzip压缩。</li>不填表示不启用压缩。
:type CompressType: str
"""
self._Endpoint = None
self._Region = None
self._Bucket = None
self._AccessId = None
self._AccessKey = None
self._CompressType = None
@property
def Endpoint(self):
"""不包含存储桶名称或路径的 URL,例如:`https://storage.googleapis.com`、`https://s3.ap-northeast-2.amazonaws.com`、`https://cos.ap-nanjing.myqcloud.com`。
:rtype: str
"""
return self._Endpoint
@Endpoint.setter
def Endpoint(self, Endpoint):
self._Endpoint = Endpoint
@property
def Region(self):
"""存储桶所在的地域,例如:`ap-northeast-2`。
:rtype: str
"""
return self._Region
@Region.setter
def Region(self, Region):
self._Region = Region
@property
def Bucket(self):
"""存储桶名称和日志存储目录,例如:`your_bucket_name/EO-logs/`。如果存储桶中无此目录则会自动创建。
:rtype: str
"""
return self._Bucket
@Bucket.setter
def Bucket(self, Bucket):
self._Bucket = Bucket
@property
def AccessId(self):
"""访问存储桶使用的 Access Key ID。
:rtype: str
"""
return self._AccessId
@AccessId.setter
def AccessId(self, AccessId):
self._AccessId = AccessId
@property
def AccessKey(self):
"""访问存储桶使用的 secret key。
:rtype: str
"""
return self._AccessKey
@AccessKey.setter
def AccessKey(self, AccessKey):
self._AccessKey = AccessKey
@property
def CompressType(self):
"""数据压缩类型,取值有: <li> gzip:gzip压缩。</li>不填表示不启用压缩。
:rtype: str
"""
return self._CompressType
@CompressType.setter
def CompressType(self, CompressType):
self._CompressType = CompressType
def _deserialize(self, params):
self._Endpoint = params.get("Endpoint")
self._Region = params.get("Region")
self._Bucket = params.get("Bucket")
self._AccessId = params.get("AccessId")
self._AccessKey = params.get("AccessKey")
self._CompressType = params.get("CompressType")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SecEntry(AbstractModel):
"""安全数据Entry返回值
"""
def __init__(self):
r"""
:param _Key: 查询维度值。
:type Key: str
:param _Value: 查询维度下详细数据。
:type Value: list of SecEntryValue
"""
self._Key = None
self._Value = None
@property
def Key(self):
"""查询维度值。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Value(self):
"""查询维度下详细数据。
:rtype: list of SecEntryValue
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Key = params.get("Key")
if params.get("Value") is not None:
self._Value = []
for item in params.get("Value"):
obj = SecEntryValue()
obj._deserialize(item)
self._Value.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SecEntryValue(AbstractModel):
"""安全数据维度值信息
"""
def __init__(self):
r"""
:param _Metric: 指标名称。
:type Metric: str
:param _Detail: 时序数据详情。
:type Detail: list of TimingDataItem
:param _Max: 最大值。
:type Max: int
:param _Avg: 平均值。
:type Avg: float
:param _Sum: 数据总和。
:type Sum: float
"""
self._Metric = None
self._Detail = None
self._Max = None
self._Avg = None
self._Sum = None
@property
def Metric(self):
"""指标名称。
:rtype: str
"""
return self._Metric
@Metric.setter
def Metric(self, Metric):
self._Metric = Metric
@property
def Detail(self):
"""时序数据详情。
:rtype: list of TimingDataItem
"""
return self._Detail
@Detail.setter
def Detail(self, Detail):
self._Detail = Detail
@property
def Max(self):
"""最大值。
:rtype: int
"""
return self._Max
@Max.setter
def Max(self, Max):
self._Max = Max
@property
def Avg(self):
"""平均值。
:rtype: float
"""
return self._Avg
@Avg.setter
def Avg(self, Avg):
self._Avg = Avg
@property
def Sum(self):
"""数据总和。
:rtype: float
"""
return self._Sum
@Sum.setter
def Sum(self, Sum):
self._Sum = Sum
def _deserialize(self, params):
self._Metric = params.get("Metric")
if params.get("Detail") is not None:
self._Detail = []
for item in params.get("Detail"):
obj = TimingDataItem()
obj._deserialize(item)
self._Detail.append(obj)
self._Max = params.get("Max")
self._Avg = params.get("Avg")
self._Sum = params.get("Sum")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SecurityConfig(AbstractModel):
"""安全配置
"""
def __init__(self):
r"""
:param _WafConfig: 托管规则。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type WafConfig: :class:`tencentcloud.teo.v20220901.models.WafConfig`
:param _RateLimitConfig: 速率限制。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type RateLimitConfig: :class:`tencentcloud.teo.v20220901.models.RateLimitConfig`
:param _AclConfig: 自定义规则。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type AclConfig: :class:`tencentcloud.teo.v20220901.models.AclConfig`
:param _BotConfig: Bot配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type BotConfig: :class:`tencentcloud.teo.v20220901.models.BotConfig`
:param _SwitchConfig: 七层防护总开关。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type SwitchConfig: :class:`tencentcloud.teo.v20220901.models.SwitchConfig`
:param _IpTableConfig: 基础访问管控。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type IpTableConfig: :class:`tencentcloud.teo.v20220901.models.IpTableConfig`
:param _ExceptConfig: 例外规则配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ExceptConfig: :class:`tencentcloud.teo.v20220901.models.ExceptConfig`
:param _DropPageConfig: 自定义拦截页面配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type DropPageConfig: :class:`tencentcloud.teo.v20220901.models.DropPageConfig`
:param _TemplateConfig: 模板配置。此处仅出参数使用。
注意:此字段可能返回 null,表示取不到有效值。
:type TemplateConfig: :class:`tencentcloud.teo.v20220901.models.TemplateConfig`
:param _SlowPostConfig: 慢速攻击配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:type SlowPostConfig: :class:`tencentcloud.teo.v20220901.models.SlowPostConfig`
"""
self._WafConfig = None
self._RateLimitConfig = None
self._AclConfig = None
self._BotConfig = None
self._SwitchConfig = None
self._IpTableConfig = None
self._ExceptConfig = None
self._DropPageConfig = None
self._TemplateConfig = None
self._SlowPostConfig = None
@property
def WafConfig(self):
"""托管规则。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.WafConfig`
"""
return self._WafConfig
@WafConfig.setter
def WafConfig(self, WafConfig):
self._WafConfig = WafConfig
@property
def RateLimitConfig(self):
"""速率限制。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.RateLimitConfig`
"""
return self._RateLimitConfig
@RateLimitConfig.setter
def RateLimitConfig(self, RateLimitConfig):
self._RateLimitConfig = RateLimitConfig
@property
def AclConfig(self):
"""自定义规则。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AclConfig`
"""
return self._AclConfig
@AclConfig.setter
def AclConfig(self, AclConfig):
self._AclConfig = AclConfig
@property
def BotConfig(self):
"""Bot配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.BotConfig`
"""
return self._BotConfig
@BotConfig.setter
def BotConfig(self, BotConfig):
self._BotConfig = BotConfig
@property
def SwitchConfig(self):
"""七层防护总开关。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SwitchConfig`
"""
return self._SwitchConfig
@SwitchConfig.setter
def SwitchConfig(self, SwitchConfig):
self._SwitchConfig = SwitchConfig
@property
def IpTableConfig(self):
"""基础访问管控。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.IpTableConfig`
"""
return self._IpTableConfig
@IpTableConfig.setter
def IpTableConfig(self, IpTableConfig):
self._IpTableConfig = IpTableConfig
@property
def ExceptConfig(self):
"""例外规则配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ExceptConfig`
"""
return self._ExceptConfig
@ExceptConfig.setter
def ExceptConfig(self, ExceptConfig):
self._ExceptConfig = ExceptConfig
@property
def DropPageConfig(self):
"""自定义拦截页面配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.DropPageConfig`
"""
return self._DropPageConfig
@DropPageConfig.setter
def DropPageConfig(self, DropPageConfig):
self._DropPageConfig = DropPageConfig
@property
def TemplateConfig(self):
"""模板配置。此处仅出参数使用。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.TemplateConfig`
"""
return self._TemplateConfig
@TemplateConfig.setter
def TemplateConfig(self, TemplateConfig):
self._TemplateConfig = TemplateConfig
@property
def SlowPostConfig(self):
"""慢速攻击配置。如果入参为空或不填,默认使用历史配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SlowPostConfig`
"""
return self._SlowPostConfig
@SlowPostConfig.setter
def SlowPostConfig(self, SlowPostConfig):
self._SlowPostConfig = SlowPostConfig
def _deserialize(self, params):
if params.get("WafConfig") is not None:
self._WafConfig = WafConfig()
self._WafConfig._deserialize(params.get("WafConfig"))
if params.get("RateLimitConfig") is not None:
self._RateLimitConfig = RateLimitConfig()
self._RateLimitConfig._deserialize(params.get("RateLimitConfig"))
if params.get("AclConfig") is not None:
self._AclConfig = AclConfig()
self._AclConfig._deserialize(params.get("AclConfig"))
if params.get("BotConfig") is not None:
self._BotConfig = BotConfig()
self._BotConfig._deserialize(params.get("BotConfig"))
if params.get("SwitchConfig") is not None:
self._SwitchConfig = SwitchConfig()
self._SwitchConfig._deserialize(params.get("SwitchConfig"))
if params.get("IpTableConfig") is not None:
self._IpTableConfig = IpTableConfig()
self._IpTableConfig._deserialize(params.get("IpTableConfig"))
if params.get("ExceptConfig") is not None:
self._ExceptConfig = ExceptConfig()
self._ExceptConfig._deserialize(params.get("ExceptConfig"))
if params.get("DropPageConfig") is not None:
self._DropPageConfig = DropPageConfig()
self._DropPageConfig._deserialize(params.get("DropPageConfig"))
if params.get("TemplateConfig") is not None:
self._TemplateConfig = TemplateConfig()
self._TemplateConfig._deserialize(params.get("TemplateConfig"))
if params.get("SlowPostConfig") is not None:
self._SlowPostConfig = SlowPostConfig()
self._SlowPostConfig._deserialize(params.get("SlowPostConfig"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SecurityTemplateBinding(AbstractModel):
"""安全策略模板的绑定关系。
"""
def __init__(self):
r"""
:param _TemplateId: 模板ID
:type TemplateId: str
:param _TemplateScope: 模板绑定状态。
:type TemplateScope: list of TemplateScope
"""
self._TemplateId = None
self._TemplateScope = None
@property
def TemplateId(self):
"""模板ID
:rtype: str
"""
return self._TemplateId
@TemplateId.setter
def TemplateId(self, TemplateId):
self._TemplateId = TemplateId
@property
def TemplateScope(self):
"""模板绑定状态。
:rtype: list of TemplateScope
"""
return self._TemplateScope
@TemplateScope.setter
def TemplateScope(self, TemplateScope):
self._TemplateScope = TemplateScope
def _deserialize(self, params):
self._TemplateId = params.get("TemplateId")
if params.get("TemplateScope") is not None:
self._TemplateScope = []
for item in params.get("TemplateScope"):
obj = TemplateScope()
obj._deserialize(item)
self._TemplateScope.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SecurityType(AbstractModel):
"""安全类型配置项。
"""
def __init__(self):
r"""
:param _Switch: 安全类型开关,取值为:
<li> on:开启;</li>
<li> off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""安全类型开关,取值为:
<li> on:开启;</li>
<li> off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ServerCertInfo(AbstractModel):
"""https 服务端证书配置
"""
def __init__(self):
r"""
:param _CertId: 服务器证书 ID。来源于 SSL 侧,您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
注意:此字段可能返回 null,表示取不到有效值。
:type CertId: str
:param _Alias: 证书备注名。
注意:此字段可能返回 null,表示取不到有效值。
:type Alias: str
:param _Type: 证书类型,取值有:
<li>default:默认证书;</li>
<li>upload:用户上传;</li>
<li>managed:腾讯云托管。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Type: str
:param _ExpireTime: 证书过期时间。
注意:此字段可能返回 null,表示取不到有效值。
:type ExpireTime: str
:param _DeployTime: 证书部署时间。
注意:此字段可能返回 null,表示取不到有效值。
:type DeployTime: str
:param _SignAlgo: 签名算法。
注意:此字段可能返回 null,表示取不到有效值。
:type SignAlgo: str
:param _CommonName: 证书归属域名名称。
注意:此字段可能返回 null,表示取不到有效值。
:type CommonName: str
"""
self._CertId = None
self._Alias = None
self._Type = None
self._ExpireTime = None
self._DeployTime = None
self._SignAlgo = None
self._CommonName = None
@property
def CertId(self):
"""服务器证书 ID。来源于 SSL 侧,您可以前往 [SSL 证书列表](https://console.cloud.tencent.com/ssl) 查看 CertId。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._CertId
@CertId.setter
def CertId(self, CertId):
self._CertId = CertId
@property
def Alias(self):
"""证书备注名。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Alias
@Alias.setter
def Alias(self, Alias):
self._Alias = Alias
@property
def Type(self):
"""证书类型,取值有:
<li>default:默认证书;</li>
<li>upload:用户上传;</li>
<li>managed:腾讯云托管。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def ExpireTime(self):
"""证书过期时间。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._ExpireTime
@ExpireTime.setter
def ExpireTime(self, ExpireTime):
self._ExpireTime = ExpireTime
@property
def DeployTime(self):
"""证书部署时间。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._DeployTime
@DeployTime.setter
def DeployTime(self, DeployTime):
self._DeployTime = DeployTime
@property
def SignAlgo(self):
"""签名算法。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._SignAlgo
@SignAlgo.setter
def SignAlgo(self, SignAlgo):
self._SignAlgo = SignAlgo
@property
def CommonName(self):
"""证书归属域名名称。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._CommonName
@CommonName.setter
def CommonName(self, CommonName):
self._CommonName = CommonName
def _deserialize(self, params):
self._CertId = params.get("CertId")
self._Alias = params.get("Alias")
self._Type = params.get("Type")
self._ExpireTime = params.get("ExpireTime")
self._DeployTime = params.get("DeployTime")
self._SignAlgo = params.get("SignAlgo")
self._CommonName = params.get("CommonName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SetContentIdentifierParameters(AbstractModel):
"""内容标识配置参数。
"""
def __init__(self):
r"""
:param _ContentIdentifier: 内容标识id
:type ContentIdentifier: str
"""
self._ContentIdentifier = None
@property
def ContentIdentifier(self):
"""内容标识id
:rtype: str
"""
return self._ContentIdentifier
@ContentIdentifier.setter
def ContentIdentifier(self, ContentIdentifier):
self._ContentIdentifier = ContentIdentifier
def _deserialize(self, params):
self._ContentIdentifier = params.get("ContentIdentifier")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SkipCondition(AbstractModel):
"""例外规则的跳过匹配条件,即在例外时根据本匹配条件,略过指定字段及内容。
"""
def __init__(self):
r"""
:param _Type: 例外跳过类型,取值为:
<li>header_fields:HTTP请求Header;</li>
<li>cookie:HTTP请求Cookie;</li>
<li>query_string:HTTP请求URL中的Query参数;</li>
<li>uri:HTTP请求URI;</li>
<li>body_raw:HTTP请求Body;</li>
<li>body_json: JSON格式的HTTP Body。</li>
:type Type: str
:param _Selector: 选择跳过的字段,取值为:
<li>args:uri 下选择 query 参数: ?name1=jack&age=12;</li>
<li>path:uri 下选择部分路径:/path/to/resource.jpg;</li>
<li>full:uri 下选择完整路径:example.com/path/to/resource.jpg?name1=jack&age=12;</li>
<li>upload_filename:分段文件名,即分段传输文件时;</li>
<li>keys:所有的Key;</li>
<li>values:匹配Key对应的值;</li>
<li>key_value:匹配Key及匹配Value。</li>
:type Selector: str
:param _MatchFromType: 匹配Key所使用的匹配方式,取值为:
<li>equal:精准匹配,等于;</li>
<li>wildcard:通配符匹配,支持 * 通配。</li>
:type MatchFromType: str
:param _MatchFrom: 匹配Key的值。
注意:此字段可能返回 null,表示取不到有效值。
:type MatchFrom: list of str
:param _MatchContentType: 匹配Content所使用的匹配方式,取值为:
<li>equal:精准匹配,等于;</li>
<li>wildcard:通配符匹配,支持 * 通配。</li>
:type MatchContentType: str
:param _MatchContent: 匹配Value的值。
注意:此字段可能返回 null,表示取不到有效值。
:type MatchContent: list of str
"""
self._Type = None
self._Selector = None
self._MatchFromType = None
self._MatchFrom = None
self._MatchContentType = None
self._MatchContent = None
@property
def Type(self):
"""例外跳过类型,取值为:
<li>header_fields:HTTP请求Header;</li>
<li>cookie:HTTP请求Cookie;</li>
<li>query_string:HTTP请求URL中的Query参数;</li>
<li>uri:HTTP请求URI;</li>
<li>body_raw:HTTP请求Body;</li>
<li>body_json: JSON格式的HTTP Body。</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Selector(self):
"""选择跳过的字段,取值为:
<li>args:uri 下选择 query 参数: ?name1=jack&age=12;</li>
<li>path:uri 下选择部分路径:/path/to/resource.jpg;</li>
<li>full:uri 下选择完整路径:example.com/path/to/resource.jpg?name1=jack&age=12;</li>
<li>upload_filename:分段文件名,即分段传输文件时;</li>
<li>keys:所有的Key;</li>
<li>values:匹配Key对应的值;</li>
<li>key_value:匹配Key及匹配Value。</li>
:rtype: str
"""
return self._Selector
@Selector.setter
def Selector(self, Selector):
self._Selector = Selector
@property
def MatchFromType(self):
"""匹配Key所使用的匹配方式,取值为:
<li>equal:精准匹配,等于;</li>
<li>wildcard:通配符匹配,支持 * 通配。</li>
:rtype: str
"""
return self._MatchFromType
@MatchFromType.setter
def MatchFromType(self, MatchFromType):
self._MatchFromType = MatchFromType
@property
def MatchFrom(self):
"""匹配Key的值。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._MatchFrom
@MatchFrom.setter
def MatchFrom(self, MatchFrom):
self._MatchFrom = MatchFrom
@property
def MatchContentType(self):
"""匹配Content所使用的匹配方式,取值为:
<li>equal:精准匹配,等于;</li>
<li>wildcard:通配符匹配,支持 * 通配。</li>
:rtype: str
"""
return self._MatchContentType
@MatchContentType.setter
def MatchContentType(self, MatchContentType):
self._MatchContentType = MatchContentType
@property
def MatchContent(self):
"""匹配Value的值。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of str
"""
return self._MatchContent
@MatchContent.setter
def MatchContent(self, MatchContent):
self._MatchContent = MatchContent
def _deserialize(self, params):
self._Type = params.get("Type")
self._Selector = params.get("Selector")
self._MatchFromType = params.get("MatchFromType")
self._MatchFrom = params.get("MatchFrom")
self._MatchContentType = params.get("MatchContentType")
self._MatchContent = params.get("MatchContent")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SlowPostConfig(AbstractModel):
"""慢速攻击配置。
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _FirstPartConfig: 首包配置。
注意:此字段可能返回 null,表示取不到有效值。
:type FirstPartConfig: :class:`tencentcloud.teo.v20220901.models.FirstPartConfig`
:param _SlowRateConfig: 基础配置。
注意:此字段可能返回 null,表示取不到有效值。
:type SlowRateConfig: :class:`tencentcloud.teo.v20220901.models.SlowRateConfig`
:param _Action: 慢速攻击的处置动作,取值有:
<li>monitor:观察;</li>
<li>drop:拦截。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Action: str
:param _RuleId: 本规则的Id。
注意:此字段可能返回 null,表示取不到有效值。
:type RuleId: int
"""
self._Switch = None
self._FirstPartConfig = None
self._SlowRateConfig = None
self._Action = None
self._RuleId = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def FirstPartConfig(self):
"""首包配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.FirstPartConfig`
"""
return self._FirstPartConfig
@FirstPartConfig.setter
def FirstPartConfig(self, FirstPartConfig):
self._FirstPartConfig = FirstPartConfig
@property
def SlowRateConfig(self):
"""基础配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SlowRateConfig`
"""
return self._SlowRateConfig
@SlowRateConfig.setter
def SlowRateConfig(self, SlowRateConfig):
self._SlowRateConfig = SlowRateConfig
@property
def Action(self):
"""慢速攻击的处置动作,取值有:
<li>monitor:观察;</li>
<li>drop:拦截。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def RuleId(self):
"""本规则的Id。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._RuleId
@RuleId.setter
def RuleId(self, RuleId):
self._RuleId = RuleId
def _deserialize(self, params):
self._Switch = params.get("Switch")
if params.get("FirstPartConfig") is not None:
self._FirstPartConfig = FirstPartConfig()
self._FirstPartConfig._deserialize(params.get("FirstPartConfig"))
if params.get("SlowRateConfig") is not None:
self._SlowRateConfig = SlowRateConfig()
self._SlowRateConfig._deserialize(params.get("SlowRateConfig"))
self._Action = params.get("Action")
self._RuleId = params.get("RuleId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SlowRateConfig(AbstractModel):
"""慢速攻击的基础配置。
"""
def __init__(self):
r"""
:param _Switch: 开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Interval: 统计的间隔,单位是秒,即在首段包传输结束后,将数据传输轴按照本参数切分,每个分片独立计算慢速攻击。
注意:此字段可能返回 null,表示取不到有效值。
:type Interval: int
:param _Threshold: 统计时应用的速率阈值,单位是bps,即如果本分片中的传输速率没达到本参数的值,则判定为慢速攻击,应用慢速攻击的处置方式。
注意:此字段可能返回 null,表示取不到有效值。
:type Threshold: int
"""
self._Switch = None
self._Interval = None
self._Threshold = None
@property
def Switch(self):
"""开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Interval(self):
"""统计的间隔,单位是秒,即在首段包传输结束后,将数据传输轴按照本参数切分,每个分片独立计算慢速攻击。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._Interval
@Interval.setter
def Interval(self, Interval):
self._Interval = Interval
@property
def Threshold(self):
"""统计时应用的速率阈值,单位是bps,即如果本分片中的传输速率没达到本参数的值,则判定为慢速攻击,应用慢速攻击的处置方式。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: int
"""
return self._Threshold
@Threshold.setter
def Threshold(self, Threshold):
self._Threshold = Threshold
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Interval = params.get("Interval")
self._Threshold = params.get("Threshold")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SmartRouting(AbstractModel):
"""智能加速配置
"""
def __init__(self):
r"""
:param _Switch: 智能加速配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""智能加速配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SmartRoutingParameters(AbstractModel):
"""智能加速配置。
"""
def __init__(self):
r"""
:param _Switch: 智能加速配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""智能加速配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class StandardDebug(AbstractModel):
"""支持标准debug结构体
"""
def __init__(self):
r"""
:param _Switch: Debug 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _AllowClientIPList: 允许的客户端来源。支持填写 IPv4 以及 IPv6 的 IP/IP 段。0.0.0.0/0 表示允许所有 IPv4 客户端进行调试,::/0 表示允许所有 IPv6 客户端进行调试。
:type AllowClientIPList: list of str
:param _ExpireTime: Debug 功能到期时间。超出设置的时间,则功能失效。
:type ExpireTime: str
"""
self._Switch = None
self._AllowClientIPList = None
self._ExpireTime = None
@property
def Switch(self):
"""Debug 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def AllowClientIPList(self):
"""允许的客户端来源。支持填写 IPv4 以及 IPv6 的 IP/IP 段。0.0.0.0/0 表示允许所有 IPv4 客户端进行调试,::/0 表示允许所有 IPv6 客户端进行调试。
:rtype: list of str
"""
return self._AllowClientIPList
@AllowClientIPList.setter
def AllowClientIPList(self, AllowClientIPList):
self._AllowClientIPList = AllowClientIPList
@property
def ExpireTime(self):
"""Debug 功能到期时间。超出设置的时间,则功能失效。
:rtype: str
"""
return self._ExpireTime
@ExpireTime.setter
def ExpireTime(self, ExpireTime):
self._ExpireTime = ExpireTime
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._AllowClientIPList = params.get("AllowClientIPList")
self._ExpireTime = params.get("ExpireTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class StandardDebugParameters(AbstractModel):
"""Debug 调试结构体。
"""
def __init__(self):
r"""
:param _Switch: Debug 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _AllowClientIPList: 允许的客户端来源。支持填写 IPv4 以及 IPv6 的 IP 网段。0.0.0.0/0 表示允许所有 IPv4 客户端进行调试;::/0 表示允许所有 IPv6 客户端进行调试;不能填写 127.0.0.1。<br>注意:当 Switch 字段为 on 时,此字段必填,且填写个数为 1~100;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type AllowClientIPList: list of str
:param _Expires: Debug 功能到期时间。超出设置的时间,则功能失效。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type Expires: str
"""
self._Switch = None
self._AllowClientIPList = None
self._Expires = None
@property
def Switch(self):
"""Debug 功能开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def AllowClientIPList(self):
"""允许的客户端来源。支持填写 IPv4 以及 IPv6 的 IP 网段。0.0.0.0/0 表示允许所有 IPv4 客户端进行调试;::/0 表示允许所有 IPv6 客户端进行调试;不能填写 127.0.0.1。<br>注意:当 Switch 字段为 on 时,此字段必填,且填写个数为 1~100;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: list of str
"""
return self._AllowClientIPList
@AllowClientIPList.setter
def AllowClientIPList(self, AllowClientIPList):
self._AllowClientIPList = AllowClientIPList
@property
def Expires(self):
"""Debug 功能到期时间。超出设置的时间,则功能失效。<br>注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._Expires
@Expires.setter
def Expires(self, Expires):
self._Expires = Expires
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._AllowClientIPList = params.get("AllowClientIPList")
self._Expires = params.get("Expires")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class StatusCodeCacheParam(AbstractModel):
"""状态码缓存 TTL 配置参数内部结构。
"""
def __init__(self):
r"""
:param _StatusCode: 状态码,取值为 400、 401、403、 404、 405、 407、 414、 500、 501、 502、 503、 504、 509、 514 之一。
:type StatusCode: int
:param _CacheTime: 缓存时间数值,单位为秒,取值:0~31536000。
:type CacheTime: int
"""
self._StatusCode = None
self._CacheTime = None
@property
def StatusCode(self):
"""状态码,取值为 400、 401、403、 404、 405、 407、 414、 500、 501、 502、 503、 504、 509、 514 之一。
:rtype: int
"""
return self._StatusCode
@StatusCode.setter
def StatusCode(self, StatusCode):
self._StatusCode = StatusCode
@property
def CacheTime(self):
"""缓存时间数值,单位为秒,取值:0~31536000。
:rtype: int
"""
return self._CacheTime
@CacheTime.setter
def CacheTime(self, CacheTime):
self._CacheTime = CacheTime
def _deserialize(self, params):
self._StatusCode = params.get("StatusCode")
self._CacheTime = params.get("CacheTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class StatusCodeCacheParameters(AbstractModel):
"""状态码缓存 TTL 配置参数。
"""
def __init__(self):
r"""
:param _StatusCodeCacheParams: 状态码缓存 TTL 。
注意:此字段可能返回 null,表示取不到有效值。
:type StatusCodeCacheParams: list of StatusCodeCacheParam
"""
self._StatusCodeCacheParams = None
@property
def StatusCodeCacheParams(self):
"""状态码缓存 TTL 。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of StatusCodeCacheParam
"""
return self._StatusCodeCacheParams
@StatusCodeCacheParams.setter
def StatusCodeCacheParams(self, StatusCodeCacheParams):
self._StatusCodeCacheParams = StatusCodeCacheParams
def _deserialize(self, params):
if params.get("StatusCodeCacheParams") is not None:
self._StatusCodeCacheParams = []
for item in params.get("StatusCodeCacheParams"):
obj = StatusCodeCacheParam()
obj._deserialize(item)
self._StatusCodeCacheParams.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SubRule(AbstractModel):
"""嵌套规则信息。
"""
def __init__(self):
r"""
:param _Conditions: 执行功能判断条件。
注意:满足该数组内任意一项条件,功能即可执行。
:type Conditions: list of RuleAndConditions
:param _Actions: 执行的功能。
:type Actions: list of Action
"""
self._Conditions = None
self._Actions = None
@property
def Conditions(self):
"""执行功能判断条件。
注意:满足该数组内任意一项条件,功能即可执行。
:rtype: list of RuleAndConditions
"""
return self._Conditions
@Conditions.setter
def Conditions(self, Conditions):
self._Conditions = Conditions
@property
def Actions(self):
"""执行的功能。
:rtype: list of Action
"""
return self._Actions
@Actions.setter
def Actions(self, Actions):
self._Actions = Actions
def _deserialize(self, params):
if params.get("Conditions") is not None:
self._Conditions = []
for item in params.get("Conditions"):
obj = RuleAndConditions()
obj._deserialize(item)
self._Conditions.append(obj)
if params.get("Actions") is not None:
self._Actions = []
for item in params.get("Actions"):
obj = Action()
obj._deserialize(item)
self._Actions.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SubRuleItem(AbstractModel):
"""规则引擎嵌套规则
"""
def __init__(self):
r"""
:param _Rules: 嵌套规则信息。
:type Rules: list of SubRule
:param _Tags: 规则标签。
:type Tags: list of str
"""
self._Rules = None
self._Tags = None
@property
def Rules(self):
"""嵌套规则信息。
:rtype: list of SubRule
"""
return self._Rules
@Rules.setter
def Rules(self, Rules):
self._Rules = Rules
@property
def Tags(self):
"""规则标签。
:rtype: list of str
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
def _deserialize(self, params):
if params.get("Rules") is not None:
self._Rules = []
for item in params.get("Rules"):
obj = SubRule()
obj._deserialize(item)
self._Rules.append(obj)
self._Tags = params.get("Tags")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Sv(AbstractModel):
"""询价参数
"""
def __init__(self):
r"""
:param _Key: 询价参数键。
:type Key: str
:param _Value: 询价参数值。
:type Value: str
:param _Pack: 询价参数映射的配额,取值有:
<li>zone:站点数;</li>
<li>custom-rule:自定义规则数;</li>
<li>rate-limiting-rule:速率限制规则数;</li>
<li>l4-proxy-instance:四层代理实例数。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Pack: str
:param _InstanceId: 询价参数映射的四层代理实例Id。
注意:此字段可能返回 null,表示取不到有效值。
:type InstanceId: str
:param _ProtectionSpecs: 询价参数对应的防护等级。
取值有: <li> cm_30G:中国大陆加速区域保底防护30Gbps;</li><li> cm_60G:中国大陆加速区域保底防护60Gbps;</li><li> cm_100G:中国大陆加速区域保底防护100Gbps;</li><li> anycast_300G:全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> anycast_unlimited:全球加速区域(除中国大陆)Anycast无上限全力防护;</li><li> cm_30G_anycast_300G:中国大陆加速区域保底防护30Gbps,全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> cm_30G_anycast_unlimited:中国大陆加速区域保底防护30Gbps,全球加速区域(除中国大陆)Anycast无上限全力防护;</li><li> cm_60G_anycast_300G:中国大陆加速区域保底防护60Gbps,全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> cm_60G_anycast_unlimited:中国大陆加速区域保底防护60Gbps,全球加速区域(除中国大陆)Anycast无上限全力防护;</li><li> cm_100G_anycast_300G:中国大陆加速区域保底防护100Gbps,全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> cm_100G_anycast_unlimited:中国大陆加速区域保底防护100Gbps,全球加速区域(除中国大陆)Anycast无上限全力防护。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type ProtectionSpecs: str
"""
self._Key = None
self._Value = None
self._Pack = None
self._InstanceId = None
self._ProtectionSpecs = None
@property
def Key(self):
"""询价参数键。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Value(self):
"""询价参数值。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
@property
def Pack(self):
"""询价参数映射的配额,取值有:
<li>zone:站点数;</li>
<li>custom-rule:自定义规则数;</li>
<li>rate-limiting-rule:速率限制规则数;</li>
<li>l4-proxy-instance:四层代理实例数。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Pack
@Pack.setter
def Pack(self, Pack):
self._Pack = Pack
@property
def InstanceId(self):
"""询价参数映射的四层代理实例Id。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._InstanceId
@InstanceId.setter
def InstanceId(self, InstanceId):
self._InstanceId = InstanceId
@property
def ProtectionSpecs(self):
"""询价参数对应的防护等级。
取值有: <li> cm_30G:中国大陆加速区域保底防护30Gbps;</li><li> cm_60G:中国大陆加速区域保底防护60Gbps;</li><li> cm_100G:中国大陆加速区域保底防护100Gbps;</li><li> anycast_300G:全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> anycast_unlimited:全球加速区域(除中国大陆)Anycast无上限全力防护;</li><li> cm_30G_anycast_300G:中国大陆加速区域保底防护30Gbps,全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> cm_30G_anycast_unlimited:中国大陆加速区域保底防护30Gbps,全球加速区域(除中国大陆)Anycast无上限全力防护;</li><li> cm_60G_anycast_300G:中国大陆加速区域保底防护60Gbps,全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> cm_60G_anycast_unlimited:中国大陆加速区域保底防护60Gbps,全球加速区域(除中国大陆)Anycast无上限全力防护;</li><li> cm_100G_anycast_300G:中国大陆加速区域保底防护100Gbps,全球加速区域(除中国大陆)Anycast联防300Gbps;</li><li> cm_100G_anycast_unlimited:中国大陆加速区域保底防护100Gbps,全球加速区域(除中国大陆)Anycast无上限全力防护。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._ProtectionSpecs
@ProtectionSpecs.setter
def ProtectionSpecs(self, ProtectionSpecs):
self._ProtectionSpecs = ProtectionSpecs
def _deserialize(self, params):
self._Key = params.get("Key")
self._Value = params.get("Value")
self._Pack = params.get("Pack")
self._InstanceId = params.get("InstanceId")
self._ProtectionSpecs = params.get("ProtectionSpecs")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class SwitchConfig(AbstractModel):
"""功能总开关
"""
def __init__(self):
r"""
:param _WebSwitch: Web类型的安全总开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>不影响DDoS与Bot的开关。
:type WebSwitch: str
"""
self._WebSwitch = None
@property
def WebSwitch(self):
"""Web类型的安全总开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>不影响DDoS与Bot的开关。
:rtype: str
"""
return self._WebSwitch
@WebSwitch.setter
def WebSwitch(self, WebSwitch):
self._WebSwitch = WebSwitch
def _deserialize(self, params):
self._WebSwitch = params.get("WebSwitch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TLSConfigParameters(AbstractModel):
"""SSL/TLS 安全配置参数。
"""
def __init__(self):
r"""
:param _Version: TLS 版本。至少填写一个,如果是多个时,需要为连续版本号,例如:开启 TLS1、1.1、1.2 和 1.3,不可仅开启 1 和 1.2 而关闭 1.1。取值有:<li>TLSv1:TLSv1 版本;</li><li>TLSv1.1:TLSv1.1 版本;</li><li>TLSv1.2:TLSv1.2 版本;</li><li>TLSv1.3:TLSv1.3 版本。</li>
:type Version: list of str
:param _CipherSuite: 密码套件。详细介绍请参考 [TLS 版本及密码套件说明](https://cloud.tencent.com/document/product/1552/86545)。取值有:<li>loose-v2023:loose-v2023 密码套件;</li><li>general-v2023:general-v2023 密码套件;</li><li>strict-v2023:strict-v2023 密码套件。</li>
:type CipherSuite: str
"""
self._Version = None
self._CipherSuite = None
@property
def Version(self):
"""TLS 版本。至少填写一个,如果是多个时,需要为连续版本号,例如:开启 TLS1、1.1、1.2 和 1.3,不可仅开启 1 和 1.2 而关闭 1.1。取值有:<li>TLSv1:TLSv1 版本;</li><li>TLSv1.1:TLSv1.1 版本;</li><li>TLSv1.2:TLSv1.2 版本;</li><li>TLSv1.3:TLSv1.3 版本。</li>
:rtype: list of str
"""
return self._Version
@Version.setter
def Version(self, Version):
self._Version = Version
@property
def CipherSuite(self):
"""密码套件。详细介绍请参考 [TLS 版本及密码套件说明](https://cloud.tencent.com/document/product/1552/86545)。取值有:<li>loose-v2023:loose-v2023 密码套件;</li><li>general-v2023:general-v2023 密码套件;</li><li>strict-v2023:strict-v2023 密码套件。</li>
:rtype: str
"""
return self._CipherSuite
@CipherSuite.setter
def CipherSuite(self, CipherSuite):
self._CipherSuite = CipherSuite
def _deserialize(self, params):
self._Version = params.get("Version")
self._CipherSuite = params.get("CipherSuite")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Tag(AbstractModel):
"""标签配置
"""
def __init__(self):
r"""
:param _TagKey: 标签键。
注意:此字段可能返回 null,表示取不到有效值。
:type TagKey: str
:param _TagValue: 标签值。
注意:此字段可能返回 null,表示取不到有效值。
:type TagValue: str
"""
self._TagKey = None
self._TagValue = None
@property
def TagKey(self):
"""标签键。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._TagKey
@TagKey.setter
def TagKey(self, TagKey):
self._TagKey = TagKey
@property
def TagValue(self):
"""标签值。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._TagValue
@TagValue.setter
def TagValue(self, TagValue):
self._TagValue = TagValue
def _deserialize(self, params):
self._TagKey = params.get("TagKey")
self._TagValue = params.get("TagValue")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Task(AbstractModel):
"""内容管理任务结果
"""
def __init__(self):
r"""
:param _JobId: 任务 ID。
:type JobId: str
:param _Target: 资源。
:type Target: str
:param _Type: 任务类型。
:type Type: str
:param _Method: 节点缓存清除方法,取值有:
<li>invalidate:标记过期,用户请求时触发回源校验,即发送带有 If-None-Match 和 If-Modified-Since 头部的 HTTP 条件请求。若源站响应 200,则节点会回源拉取新的资源并更新缓存;若源站响应 304,则节点不会更新缓存;</li>
<li>delete:直接删除节点缓存,用户请求时触发回源拉取资源。</li>
注意:此字段可能返回 null,表示取不到有效值。
:type Method: str
:param _Status: 状态。取值有:
<li>processing:处理中;</li>
<li>success:成功;</li>
<li> failed:失败;</li>
<li>timeout:超时。</li>
:type Status: str
:param _CreateTime: 任务创建时间。
:type CreateTime: str
:param _UpdateTime: 任务完成时间。
:type UpdateTime: str
"""
self._JobId = None
self._Target = None
self._Type = None
self._Method = None
self._Status = None
self._CreateTime = None
self._UpdateTime = None
@property
def JobId(self):
"""任务 ID。
:rtype: str
"""
return self._JobId
@JobId.setter
def JobId(self, JobId):
self._JobId = JobId
@property
def Target(self):
"""资源。
:rtype: str
"""
return self._Target
@Target.setter
def Target(self, Target):
self._Target = Target
@property
def Type(self):
"""任务类型。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Method(self):
"""节点缓存清除方法,取值有:
<li>invalidate:标记过期,用户请求时触发回源校验,即发送带有 If-None-Match 和 If-Modified-Since 头部的 HTTP 条件请求。若源站响应 200,则节点会回源拉取新的资源并更新缓存;若源站响应 304,则节点不会更新缓存;</li>
<li>delete:直接删除节点缓存,用户请求时触发回源拉取资源。</li>
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._Method
@Method.setter
def Method(self, Method):
self._Method = Method
@property
def Status(self):
"""状态。取值有:
<li>processing:处理中;</li>
<li>success:成功;</li>
<li> failed:失败;</li>
<li>timeout:超时。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def CreateTime(self):
"""任务创建时间。
:rtype: str
"""
return self._CreateTime
@CreateTime.setter
def CreateTime(self, CreateTime):
self._CreateTime = CreateTime
@property
def UpdateTime(self):
"""任务完成时间。
:rtype: str
"""
return self._UpdateTime
@UpdateTime.setter
def UpdateTime(self, UpdateTime):
self._UpdateTime = UpdateTime
def _deserialize(self, params):
self._JobId = params.get("JobId")
self._Target = params.get("Target")
self._Type = params.get("Type")
self._Method = params.get("Method")
self._Status = params.get("Status")
self._CreateTime = params.get("CreateTime")
self._UpdateTime = params.get("UpdateTime")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TemplateConfig(AbstractModel):
"""安全模板配置
"""
def __init__(self):
r"""
:param _TemplateId: 模板ID。
:type TemplateId: str
:param _TemplateName: 模板名称。
:type TemplateName: str
"""
self._TemplateId = None
self._TemplateName = None
@property
def TemplateId(self):
"""模板ID。
:rtype: str
"""
return self._TemplateId
@TemplateId.setter
def TemplateId(self, TemplateId):
self._TemplateId = TemplateId
@property
def TemplateName(self):
"""模板名称。
:rtype: str
"""
return self._TemplateName
@TemplateName.setter
def TemplateName(self, TemplateName):
self._TemplateName = TemplateName
def _deserialize(self, params):
self._TemplateId = params.get("TemplateId")
self._TemplateName = params.get("TemplateName")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TemplateScope(AbstractModel):
"""安全模板绑定域名状态
"""
def __init__(self):
r"""
:param _ZoneId: 站点ID。
注意:此字段可能返回 null,表示取不到有效值。
:type ZoneId: str
:param _EntityStatus: 实例状态列表。
注意:此字段可能返回 null,表示取不到有效值。
:type EntityStatus: list of EntityStatus
"""
self._ZoneId = None
self._EntityStatus = None
@property
def ZoneId(self):
"""站点ID。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def EntityStatus(self):
"""实例状态列表。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of EntityStatus
"""
return self._EntityStatus
@EntityStatus.setter
def EntityStatus(self, EntityStatus):
self._EntityStatus = EntityStatus
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
if params.get("EntityStatus") is not None:
self._EntityStatus = []
for item in params.get("EntityStatus"):
obj = EntityStatus()
obj._deserialize(item)
self._EntityStatus.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TimingDataItem(AbstractModel):
"""统计曲线数据项
"""
def __init__(self):
r"""
:param _Timestamp: 返回数据对应时间点,采用 unix 秒级时间戳。
:type Timestamp: int
:param _Value: 具体数值。
:type Value: int
"""
self._Timestamp = None
self._Value = None
@property
def Timestamp(self):
"""返回数据对应时间点,采用 unix 秒级时间戳。
:rtype: int
"""
return self._Timestamp
@Timestamp.setter
def Timestamp(self, Timestamp):
self._Timestamp = Timestamp
@property
def Value(self):
"""具体数值。
:rtype: int
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Timestamp = params.get("Timestamp")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TimingDataRecord(AbstractModel):
"""时序数据信息
"""
def __init__(self):
r"""
:param _TypeKey: 查询维度值。
:type TypeKey: str
:param _TypeValue: 详细时序数据。
:type TypeValue: list of TimingTypeValue
"""
self._TypeKey = None
self._TypeValue = None
@property
def TypeKey(self):
"""查询维度值。
:rtype: str
"""
return self._TypeKey
@TypeKey.setter
def TypeKey(self, TypeKey):
self._TypeKey = TypeKey
@property
def TypeValue(self):
"""详细时序数据。
:rtype: list of TimingTypeValue
"""
return self._TypeValue
@TypeValue.setter
def TypeValue(self, TypeValue):
self._TypeValue = TypeValue
def _deserialize(self, params):
self._TypeKey = params.get("TypeKey")
if params.get("TypeValue") is not None:
self._TypeValue = []
for item in params.get("TypeValue"):
obj = TimingTypeValue()
obj._deserialize(item)
self._TypeValue.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TimingTypeValue(AbstractModel):
"""时序类型详细数据
"""
def __init__(self):
r"""
:param _Sum: 数据和。
:type Sum: int
:param _Max: 最大值。
:type Max: int
:param _Avg: 平均值。
:type Avg: int
:param _MetricName: 指标名。
:type MetricName: str
:param _Detail: 详细数据。
注意:此字段可能返回 null,表示取不到有效值。
:type Detail: list of TimingDataItem
"""
self._Sum = None
self._Max = None
self._Avg = None
self._MetricName = None
self._Detail = None
@property
def Sum(self):
"""数据和。
:rtype: int
"""
return self._Sum
@Sum.setter
def Sum(self, Sum):
self._Sum = Sum
@property
def Max(self):
"""最大值。
:rtype: int
"""
return self._Max
@Max.setter
def Max(self, Max):
self._Max = Max
@property
def Avg(self):
"""平均值。
:rtype: int
"""
return self._Avg
@Avg.setter
def Avg(self, Avg):
self._Avg = Avg
@property
def MetricName(self):
"""指标名。
:rtype: str
"""
return self._MetricName
@MetricName.setter
def MetricName(self, MetricName):
self._MetricName = MetricName
@property
def Detail(self):
"""详细数据。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of TimingDataItem
"""
return self._Detail
@Detail.setter
def Detail(self, Detail):
self._Detail = Detail
def _deserialize(self, params):
self._Sum = params.get("Sum")
self._Max = params.get("Max")
self._Avg = params.get("Avg")
self._MetricName = params.get("MetricName")
if params.get("Detail") is not None:
self._Detail = []
for item in params.get("Detail"):
obj = TimingDataItem()
obj._deserialize(item)
self._Detail.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TopDataRecord(AbstractModel):
"""Top类数据记录
"""
def __init__(self):
r"""
:param _TypeKey: 查询维度值。
:type TypeKey: str
:param _DetailData: top数据排行。
:type DetailData: list of TopDetailData
"""
self._TypeKey = None
self._DetailData = None
@property
def TypeKey(self):
"""查询维度值。
:rtype: str
"""
return self._TypeKey
@TypeKey.setter
def TypeKey(self, TypeKey):
self._TypeKey = TypeKey
@property
def DetailData(self):
"""top数据排行。
:rtype: list of TopDetailData
"""
return self._DetailData
@DetailData.setter
def DetailData(self, DetailData):
self._DetailData = DetailData
def _deserialize(self, params):
self._TypeKey = params.get("TypeKey")
if params.get("DetailData") is not None:
self._DetailData = []
for item in params.get("DetailData"):
obj = TopDetailData()
obj._deserialize(item)
self._DetailData.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TopDetailData(AbstractModel):
"""Top数据的详细信息
"""
def __init__(self):
r"""
:param _Key: 字段名。
:type Key: str
:param _Value: 字段值。
:type Value: int
"""
self._Key = None
self._Value = None
@property
def Key(self):
"""字段名。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Value(self):
"""字段值。
:rtype: int
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Key = params.get("Key")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TopEntry(AbstractModel):
"""TopN的Entry数据
"""
def __init__(self):
r"""
:param _Key: top查询维度值。
:type Key: str
:param _Value: 查询具体数据。
:type Value: list of TopEntryValue
"""
self._Key = None
self._Value = None
@property
def Key(self):
"""top查询维度值。
:rtype: str
"""
return self._Key
@Key.setter
def Key(self, Key):
self._Key = Key
@property
def Value(self):
"""查询具体数据。
:rtype: list of TopEntryValue
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Key = params.get("Key")
if params.get("Value") is not None:
self._Value = []
for item in params.get("Value"):
obj = TopEntryValue()
obj._deserialize(item)
self._Value.append(obj)
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class TopEntryValue(AbstractModel):
"""TopN数据Entry
"""
def __init__(self):
r"""
:param _Name: 排序实体名。
:type Name: str
:param _Count: 排序实体数量。
:type Count: int
"""
self._Name = None
self._Count = None
@property
def Name(self):
"""排序实体名。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def Count(self):
"""排序实体数量。
:rtype: int
"""
return self._Count
@Count.setter
def Count(self, Count):
self._Count = Count
def _deserialize(self, params):
self._Name = params.get("Name")
self._Count = params.get("Count")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class URLPath(AbstractModel):
"""访问 URL 重定向路径配置参数。
"""
def __init__(self):
r"""
:param _Action: 执行动作,取值有:
<li>follow:跟随请求;</li>
<li>custom:自定义;</li>
<li>regex:正则匹配。</li>
:type Action: str
:param _Regex: 正则匹配的表达式,长度范围为 1~1024。<br>注意:当 Action 为 regex 时,此字段必填;当 Action 为 follow 或 custom 时,无需填写此字段,若填写则不生效。
:type Regex: str
:param _Value: 重定向的目标URL,长度范围为 1~1024。<br>注意:当 Action 为 regex 或 custom 时,此字段必填;当 Action 为 follow 时,无需填写此字段,若填写则不生效。
:type Value: str
"""
self._Action = None
self._Regex = None
self._Value = None
@property
def Action(self):
"""执行动作,取值有:
<li>follow:跟随请求;</li>
<li>custom:自定义;</li>
<li>regex:正则匹配。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Regex(self):
"""正则匹配的表达式,长度范围为 1~1024。<br>注意:当 Action 为 regex 时,此字段必填;当 Action 为 follow 或 custom 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._Regex
@Regex.setter
def Regex(self, Regex):
self._Regex = Regex
@property
def Value(self):
"""重定向的目标URL,长度范围为 1~1024。<br>注意:当 Action 为 regex 或 custom 时,此字段必填;当 Action 为 follow 时,无需填写此字段,若填写则不生效。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Action = params.get("Action")
self._Regex = params.get("Regex")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpgradePlanRequest(AbstractModel):
"""UpgradePlan请求参数结构体
"""
def __init__(self):
r"""
:param _PlanId: 套餐 ID,形如 edgeone-2unuvzjmmn2q。
:type PlanId: str
:param _PlanType: 需要升级到的目标套餐版本,取值有:<li> basic:基础版套餐;</li><li> standard:标准版套餐。</li>
:type PlanType: str
:param _AutoUseVoucher: 是否自动使用代金券,取值有:<li> true:是;</li><li> false:否。</li>不填写使用默认值 false。
:type AutoUseVoucher: str
"""
self._PlanId = None
self._PlanType = None
self._AutoUseVoucher = None
@property
def PlanId(self):
"""套餐 ID,形如 edgeone-2unuvzjmmn2q。
:rtype: str
"""
return self._PlanId
@PlanId.setter
def PlanId(self, PlanId):
self._PlanId = PlanId
@property
def PlanType(self):
"""需要升级到的目标套餐版本,取值有:<li> basic:基础版套餐;</li><li> standard:标准版套餐。</li>
:rtype: str
"""
return self._PlanType
@PlanType.setter
def PlanType(self, PlanType):
self._PlanType = PlanType
@property
def AutoUseVoucher(self):
"""是否自动使用代金券,取值有:<li> true:是;</li><li> false:否。</li>不填写使用默认值 false。
:rtype: str
"""
return self._AutoUseVoucher
@AutoUseVoucher.setter
def AutoUseVoucher(self, AutoUseVoucher):
self._AutoUseVoucher = AutoUseVoucher
def _deserialize(self, params):
self._PlanId = params.get("PlanId")
self._PlanType = params.get("PlanType")
self._AutoUseVoucher = params.get("AutoUseVoucher")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpgradePlanResponse(AbstractModel):
"""UpgradePlan返回参数结构体
"""
def __init__(self):
r"""
:param _DealName: 订单号。
:type DealName: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._DealName = None
self._RequestId = None
@property
def DealName(self):
"""订单号。
:rtype: str
"""
return self._DealName
@DealName.setter
def DealName(self, DealName):
self._DealName = DealName
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._DealName = params.get("DealName")
self._RequestId = params.get("RequestId")
class UpstreamCertInfo(AbstractModel):
"""用于 EO 节点回源时携带的证书,源站启用双向认证握手时使用,用于源站认证客户端证书是否有效,确保请求来源于受信任的 EO 节点。
"""
def __init__(self):
r"""
:param _UpstreamMutualTLS: 在回源双向认证场景下,该字段为 EO 节点回源时携带的证书(包含公钥、私钥即可),部署在 EO 节点,用于源站对 EO 节点进行认证。在作为入参使用时,不填写表示保持原有配置。
:type UpstreamMutualTLS: :class:`tencentcloud.teo.v20220901.models.MutualTLS`
"""
self._UpstreamMutualTLS = None
@property
def UpstreamMutualTLS(self):
"""在回源双向认证场景下,该字段为 EO 节点回源时携带的证书(包含公钥、私钥即可),部署在 EO 节点,用于源站对 EO 节点进行认证。在作为入参使用时,不填写表示保持原有配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.MutualTLS`
"""
return self._UpstreamMutualTLS
@UpstreamMutualTLS.setter
def UpstreamMutualTLS(self, UpstreamMutualTLS):
self._UpstreamMutualTLS = UpstreamMutualTLS
def _deserialize(self, params):
if params.get("UpstreamMutualTLS") is not None:
self._UpstreamMutualTLS = MutualTLS()
self._UpstreamMutualTLS._deserialize(params.get("UpstreamMutualTLS"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamFollowRedirectParameters(AbstractModel):
"""回源跟随重定向参数配置。
"""
def __init__(self):
r"""
:param _Switch: 回源跟随重定向配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _MaxTimes: 最大重定向次数。取值为 1-5。
注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:type MaxTimes: int
"""
self._Switch = None
self._MaxTimes = None
@property
def Switch(self):
"""回源跟随重定向配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def MaxTimes(self):
"""最大重定向次数。取值为 1-5。
注意:当 Switch 为 on 时,此字段必填;当 Switch 为 off 时,无需填写此字段,若填写则不生效。
:rtype: int
"""
return self._MaxTimes
@MaxTimes.setter
def MaxTimes(self, MaxTimes):
self._MaxTimes = MaxTimes
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._MaxTimes = params.get("MaxTimes")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamHTTP2Parameters(AbstractModel):
"""HTTP2 回源配置。
"""
def __init__(self):
r"""
:param _Switch: HTTP2 回源配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""HTTP2 回源配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamHttp2(AbstractModel):
"""Http2回源配置
"""
def __init__(self):
r"""
:param _Switch: http2 回源配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
"""
self._Switch = None
@property
def Switch(self):
"""http2 回源配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
def _deserialize(self, params):
self._Switch = params.get("Switch")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamRequestCookie(AbstractModel):
"""回源请求参数 Cookie 配置。
"""
def __init__(self):
r"""
:param _Switch: 回源请求参数 Cookie 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Action: 回源请求参数 Cookie 模式。当 Switch 为 on 时,该参数必填。取值有:
<li>full:表示全部保留;</li>
<li>ignore:表示全部忽略;</li>
<li>includeCustom:表示保留部分参数;</li>
<li>excludeCustom:表示忽略部分参数。</li>
:type Action: str
:param _Values: 指定参数值。仅当查询字符串模式 Action 为 includeCustom 或者 excludeCustom 时该参数生效,用于指定需要保留或者忽略的参数。最大支持 10 个参数。
:type Values: list of str
"""
self._Switch = None
self._Action = None
self._Values = None
@property
def Switch(self):
"""回源请求参数 Cookie 配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Action(self):
"""回源请求参数 Cookie 模式。当 Switch 为 on 时,该参数必填。取值有:
<li>full:表示全部保留;</li>
<li>ignore:表示全部忽略;</li>
<li>includeCustom:表示保留部分参数;</li>
<li>excludeCustom:表示忽略部分参数。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Values(self):
"""指定参数值。仅当查询字符串模式 Action 为 includeCustom 或者 excludeCustom 时该参数生效,用于指定需要保留或者忽略的参数。最大支持 10 个参数。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Action = params.get("Action")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamRequestParameters(AbstractModel):
"""回源请求参数配置参数。
"""
def __init__(self):
r"""
:param _QueryString: 查询字符串配置。可选配置项,不填表示不配置。
注意:此字段可能返回 null,表示取不到有效值。
:type QueryString: :class:`tencentcloud.teo.v20220901.models.UpstreamRequestQueryString`
:param _Cookie: Cookie 配置。可选配置项,不填表示不配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Cookie: :class:`tencentcloud.teo.v20220901.models.UpstreamRequestCookie`
"""
self._QueryString = None
self._Cookie = None
@property
def QueryString(self):
"""查询字符串配置。可选配置项,不填表示不配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamRequestQueryString`
"""
return self._QueryString
@QueryString.setter
def QueryString(self, QueryString):
self._QueryString = QueryString
@property
def Cookie(self):
"""Cookie 配置。可选配置项,不填表示不配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamRequestCookie`
"""
return self._Cookie
@Cookie.setter
def Cookie(self, Cookie):
self._Cookie = Cookie
def _deserialize(self, params):
if params.get("QueryString") is not None:
self._QueryString = UpstreamRequestQueryString()
self._QueryString._deserialize(params.get("QueryString"))
if params.get("Cookie") is not None:
self._Cookie = UpstreamRequestCookie()
self._Cookie._deserialize(params.get("Cookie"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamRequestQueryString(AbstractModel):
"""回源请求参数查询字符串配置。
"""
def __init__(self):
r"""
:param _Switch: 回源请求参数查询字符串配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:type Switch: str
:param _Action: 查询字符串模式。当 Switch 为 on 时,该参数必填。取值有:
<li>full:全部保留;</li>
<li>ignore:全部忽略;</li>
<li>includeCustom:保留部分参数;</li>
<li>excludeCustom:忽略部分参数。</li>
:type Action: str
:param _Values: 指定参数值。仅当查询字符串模式 Action 为 includeCustom 或者 excludeCustom 时该参数生效,用于指定需要保留或者忽略的参数。最大支持 10 个参数。
:type Values: list of str
"""
self._Switch = None
self._Action = None
self._Values = None
@property
def Switch(self):
"""回源请求参数查询字符串配置开关,取值有:
<li>on:开启;</li>
<li>off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Action(self):
"""查询字符串模式。当 Switch 为 on 时,该参数必填。取值有:
<li>full:全部保留;</li>
<li>ignore:全部忽略;</li>
<li>includeCustom:保留部分参数;</li>
<li>excludeCustom:忽略部分参数。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Values(self):
"""指定参数值。仅当查询字符串模式 Action 为 includeCustom 或者 excludeCustom 时该参数生效,用于指定需要保留或者忽略的参数。最大支持 10 个参数。
:rtype: list of str
"""
return self._Values
@Values.setter
def Values(self, Values):
self._Values = Values
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Action = params.get("Action")
self._Values = params.get("Values")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class UpstreamURLRewriteParameters(AbstractModel):
"""回源 URL 重写 配置参数。
"""
def __init__(self):
r"""
:param _Type: 回源 URL 重写类型,仅支持填写 Path。
:type Type: str
:param _Action: 回源 URL 重写动作。取值有:
<li>replace:替换路径前缀;</li>
<li>addPrefix:增加路径前缀;</li>
<li>rmvPrefix:移除路径前缀。</li>
:type Action: str
:param _Value: 回源 URL 重写值,最大长度 1024,必须以 / 开头。<br>注意:当 Action 为 addPrefix 时,不能以 / 结尾;当 Action 为 rmvPrefix 时,不能存在 *。
:type Value: str
"""
self._Type = None
self._Action = None
self._Value = None
@property
def Type(self):
"""回源 URL 重写类型,仅支持填写 Path。
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Action(self):
"""回源 URL 重写动作。取值有:
<li>replace:替换路径前缀;</li>
<li>addPrefix:增加路径前缀;</li>
<li>rmvPrefix:移除路径前缀。</li>
:rtype: str
"""
return self._Action
@Action.setter
def Action(self, Action):
self._Action = Action
@property
def Value(self):
"""回源 URL 重写值,最大长度 1024,必须以 / 开头。<br>注意:当 Action 为 addPrefix 时,不能以 / 结尾;当 Action 为 rmvPrefix 时,不能存在 *。
:rtype: str
"""
return self._Value
@Value.setter
def Value(self, Value):
self._Value = Value
def _deserialize(self, params):
self._Type = params.get("Type")
self._Action = params.get("Action")
self._Value = params.get("Value")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class VanityNameServers(AbstractModel):
"""自定义 nameservers
"""
def __init__(self):
r"""
:param _Switch: 自定义 ns 开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>
:type Switch: str
:param _Servers: 自定义 ns 列表。
:type Servers: list of str
"""
self._Switch = None
self._Servers = None
@property
def Switch(self):
"""自定义 ns 开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Servers(self):
"""自定义 ns 列表。
:rtype: list of str
"""
return self._Servers
@Servers.setter
def Servers(self, Servers):
self._Servers = Servers
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Servers = params.get("Servers")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class VanityNameServersIps(AbstractModel):
"""自定义名字服务器 IP 信息
"""
def __init__(self):
r"""
:param _Name: 自定义名字服务器名称。
:type Name: str
:param _IPv4: 自定义名字服务器 IPv4 地址。
:type IPv4: str
"""
self._Name = None
self._IPv4 = None
@property
def Name(self):
"""自定义名字服务器名称。
:rtype: str
"""
return self._Name
@Name.setter
def Name(self, Name):
self._Name = Name
@property
def IPv4(self):
"""自定义名字服务器 IPv4 地址。
:rtype: str
"""
return self._IPv4
@IPv4.setter
def IPv4(self, IPv4):
self._IPv4 = IPv4
def _deserialize(self, params):
self._Name = params.get("Name")
self._IPv4 = params.get("IPv4")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class VerifyOwnershipRequest(AbstractModel):
"""VerifyOwnership请求参数结构体
"""
def __init__(self):
r"""
:param _Domain: 站点或者加速域名。
:type Domain: str
"""
self._Domain = None
@property
def Domain(self):
"""站点或者加速域名。
:rtype: str
"""
return self._Domain
@Domain.setter
def Domain(self, Domain):
self._Domain = Domain
def _deserialize(self, params):
self._Domain = params.get("Domain")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class VerifyOwnershipResponse(AbstractModel):
"""VerifyOwnership返回参数结构体
"""
def __init__(self):
r"""
:param _Status: 归属权验证结果。
<li>success:验证成功;</li>
<li>fail:验证失败。</li>
:type Status: str
:param _Result: 当验证结果为不通过时,该字段会返回原因,协助您排查问题。
:type Result: str
:param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:type RequestId: str
"""
self._Status = None
self._Result = None
self._RequestId = None
@property
def Status(self):
"""归属权验证结果。
<li>success:验证成功;</li>
<li>fail:验证失败。</li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Result(self):
"""当验证结果为不通过时,该字段会返回原因,协助您排查问题。
:rtype: str
"""
return self._Result
@Result.setter
def Result(self, Result):
self._Result = Result
@property
def RequestId(self):
"""唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
:rtype: str
"""
return self._RequestId
@RequestId.setter
def RequestId(self, RequestId):
self._RequestId = RequestId
def _deserialize(self, params):
self._Status = params.get("Status")
self._Result = params.get("Result")
self._RequestId = params.get("RequestId")
class Waf(AbstractModel):
"""无
"""
def __init__(self):
r"""
:param _Switch: Waf开关,取值为:
<li> on:开启;</li>
<li> off:关闭。</li>
:type Switch: str
:param _PolicyId: 策略ID。
:type PolicyId: int
"""
self._Switch = None
self._PolicyId = None
@property
def Switch(self):
"""Waf开关,取值为:
<li> on:开启;</li>
<li> off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def PolicyId(self):
"""策略ID。
:rtype: int
"""
return self._PolicyId
@PolicyId.setter
def PolicyId(self, PolicyId):
self._PolicyId = PolicyId
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._PolicyId = params.get("PolicyId")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class WafConfig(AbstractModel):
"""Waf配置。
"""
def __init__(self):
r"""
:param _Switch: WafConfig开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>开关仅与配置是否生效有关,即使为off(关闭),也可以正常修改配置的内容。
:type Switch: str
:param _Level: 上一次设置的防护级别,取值有:
<li> loose:宽松;</li>
<li> normal:正常;</li>
<li> strict:严格;</li>
<li> stricter:超严格;</li>
<li> custom:自定义。</li>
:type Level: str
:param _Mode: 全局WAF模式,取值有:
<li> block:阻断(全局阻断,但可对详细规则配置观察);</li>
<li> observe:观察(无论详细规则配置什么,都为观察)。</li>
:type Mode: str
:param _WafRule: 托管规则详细配置。如果为null,默认使用历史配置。
:type WafRule: :class:`tencentcloud.teo.v20220901.models.WafRule`
:param _AiRule: AI规则引擎防护配置。如果为null,默认使用历史配置。
:type AiRule: :class:`tencentcloud.teo.v20220901.models.AiRule`
"""
self._Switch = None
self._Level = None
self._Mode = None
self._WafRule = None
self._AiRule = None
@property
def Switch(self):
"""WafConfig开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>开关仅与配置是否生效有关,即使为off(关闭),也可以正常修改配置的内容。
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Level(self):
"""上一次设置的防护级别,取值有:
<li> loose:宽松;</li>
<li> normal:正常;</li>
<li> strict:严格;</li>
<li> stricter:超严格;</li>
<li> custom:自定义。</li>
:rtype: str
"""
return self._Level
@Level.setter
def Level(self, Level):
self._Level = Level
@property
def Mode(self):
"""全局WAF模式,取值有:
<li> block:阻断(全局阻断,但可对详细规则配置观察);</li>
<li> observe:观察(无论详细规则配置什么,都为观察)。</li>
:rtype: str
"""
return self._Mode
@Mode.setter
def Mode(self, Mode):
self._Mode = Mode
@property
def WafRule(self):
"""托管规则详细配置。如果为null,默认使用历史配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.WafRule`
"""
return self._WafRule
@WafRule.setter
def WafRule(self, WafRule):
self._WafRule = WafRule
@property
def AiRule(self):
"""AI规则引擎防护配置。如果为null,默认使用历史配置。
:rtype: :class:`tencentcloud.teo.v20220901.models.AiRule`
"""
return self._AiRule
@AiRule.setter
def AiRule(self, AiRule):
self._AiRule = AiRule
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Level = params.get("Level")
self._Mode = params.get("Mode")
if params.get("WafRule") is not None:
self._WafRule = WafRule()
self._WafRule._deserialize(params.get("WafRule"))
if params.get("AiRule") is not None:
self._AiRule = AiRule()
self._AiRule._deserialize(params.get("AiRule"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class WafRule(AbstractModel):
"""Waf规则
"""
def __init__(self):
r"""
:param _Switch: 托管规则开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>
:type Switch: str
:param _BlockRuleIDs: 黑名单ID列表,将规则ID加入本参数列表中代表该ID关闭,即该规则ID不再生效。
:type BlockRuleIDs: list of int
:param _ObserveRuleIDs: 观察模式ID列表,将规则ID加入本参数列表中代表该ID使用观察模式生效,即该规则ID进入观察模式。
:type ObserveRuleIDs: list of int
"""
self._Switch = None
self._BlockRuleIDs = None
self._ObserveRuleIDs = None
@property
def Switch(self):
"""托管规则开关,取值有:
<li> on:开启;</li>
<li> off:关闭。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def BlockRuleIDs(self):
"""黑名单ID列表,将规则ID加入本参数列表中代表该ID关闭,即该规则ID不再生效。
:rtype: list of int
"""
return self._BlockRuleIDs
@BlockRuleIDs.setter
def BlockRuleIDs(self, BlockRuleIDs):
self._BlockRuleIDs = BlockRuleIDs
@property
def ObserveRuleIDs(self):
"""观察模式ID列表,将规则ID加入本参数列表中代表该ID使用观察模式生效,即该规则ID进入观察模式。
:rtype: list of int
"""
return self._ObserveRuleIDs
@ObserveRuleIDs.setter
def ObserveRuleIDs(self, ObserveRuleIDs):
self._ObserveRuleIDs = ObserveRuleIDs
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._BlockRuleIDs = params.get("BlockRuleIDs")
self._ObserveRuleIDs = params.get("ObserveRuleIDs")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class WebSocket(AbstractModel):
"""WebSocket配置
"""
def __init__(self):
r"""
:param _Switch: WebSocket 超时时间配置开关,取值有:
<li>on:使用Timeout作为WebSocket超时时间;</li>
<li>off:平台仍支持WebSocket连接,此时使用系统默认的15秒为超时时间。</li>
:type Switch: str
:param _Timeout: 超时时间,单位为秒,最大超时时间120秒。
:type Timeout: int
"""
self._Switch = None
self._Timeout = None
@property
def Switch(self):
"""WebSocket 超时时间配置开关,取值有:
<li>on:使用Timeout作为WebSocket超时时间;</li>
<li>off:平台仍支持WebSocket连接,此时使用系统默认的15秒为超时时间。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Timeout(self):
"""超时时间,单位为秒,最大超时时间120秒。
:rtype: int
"""
return self._Timeout
@Timeout.setter
def Timeout(self, Timeout):
self._Timeout = Timeout
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Timeout = params.get("Timeout")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class WebSocketParameters(AbstractModel):
"""WebSocket 配置。
"""
def __init__(self):
r"""
:param _Switch: WebSocket 超时时间配置开关,取值有:
<li>on:使用 Timeout 作为 WebSocket 超时时间;</li>
<li>off:平台仍支持 WebSocket 连接,此时使用系统默认的 15 秒为超时时间。</li>
:type Switch: str
:param _Timeout: 超时时间,单位为秒,最大超时时间 120 秒。<br>注意:当 Switch 为 on 时,此字段必填,否则此字段不生效。
:type Timeout: int
"""
self._Switch = None
self._Timeout = None
@property
def Switch(self):
"""WebSocket 超时时间配置开关,取值有:
<li>on:使用 Timeout 作为 WebSocket 超时时间;</li>
<li>off:平台仍支持 WebSocket 连接,此时使用系统默认的 15 秒为超时时间。</li>
:rtype: str
"""
return self._Switch
@Switch.setter
def Switch(self, Switch):
self._Switch = Switch
@property
def Timeout(self):
"""超时时间,单位为秒,最大超时时间 120 秒。<br>注意:当 Switch 为 on 时,此字段必填,否则此字段不生效。
:rtype: int
"""
return self._Timeout
@Timeout.setter
def Timeout(self, Timeout):
self._Timeout = Timeout
def _deserialize(self, params):
self._Switch = params.get("Switch")
self._Timeout = params.get("Timeout")
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class Zone(AbstractModel):
"""站点信息
"""
def __init__(self):
r"""
:param _ZoneId: 站点 ID。
:type ZoneId: str
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _OriginalNameServers: 站点当前使用的 NS 列表。
:type OriginalNameServers: list of str
:param _NameServers: 腾讯云分配的 NS 列表。
:type NameServers: list of str
:param _Status: 站点状态,取值有:
<li> active:NS 已切换; </li>
<li> pending:NS 未切换;</li>
<li> moved:NS 已切走;</li>
<li> deactivated:被封禁。 </li>
<li> initializing:待绑定套餐。 </li>
:type Status: str
:param _Type: 站点接入方式,取值有:
<li> full:NS 接入;</li>
<li> partial:CNAME 接入;</li>
<li> noDomainAccess:无域名接入;</li>
:type Type: str
:param _Paused: 站点是否关闭。
:type Paused: bool
:param _CnameSpeedUp: 是否开启 CNAME 加速,取值有:
<li> enabled:开启;</li>
<li> disabled:关闭。</li>
:type CnameSpeedUp: str
:param _CnameStatus: CNAME 接入状态,取值有:
<li> finished:站点已验证;</li>
<li> pending:站点验证中。</li>
:type CnameStatus: str
:param _Tags: 资源标签列表。
:type Tags: list of Tag
:param _Resources: 计费资源列表。
:type Resources: list of Resource
:param _CreatedOn: 站点创建时间。
:type CreatedOn: str
:param _ModifiedOn: 站点修改时间。
:type ModifiedOn: str
:param _Area: 站点接入地域,取值有:
<li> global:全球;</li>
<li> mainland:中国大陆;</li>
<li> overseas:境外区域。</li>
:type Area: str
:param _VanityNameServers: 用户自定义 NS 信息。
注意:此字段可能返回 null,表示取不到有效值。
:type VanityNameServers: :class:`tencentcloud.teo.v20220901.models.VanityNameServers`
:param _VanityNameServersIps: 用户自定义 NS IP 信息。
注意:此字段可能返回 null,表示取不到有效值。
:type VanityNameServersIps: list of VanityNameServersIps
:param _ActiveStatus: 展示状态,取值有:
<li> active:已启用;</li>
<li> inactive:未生效;</li>
<li> paused:已停用。</li>
:type ActiveStatus: str
:param _AliasZoneName: 站点别名。数字、英文、-和_组合,限制20个字符。
注意:此字段可能返回 null,表示取不到有效值。
:type AliasZoneName: str
:param _IsFake: 是否伪站点,取值有:
<li> 0:非伪站点;</li>
<li> 1:伪站点。</li>
:type IsFake: int
:param _LockStatus: 锁定状态,取值有:<li> enable:正常,允许进行修改操作;</li><li> disable:锁定中,不允许进行修改操作;</li><li> plan_migrate:套餐迁移中,不允许进行修改操作。</li>
:type LockStatus: str
:param _OwnershipVerification: 归属权验证信息。
注意:此字段可能返回 null,表示取不到有效值。
:type OwnershipVerification: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
"""
self._ZoneId = None
self._ZoneName = None
self._OriginalNameServers = None
self._NameServers = None
self._Status = None
self._Type = None
self._Paused = None
self._CnameSpeedUp = None
self._CnameStatus = None
self._Tags = None
self._Resources = None
self._CreatedOn = None
self._ModifiedOn = None
self._Area = None
self._VanityNameServers = None
self._VanityNameServersIps = None
self._ActiveStatus = None
self._AliasZoneName = None
self._IsFake = None
self._LockStatus = None
self._OwnershipVerification = None
@property
def ZoneId(self):
"""站点 ID。
:rtype: str
"""
return self._ZoneId
@ZoneId.setter
def ZoneId(self, ZoneId):
self._ZoneId = ZoneId
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def OriginalNameServers(self):
"""站点当前使用的 NS 列表。
:rtype: list of str
"""
return self._OriginalNameServers
@OriginalNameServers.setter
def OriginalNameServers(self, OriginalNameServers):
self._OriginalNameServers = OriginalNameServers
@property
def NameServers(self):
"""腾讯云分配的 NS 列表。
:rtype: list of str
"""
return self._NameServers
@NameServers.setter
def NameServers(self, NameServers):
self._NameServers = NameServers
@property
def Status(self):
"""站点状态,取值有:
<li> active:NS 已切换; </li>
<li> pending:NS 未切换;</li>
<li> moved:NS 已切走;</li>
<li> deactivated:被封禁。 </li>
<li> initializing:待绑定套餐。 </li>
:rtype: str
"""
return self._Status
@Status.setter
def Status(self, Status):
self._Status = Status
@property
def Type(self):
"""站点接入方式,取值有:
<li> full:NS 接入;</li>
<li> partial:CNAME 接入;</li>
<li> noDomainAccess:无域名接入;</li>
:rtype: str
"""
return self._Type
@Type.setter
def Type(self, Type):
self._Type = Type
@property
def Paused(self):
"""站点是否关闭。
:rtype: bool
"""
return self._Paused
@Paused.setter
def Paused(self, Paused):
self._Paused = Paused
@property
def CnameSpeedUp(self):
"""是否开启 CNAME 加速,取值有:
<li> enabled:开启;</li>
<li> disabled:关闭。</li>
:rtype: str
"""
return self._CnameSpeedUp
@CnameSpeedUp.setter
def CnameSpeedUp(self, CnameSpeedUp):
self._CnameSpeedUp = CnameSpeedUp
@property
def CnameStatus(self):
"""CNAME 接入状态,取值有:
<li> finished:站点已验证;</li>
<li> pending:站点验证中。</li>
:rtype: str
"""
return self._CnameStatus
@CnameStatus.setter
def CnameStatus(self, CnameStatus):
self._CnameStatus = CnameStatus
@property
def Tags(self):
"""资源标签列表。
:rtype: list of Tag
"""
return self._Tags
@Tags.setter
def Tags(self, Tags):
self._Tags = Tags
@property
def Resources(self):
"""计费资源列表。
:rtype: list of Resource
"""
return self._Resources
@Resources.setter
def Resources(self, Resources):
self._Resources = Resources
@property
def CreatedOn(self):
"""站点创建时间。
:rtype: str
"""
return self._CreatedOn
@CreatedOn.setter
def CreatedOn(self, CreatedOn):
self._CreatedOn = CreatedOn
@property
def ModifiedOn(self):
"""站点修改时间。
:rtype: str
"""
return self._ModifiedOn
@ModifiedOn.setter
def ModifiedOn(self, ModifiedOn):
self._ModifiedOn = ModifiedOn
@property
def Area(self):
"""站点接入地域,取值有:
<li> global:全球;</li>
<li> mainland:中国大陆;</li>
<li> overseas:境外区域。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def VanityNameServers(self):
"""用户自定义 NS 信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.VanityNameServers`
"""
return self._VanityNameServers
@VanityNameServers.setter
def VanityNameServers(self, VanityNameServers):
self._VanityNameServers = VanityNameServers
@property
def VanityNameServersIps(self):
"""用户自定义 NS IP 信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: list of VanityNameServersIps
"""
return self._VanityNameServersIps
@VanityNameServersIps.setter
def VanityNameServersIps(self, VanityNameServersIps):
self._VanityNameServersIps = VanityNameServersIps
@property
def ActiveStatus(self):
"""展示状态,取值有:
<li> active:已启用;</li>
<li> inactive:未生效;</li>
<li> paused:已停用。</li>
:rtype: str
"""
return self._ActiveStatus
@ActiveStatus.setter
def ActiveStatus(self, ActiveStatus):
self._ActiveStatus = ActiveStatus
@property
def AliasZoneName(self):
"""站点别名。数字、英文、-和_组合,限制20个字符。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: str
"""
return self._AliasZoneName
@AliasZoneName.setter
def AliasZoneName(self, AliasZoneName):
self._AliasZoneName = AliasZoneName
@property
def IsFake(self):
"""是否伪站点,取值有:
<li> 0:非伪站点;</li>
<li> 1:伪站点。</li>
:rtype: int
"""
return self._IsFake
@IsFake.setter
def IsFake(self, IsFake):
self._IsFake = IsFake
@property
def LockStatus(self):
"""锁定状态,取值有:<li> enable:正常,允许进行修改操作;</li><li> disable:锁定中,不允许进行修改操作;</li><li> plan_migrate:套餐迁移中,不允许进行修改操作。</li>
:rtype: str
"""
return self._LockStatus
@LockStatus.setter
def LockStatus(self, LockStatus):
self._LockStatus = LockStatus
@property
def OwnershipVerification(self):
"""归属权验证信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OwnershipVerification`
"""
return self._OwnershipVerification
@OwnershipVerification.setter
def OwnershipVerification(self, OwnershipVerification):
self._OwnershipVerification = OwnershipVerification
def _deserialize(self, params):
self._ZoneId = params.get("ZoneId")
self._ZoneName = params.get("ZoneName")
self._OriginalNameServers = params.get("OriginalNameServers")
self._NameServers = params.get("NameServers")
self._Status = params.get("Status")
self._Type = params.get("Type")
self._Paused = params.get("Paused")
self._CnameSpeedUp = params.get("CnameSpeedUp")
self._CnameStatus = params.get("CnameStatus")
if params.get("Tags") is not None:
self._Tags = []
for item in params.get("Tags"):
obj = Tag()
obj._deserialize(item)
self._Tags.append(obj)
if params.get("Resources") is not None:
self._Resources = []
for item in params.get("Resources"):
obj = Resource()
obj._deserialize(item)
self._Resources.append(obj)
self._CreatedOn = params.get("CreatedOn")
self._ModifiedOn = params.get("ModifiedOn")
self._Area = params.get("Area")
if params.get("VanityNameServers") is not None:
self._VanityNameServers = VanityNameServers()
self._VanityNameServers._deserialize(params.get("VanityNameServers"))
if params.get("VanityNameServersIps") is not None:
self._VanityNameServersIps = []
for item in params.get("VanityNameServersIps"):
obj = VanityNameServersIps()
obj._deserialize(item)
self._VanityNameServersIps.append(obj)
self._ActiveStatus = params.get("ActiveStatus")
self._AliasZoneName = params.get("AliasZoneName")
self._IsFake = params.get("IsFake")
self._LockStatus = params.get("LockStatus")
if params.get("OwnershipVerification") is not None:
self._OwnershipVerification = OwnershipVerification()
self._OwnershipVerification._deserialize(params.get("OwnershipVerification"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ZoneConfig(AbstractModel):
"""站点加速配置。
"""
def __init__(self):
r"""
:param _SmartRouting: 智能加速配置。
注意:此字段可能返回 null,表示取不到有效值。
:type SmartRouting: :class:`tencentcloud.teo.v20220901.models.SmartRoutingParameters`
:param _Cache: 缓存过期时间配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Cache: :class:`tencentcloud.teo.v20220901.models.CacheConfigParameters`
:param _MaxAge: 浏览器缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:type MaxAge: :class:`tencentcloud.teo.v20220901.models.MaxAgeParameters`
:param _CacheKey: 节点缓存键配置。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheKey: :class:`tencentcloud.teo.v20220901.models.CacheKeyConfigParameters`
:param _CachePrefresh: 缓存预刷新配置。
注意:此字段可能返回 null,表示取不到有效值。
:type CachePrefresh: :class:`tencentcloud.teo.v20220901.models.CachePrefreshParameters`
:param _OfflineCache: 离线缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:type OfflineCache: :class:`tencentcloud.teo.v20220901.models.OfflineCacheParameters`
:param _Compression: 智能压缩配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Compression: :class:`tencentcloud.teo.v20220901.models.CompressionParameters`
:param _ForceRedirectHTTPS: 访问协议强制 HTTPS 跳转配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ForceRedirectHTTPS: :class:`tencentcloud.teo.v20220901.models.ForceRedirectHTTPSParameters`
:param _HSTS: HSTS 相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:type HSTS: :class:`tencentcloud.teo.v20220901.models.HSTSParameters`
:param _TLSConfig: TLS 相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:type TLSConfig: :class:`tencentcloud.teo.v20220901.models.TLSConfigParameters`
:param _OCSPStapling: OCSP 装订配置。
注意:此字段可能返回 null,表示取不到有效值。
:type OCSPStapling: :class:`tencentcloud.teo.v20220901.models.OCSPStaplingParameters`
:param _HTTP2: HTTP2 相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:type HTTP2: :class:`tencentcloud.teo.v20220901.models.HTTP2Parameters`
:param _QUIC: QUIC 访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:type QUIC: :class:`tencentcloud.teo.v20220901.models.QUICParameters`
:param _UpstreamHTTP2: HTTP2 回源配置。
注意:此字段可能返回 null,表示取不到有效值。
:type UpstreamHTTP2: :class:`tencentcloud.teo.v20220901.models.UpstreamHTTP2Parameters`
:param _IPv6: IPv6 访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:type IPv6: :class:`tencentcloud.teo.v20220901.models.IPv6Parameters`
:param _WebSocket: WebSocket 配置。
注意:此字段可能返回 null,表示取不到有效值。
:type WebSocket: :class:`tencentcloud.teo.v20220901.models.WebSocketParameters`
:param _PostMaxSize: POST 请求传输配置。
注意:此字段可能返回 null,表示取不到有效值。
:type PostMaxSize: :class:`tencentcloud.teo.v20220901.models.PostMaxSizeParameters`
:param _ClientIPHeader: 客户端 IP 回源请求头配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIPHeader: :class:`tencentcloud.teo.v20220901.models.ClientIPHeaderParameters`
:param _ClientIPCountry: 回源时是否携带客户端 IP 所属地域信息的配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIPCountry: :class:`tencentcloud.teo.v20220901.models.ClientIPCountryParameters`
:param _Grpc: gRPC 协议支持配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Grpc: :class:`tencentcloud.teo.v20220901.models.GrpcParameters`
:param _AccelerateMainland: 中国大陆加速优化配置。
注意:此字段可能返回 null,表示取不到有效值。
:type AccelerateMainland: :class:`tencentcloud.teo.v20220901.models.AccelerateMainlandParameters`
:param _StandardDebug: 标准 Debug 配置。
注意:此字段可能返回 null,表示取不到有效值。
:type StandardDebug: :class:`tencentcloud.teo.v20220901.models.StandardDebugParameters`
"""
self._SmartRouting = None
self._Cache = None
self._MaxAge = None
self._CacheKey = None
self._CachePrefresh = None
self._OfflineCache = None
self._Compression = None
self._ForceRedirectHTTPS = None
self._HSTS = None
self._TLSConfig = None
self._OCSPStapling = None
self._HTTP2 = None
self._QUIC = None
self._UpstreamHTTP2 = None
self._IPv6 = None
self._WebSocket = None
self._PostMaxSize = None
self._ClientIPHeader = None
self._ClientIPCountry = None
self._Grpc = None
self._AccelerateMainland = None
self._StandardDebug = None
@property
def SmartRouting(self):
"""智能加速配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SmartRoutingParameters`
"""
return self._SmartRouting
@SmartRouting.setter
def SmartRouting(self, SmartRouting):
self._SmartRouting = SmartRouting
@property
def Cache(self):
"""缓存过期时间配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheConfigParameters`
"""
return self._Cache
@Cache.setter
def Cache(self, Cache):
self._Cache = Cache
@property
def MaxAge(self):
"""浏览器缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.MaxAgeParameters`
"""
return self._MaxAge
@MaxAge.setter
def MaxAge(self, MaxAge):
self._MaxAge = MaxAge
@property
def CacheKey(self):
"""节点缓存键配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKeyConfigParameters`
"""
return self._CacheKey
@CacheKey.setter
def CacheKey(self, CacheKey):
self._CacheKey = CacheKey
@property
def CachePrefresh(self):
"""缓存预刷新配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CachePrefreshParameters`
"""
return self._CachePrefresh
@CachePrefresh.setter
def CachePrefresh(self, CachePrefresh):
self._CachePrefresh = CachePrefresh
@property
def OfflineCache(self):
"""离线缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OfflineCacheParameters`
"""
return self._OfflineCache
@OfflineCache.setter
def OfflineCache(self, OfflineCache):
self._OfflineCache = OfflineCache
@property
def Compression(self):
"""智能压缩配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CompressionParameters`
"""
return self._Compression
@Compression.setter
def Compression(self, Compression):
self._Compression = Compression
@property
def ForceRedirectHTTPS(self):
"""访问协议强制 HTTPS 跳转配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ForceRedirectHTTPSParameters`
"""
return self._ForceRedirectHTTPS
@ForceRedirectHTTPS.setter
def ForceRedirectHTTPS(self, ForceRedirectHTTPS):
self._ForceRedirectHTTPS = ForceRedirectHTTPS
@property
def HSTS(self):
"""HSTS 相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HSTSParameters`
"""
return self._HSTS
@HSTS.setter
def HSTS(self, HSTS):
self._HSTS = HSTS
@property
def TLSConfig(self):
"""TLS 相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.TLSConfigParameters`
"""
return self._TLSConfig
@TLSConfig.setter
def TLSConfig(self, TLSConfig):
self._TLSConfig = TLSConfig
@property
def OCSPStapling(self):
"""OCSP 装订配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OCSPStaplingParameters`
"""
return self._OCSPStapling
@OCSPStapling.setter
def OCSPStapling(self, OCSPStapling):
self._OCSPStapling = OCSPStapling
@property
def HTTP2(self):
"""HTTP2 相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.HTTP2Parameters`
"""
return self._HTTP2
@HTTP2.setter
def HTTP2(self, HTTP2):
self._HTTP2 = HTTP2
@property
def QUIC(self):
"""QUIC 访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.QUICParameters`
"""
return self._QUIC
@QUIC.setter
def QUIC(self, QUIC):
self._QUIC = QUIC
@property
def UpstreamHTTP2(self):
"""HTTP2 回源配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamHTTP2Parameters`
"""
return self._UpstreamHTTP2
@UpstreamHTTP2.setter
def UpstreamHTTP2(self, UpstreamHTTP2):
self._UpstreamHTTP2 = UpstreamHTTP2
@property
def IPv6(self):
"""IPv6 访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.IPv6Parameters`
"""
return self._IPv6
@IPv6.setter
def IPv6(self, IPv6):
self._IPv6 = IPv6
@property
def WebSocket(self):
"""WebSocket 配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.WebSocketParameters`
"""
return self._WebSocket
@WebSocket.setter
def WebSocket(self, WebSocket):
self._WebSocket = WebSocket
@property
def PostMaxSize(self):
"""POST 请求传输配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.PostMaxSizeParameters`
"""
return self._PostMaxSize
@PostMaxSize.setter
def PostMaxSize(self, PostMaxSize):
self._PostMaxSize = PostMaxSize
@property
def ClientIPHeader(self):
"""客户端 IP 回源请求头配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIPHeaderParameters`
"""
return self._ClientIPHeader
@ClientIPHeader.setter
def ClientIPHeader(self, ClientIPHeader):
self._ClientIPHeader = ClientIPHeader
@property
def ClientIPCountry(self):
"""回源时是否携带客户端 IP 所属地域信息的配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIPCountryParameters`
"""
return self._ClientIPCountry
@ClientIPCountry.setter
def ClientIPCountry(self, ClientIPCountry):
self._ClientIPCountry = ClientIPCountry
@property
def Grpc(self):
"""gRPC 协议支持配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.GrpcParameters`
"""
return self._Grpc
@Grpc.setter
def Grpc(self, Grpc):
self._Grpc = Grpc
@property
def AccelerateMainland(self):
"""中国大陆加速优化配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerateMainlandParameters`
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
@property
def StandardDebug(self):
"""标准 Debug 配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.StandardDebugParameters`
"""
return self._StandardDebug
@StandardDebug.setter
def StandardDebug(self, StandardDebug):
self._StandardDebug = StandardDebug
def _deserialize(self, params):
if params.get("SmartRouting") is not None:
self._SmartRouting = SmartRoutingParameters()
self._SmartRouting._deserialize(params.get("SmartRouting"))
if params.get("Cache") is not None:
self._Cache = CacheConfigParameters()
self._Cache._deserialize(params.get("Cache"))
if params.get("MaxAge") is not None:
self._MaxAge = MaxAgeParameters()
self._MaxAge._deserialize(params.get("MaxAge"))
if params.get("CacheKey") is not None:
self._CacheKey = CacheKeyConfigParameters()
self._CacheKey._deserialize(params.get("CacheKey"))
if params.get("CachePrefresh") is not None:
self._CachePrefresh = CachePrefreshParameters()
self._CachePrefresh._deserialize(params.get("CachePrefresh"))
if params.get("OfflineCache") is not None:
self._OfflineCache = OfflineCacheParameters()
self._OfflineCache._deserialize(params.get("OfflineCache"))
if params.get("Compression") is not None:
self._Compression = CompressionParameters()
self._Compression._deserialize(params.get("Compression"))
if params.get("ForceRedirectHTTPS") is not None:
self._ForceRedirectHTTPS = ForceRedirectHTTPSParameters()
self._ForceRedirectHTTPS._deserialize(params.get("ForceRedirectHTTPS"))
if params.get("HSTS") is not None:
self._HSTS = HSTSParameters()
self._HSTS._deserialize(params.get("HSTS"))
if params.get("TLSConfig") is not None:
self._TLSConfig = TLSConfigParameters()
self._TLSConfig._deserialize(params.get("TLSConfig"))
if params.get("OCSPStapling") is not None:
self._OCSPStapling = OCSPStaplingParameters()
self._OCSPStapling._deserialize(params.get("OCSPStapling"))
if params.get("HTTP2") is not None:
self._HTTP2 = HTTP2Parameters()
self._HTTP2._deserialize(params.get("HTTP2"))
if params.get("QUIC") is not None:
self._QUIC = QUICParameters()
self._QUIC._deserialize(params.get("QUIC"))
if params.get("UpstreamHTTP2") is not None:
self._UpstreamHTTP2 = UpstreamHTTP2Parameters()
self._UpstreamHTTP2._deserialize(params.get("UpstreamHTTP2"))
if params.get("IPv6") is not None:
self._IPv6 = IPv6Parameters()
self._IPv6._deserialize(params.get("IPv6"))
if params.get("WebSocket") is not None:
self._WebSocket = WebSocketParameters()
self._WebSocket._deserialize(params.get("WebSocket"))
if params.get("PostMaxSize") is not None:
self._PostMaxSize = PostMaxSizeParameters()
self._PostMaxSize._deserialize(params.get("PostMaxSize"))
if params.get("ClientIPHeader") is not None:
self._ClientIPHeader = ClientIPHeaderParameters()
self._ClientIPHeader._deserialize(params.get("ClientIPHeader"))
if params.get("ClientIPCountry") is not None:
self._ClientIPCountry = ClientIPCountryParameters()
self._ClientIPCountry._deserialize(params.get("ClientIPCountry"))
if params.get("Grpc") is not None:
self._Grpc = GrpcParameters()
self._Grpc._deserialize(params.get("Grpc"))
if params.get("AccelerateMainland") is not None:
self._AccelerateMainland = AccelerateMainlandParameters()
self._AccelerateMainland._deserialize(params.get("AccelerateMainland"))
if params.get("StandardDebug") is not None:
self._StandardDebug = StandardDebugParameters()
self._StandardDebug._deserialize(params.get("StandardDebug"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ZoneConfigParameters(AbstractModel):
"""站点配置相关信息。
"""
def __init__(self):
r"""
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _ZoneConfig: 站点配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:type ZoneConfig: :class:`tencentcloud.teo.v20220901.models.ZoneConfig`
"""
self._ZoneName = None
self._ZoneConfig = None
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def ZoneConfig(self):
"""站点配置信息。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ZoneConfig`
"""
return self._ZoneConfig
@ZoneConfig.setter
def ZoneConfig(self, ZoneConfig):
self._ZoneConfig = ZoneConfig
def _deserialize(self, params):
self._ZoneName = params.get("ZoneName")
if params.get("ZoneConfig") is not None:
self._ZoneConfig = ZoneConfig()
self._ZoneConfig._deserialize(params.get("ZoneConfig"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))
class ZoneSetting(AbstractModel):
"""站点配置。
"""
def __init__(self):
r"""
:param _ZoneName: 站点名称。
:type ZoneName: str
:param _Area: 站点加速区域信息,取值有:
<li> mainland:中国境内加速;</li>
<li> overseas:中国境外加速。</li>
:type Area: str
:param _CacheKey: 节点缓存键配置。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheKey: :class:`tencentcloud.teo.v20220901.models.CacheKey`
:param _Quic: Quic访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Quic: :class:`tencentcloud.teo.v20220901.models.Quic`
:param _PostMaxSize: POST请求传输配置。
注意:此字段可能返回 null,表示取不到有效值。
:type PostMaxSize: :class:`tencentcloud.teo.v20220901.models.PostMaxSize`
:param _Compression: 智能压缩配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Compression: :class:`tencentcloud.teo.v20220901.models.Compression`
:param _UpstreamHttp2: Http2回源配置。
注意:此字段可能返回 null,表示取不到有效值。
:type UpstreamHttp2: :class:`tencentcloud.teo.v20220901.models.UpstreamHttp2`
:param _ForceRedirect: 访问协议强制Https跳转配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ForceRedirect: :class:`tencentcloud.teo.v20220901.models.ForceRedirect`
:param _CacheConfig: 缓存过期时间配置。
注意:此字段可能返回 null,表示取不到有效值。
:type CacheConfig: :class:`tencentcloud.teo.v20220901.models.CacheConfig`
:param _Origin: 源站配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Origin: :class:`tencentcloud.teo.v20220901.models.Origin`
:param _SmartRouting: 智能加速配置。
注意:此字段可能返回 null,表示取不到有效值。
:type SmartRouting: :class:`tencentcloud.teo.v20220901.models.SmartRouting`
:param _MaxAge: 浏览器缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:type MaxAge: :class:`tencentcloud.teo.v20220901.models.MaxAge`
:param _OfflineCache: 离线缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:type OfflineCache: :class:`tencentcloud.teo.v20220901.models.OfflineCache`
:param _WebSocket: WebSocket配置。
注意:此字段可能返回 null,表示取不到有效值。
:type WebSocket: :class:`tencentcloud.teo.v20220901.models.WebSocket`
:param _ClientIpHeader: 客户端IP回源请求头配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIpHeader: :class:`tencentcloud.teo.v20220901.models.ClientIpHeader`
:param _CachePrefresh: 缓存预刷新配置。
注意:此字段可能返回 null,表示取不到有效值。
:type CachePrefresh: :class:`tencentcloud.teo.v20220901.models.CachePrefresh`
:param _Ipv6: Ipv6访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Ipv6: :class:`tencentcloud.teo.v20220901.models.Ipv6`
:param _Https: Https 加速配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Https: :class:`tencentcloud.teo.v20220901.models.Https`
:param _ClientIpCountry: 回源时是否携带客户端IP所属地域信息的配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ClientIpCountry: :class:`tencentcloud.teo.v20220901.models.ClientIpCountry`
:param _Grpc: Grpc协议支持配置。
注意:此字段可能返回 null,表示取不到有效值。
:type Grpc: :class:`tencentcloud.teo.v20220901.models.Grpc`
:param _ImageOptimize: 图片优化相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:type ImageOptimize: :class:`tencentcloud.teo.v20220901.models.ImageOptimize`
:param _AccelerateMainland: 中国大陆加速优化配置。
注意:此字段可能返回 null,表示取不到有效值。
:type AccelerateMainland: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
:param _StandardDebug: 标准 Debug 配置。
注意:此字段可能返回 null,表示取不到有效值。
:type StandardDebug: :class:`tencentcloud.teo.v20220901.models.StandardDebug`
:param _JITVideoProcess: 视频即时处理配置。
注意:此字段可能返回 null,表示取不到有效值。
:type JITVideoProcess: :class:`tencentcloud.teo.v20220901.models.JITVideoProcess`
"""
self._ZoneName = None
self._Area = None
self._CacheKey = None
self._Quic = None
self._PostMaxSize = None
self._Compression = None
self._UpstreamHttp2 = None
self._ForceRedirect = None
self._CacheConfig = None
self._Origin = None
self._SmartRouting = None
self._MaxAge = None
self._OfflineCache = None
self._WebSocket = None
self._ClientIpHeader = None
self._CachePrefresh = None
self._Ipv6 = None
self._Https = None
self._ClientIpCountry = None
self._Grpc = None
self._ImageOptimize = None
self._AccelerateMainland = None
self._StandardDebug = None
self._JITVideoProcess = None
@property
def ZoneName(self):
"""站点名称。
:rtype: str
"""
return self._ZoneName
@ZoneName.setter
def ZoneName(self, ZoneName):
self._ZoneName = ZoneName
@property
def Area(self):
"""站点加速区域信息,取值有:
<li> mainland:中国境内加速;</li>
<li> overseas:中国境外加速。</li>
:rtype: str
"""
return self._Area
@Area.setter
def Area(self, Area):
self._Area = Area
@property
def CacheKey(self):
"""节点缓存键配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheKey`
"""
return self._CacheKey
@CacheKey.setter
def CacheKey(self, CacheKey):
self._CacheKey = CacheKey
@property
def Quic(self):
"""Quic访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Quic`
"""
return self._Quic
@Quic.setter
def Quic(self, Quic):
self._Quic = Quic
@property
def PostMaxSize(self):
"""POST请求传输配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.PostMaxSize`
"""
return self._PostMaxSize
@PostMaxSize.setter
def PostMaxSize(self, PostMaxSize):
self._PostMaxSize = PostMaxSize
@property
def Compression(self):
"""智能压缩配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Compression`
"""
return self._Compression
@Compression.setter
def Compression(self, Compression):
self._Compression = Compression
@property
def UpstreamHttp2(self):
"""Http2回源配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.UpstreamHttp2`
"""
return self._UpstreamHttp2
@UpstreamHttp2.setter
def UpstreamHttp2(self, UpstreamHttp2):
self._UpstreamHttp2 = UpstreamHttp2
@property
def ForceRedirect(self):
"""访问协议强制Https跳转配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ForceRedirect`
"""
return self._ForceRedirect
@ForceRedirect.setter
def ForceRedirect(self, ForceRedirect):
self._ForceRedirect = ForceRedirect
@property
def CacheConfig(self):
"""缓存过期时间配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CacheConfig`
"""
return self._CacheConfig
@CacheConfig.setter
def CacheConfig(self, CacheConfig):
self._CacheConfig = CacheConfig
@property
def Origin(self):
"""源站配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Origin`
"""
return self._Origin
@Origin.setter
def Origin(self, Origin):
self._Origin = Origin
@property
def SmartRouting(self):
"""智能加速配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.SmartRouting`
"""
return self._SmartRouting
@SmartRouting.setter
def SmartRouting(self, SmartRouting):
self._SmartRouting = SmartRouting
@property
def MaxAge(self):
"""浏览器缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.MaxAge`
"""
return self._MaxAge
@MaxAge.setter
def MaxAge(self, MaxAge):
self._MaxAge = MaxAge
@property
def OfflineCache(self):
"""离线缓存配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.OfflineCache`
"""
return self._OfflineCache
@OfflineCache.setter
def OfflineCache(self, OfflineCache):
self._OfflineCache = OfflineCache
@property
def WebSocket(self):
"""WebSocket配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.WebSocket`
"""
return self._WebSocket
@WebSocket.setter
def WebSocket(self, WebSocket):
self._WebSocket = WebSocket
@property
def ClientIpHeader(self):
"""客户端IP回源请求头配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIpHeader`
"""
return self._ClientIpHeader
@ClientIpHeader.setter
def ClientIpHeader(self, ClientIpHeader):
self._ClientIpHeader = ClientIpHeader
@property
def CachePrefresh(self):
"""缓存预刷新配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.CachePrefresh`
"""
return self._CachePrefresh
@CachePrefresh.setter
def CachePrefresh(self, CachePrefresh):
self._CachePrefresh = CachePrefresh
@property
def Ipv6(self):
"""Ipv6访问配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Ipv6`
"""
return self._Ipv6
@Ipv6.setter
def Ipv6(self, Ipv6):
self._Ipv6 = Ipv6
@property
def Https(self):
"""Https 加速配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Https`
"""
return self._Https
@Https.setter
def Https(self, Https):
self._Https = Https
@property
def ClientIpCountry(self):
"""回源时是否携带客户端IP所属地域信息的配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ClientIpCountry`
"""
return self._ClientIpCountry
@ClientIpCountry.setter
def ClientIpCountry(self, ClientIpCountry):
self._ClientIpCountry = ClientIpCountry
@property
def Grpc(self):
"""Grpc协议支持配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.Grpc`
"""
return self._Grpc
@Grpc.setter
def Grpc(self, Grpc):
self._Grpc = Grpc
@property
def ImageOptimize(self):
"""图片优化相关配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.ImageOptimize`
"""
return self._ImageOptimize
@ImageOptimize.setter
def ImageOptimize(self, ImageOptimize):
self._ImageOptimize = ImageOptimize
@property
def AccelerateMainland(self):
"""中国大陆加速优化配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.AccelerateMainland`
"""
return self._AccelerateMainland
@AccelerateMainland.setter
def AccelerateMainland(self, AccelerateMainland):
self._AccelerateMainland = AccelerateMainland
@property
def StandardDebug(self):
"""标准 Debug 配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.StandardDebug`
"""
return self._StandardDebug
@StandardDebug.setter
def StandardDebug(self, StandardDebug):
self._StandardDebug = StandardDebug
@property
def JITVideoProcess(self):
"""视频即时处理配置。
注意:此字段可能返回 null,表示取不到有效值。
:rtype: :class:`tencentcloud.teo.v20220901.models.JITVideoProcess`
"""
return self._JITVideoProcess
@JITVideoProcess.setter
def JITVideoProcess(self, JITVideoProcess):
self._JITVideoProcess = JITVideoProcess
def _deserialize(self, params):
self._ZoneName = params.get("ZoneName")
self._Area = params.get("Area")
if params.get("CacheKey") is not None:
self._CacheKey = CacheKey()
self._CacheKey._deserialize(params.get("CacheKey"))
if params.get("Quic") is not None:
self._Quic = Quic()
self._Quic._deserialize(params.get("Quic"))
if params.get("PostMaxSize") is not None:
self._PostMaxSize = PostMaxSize()
self._PostMaxSize._deserialize(params.get("PostMaxSize"))
if params.get("Compression") is not None:
self._Compression = Compression()
self._Compression._deserialize(params.get("Compression"))
if params.get("UpstreamHttp2") is not None:
self._UpstreamHttp2 = UpstreamHttp2()
self._UpstreamHttp2._deserialize(params.get("UpstreamHttp2"))
if params.get("ForceRedirect") is not None:
self._ForceRedirect = ForceRedirect()
self._ForceRedirect._deserialize(params.get("ForceRedirect"))
if params.get("CacheConfig") is not None:
self._CacheConfig = CacheConfig()
self._CacheConfig._deserialize(params.get("CacheConfig"))
if params.get("Origin") is not None:
self._Origin = Origin()
self._Origin._deserialize(params.get("Origin"))
if params.get("SmartRouting") is not None:
self._SmartRouting = SmartRouting()
self._SmartRouting._deserialize(params.get("SmartRouting"))
if params.get("MaxAge") is not None:
self._MaxAge = MaxAge()
self._MaxAge._deserialize(params.get("MaxAge"))
if params.get("OfflineCache") is not None:
self._OfflineCache = OfflineCache()
self._OfflineCache._deserialize(params.get("OfflineCache"))
if params.get("WebSocket") is not None:
self._WebSocket = WebSocket()
self._WebSocket._deserialize(params.get("WebSocket"))
if params.get("ClientIpHeader") is not None:
self._ClientIpHeader = ClientIpHeader()
self._ClientIpHeader._deserialize(params.get("ClientIpHeader"))
if params.get("CachePrefresh") is not None:
self._CachePrefresh = CachePrefresh()
self._CachePrefresh._deserialize(params.get("CachePrefresh"))
if params.get("Ipv6") is not None:
self._Ipv6 = Ipv6()
self._Ipv6._deserialize(params.get("Ipv6"))
if params.get("Https") is not None:
self._Https = Https()
self._Https._deserialize(params.get("Https"))
if params.get("ClientIpCountry") is not None:
self._ClientIpCountry = ClientIpCountry()
self._ClientIpCountry._deserialize(params.get("ClientIpCountry"))
if params.get("Grpc") is not None:
self._Grpc = Grpc()
self._Grpc._deserialize(params.get("Grpc"))
if params.get("ImageOptimize") is not None:
self._ImageOptimize = ImageOptimize()
self._ImageOptimize._deserialize(params.get("ImageOptimize"))
if params.get("AccelerateMainland") is not None:
self._AccelerateMainland = AccelerateMainland()
self._AccelerateMainland._deserialize(params.get("AccelerateMainland"))
if params.get("StandardDebug") is not None:
self._StandardDebug = StandardDebug()
self._StandardDebug._deserialize(params.get("StandardDebug"))
if params.get("JITVideoProcess") is not None:
self._JITVideoProcess = JITVideoProcess()
self._JITVideoProcess._deserialize(params.get("JITVideoProcess"))
memeber_set = set(params.keys())
for name, value in vars(self).items():
property_name = name[1:]
if property_name in memeber_set:
memeber_set.remove(property_name)
if len(memeber_set) > 0:
warnings.warn("%s fileds are useless." % ",".join(memeber_set))