# -*- 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 CreateMonitorsRequest(AbstractModel): """CreateMonitors请求参数结构体 """ def __init__(self): r""" :param _Urls: 站点的url列表 :type Urls: list of str :param _Name: 任务名称 :type Name: str :param _ScannerType: 扫描模式,normal-正常扫描;deep-深度扫描 :type ScannerType: str :param _Crontab: 扫描周期,单位小时,每X小时执行一次 :type Crontab: int :param _RateLimit: 扫描速率限制,每秒发送X个HTTP请求 :type RateLimit: int :param _FirstScanStartTime: 首次扫描开始时间 :type FirstScanStartTime: str """ self._Urls = None self._Name = None self._ScannerType = None self._Crontab = None self._RateLimit = None self._FirstScanStartTime = None @property def Urls(self): """站点的url列表 :rtype: list of str """ return self._Urls @Urls.setter def Urls(self, Urls): self._Urls = Urls @property def Name(self): """任务名称 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def ScannerType(self): """扫描模式,normal-正常扫描;deep-深度扫描 :rtype: str """ return self._ScannerType @ScannerType.setter def ScannerType(self, ScannerType): self._ScannerType = ScannerType @property def Crontab(self): """扫描周期,单位小时,每X小时执行一次 :rtype: int """ return self._Crontab @Crontab.setter def Crontab(self, Crontab): self._Crontab = Crontab @property def RateLimit(self): """扫描速率限制,每秒发送X个HTTP请求 :rtype: int """ return self._RateLimit @RateLimit.setter def RateLimit(self, RateLimit): self._RateLimit = RateLimit @property def FirstScanStartTime(self): """首次扫描开始时间 :rtype: str """ return self._FirstScanStartTime @FirstScanStartTime.setter def FirstScanStartTime(self, FirstScanStartTime): self._FirstScanStartTime = FirstScanStartTime def _deserialize(self, params): self._Urls = params.get("Urls") self._Name = params.get("Name") self._ScannerType = params.get("ScannerType") self._Crontab = params.get("Crontab") self._RateLimit = params.get("RateLimit") self._FirstScanStartTime = params.get("FirstScanStartTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateMonitorsResponse(AbstractModel): """CreateMonitors返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 CreateSitesRequest(AbstractModel): """CreateSites请求参数结构体 """ def __init__(self): r""" :param _Urls: 站点的url列表 :type Urls: list of str :param _UserAgent: 访问网站的客户端标识 :type UserAgent: str """ self._Urls = None self._UserAgent = None @property def Urls(self): """站点的url列表 :rtype: list of str """ return self._Urls @Urls.setter def Urls(self, Urls): self._Urls = Urls @property def UserAgent(self): """访问网站的客户端标识 :rtype: str """ return self._UserAgent @UserAgent.setter def UserAgent(self, UserAgent): self._UserAgent = UserAgent def _deserialize(self, params): self._Urls = params.get("Urls") self._UserAgent = params.get("UserAgent") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateSitesResponse(AbstractModel): """CreateSites返回参数结构体 """ def __init__(self): r""" :param _Number: 新增站点数。 :type Number: int :param _Sites: 站点数组 :type Sites: list of MiniSite :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Number = None self._Sites = None self._RequestId = None @property def Number(self): """新增站点数。 :rtype: int """ return self._Number @Number.setter def Number(self, Number): self._Number = Number @property def Sites(self): """站点数组 :rtype: list of MiniSite """ return self._Sites @Sites.setter def Sites(self, Sites): self._Sites = Sites @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Number = params.get("Number") if params.get("Sites") is not None: self._Sites = [] for item in params.get("Sites"): obj = MiniSite() obj._deserialize(item) self._Sites.append(obj) self._RequestId = params.get("RequestId") class CreateSitesScansRequest(AbstractModel): """CreateSitesScans请求参数结构体 """ def __init__(self): r""" :param _SiteIds: 站点的ID列表 :type SiteIds: list of int non-negative :param _ScannerType: 扫描模式,normal-正常扫描;deep-深度扫描 :type ScannerType: str :param _RateLimit: 扫描速率限制,每秒发送X个HTTP请求 :type RateLimit: int """ self._SiteIds = None self._ScannerType = None self._RateLimit = None @property def SiteIds(self): """站点的ID列表 :rtype: list of int non-negative """ return self._SiteIds @SiteIds.setter def SiteIds(self, SiteIds): self._SiteIds = SiteIds @property def ScannerType(self): """扫描模式,normal-正常扫描;deep-深度扫描 :rtype: str """ return self._ScannerType @ScannerType.setter def ScannerType(self, ScannerType): self._ScannerType = ScannerType @property def RateLimit(self): """扫描速率限制,每秒发送X个HTTP请求 :rtype: int """ return self._RateLimit @RateLimit.setter def RateLimit(self, RateLimit): self._RateLimit = RateLimit def _deserialize(self, params): self._SiteIds = params.get("SiteIds") self._ScannerType = params.get("ScannerType") self._RateLimit = params.get("RateLimit") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateSitesScansResponse(AbstractModel): """CreateSitesScans返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 CreateVulsMisinformationRequest(AbstractModel): """CreateVulsMisinformation请求参数结构体 """ def __init__(self): r""" :param _VulIds: 漏洞ID列表 :type VulIds: list of int non-negative """ self._VulIds = None @property def VulIds(self): """漏洞ID列表 :rtype: list of int non-negative """ return self._VulIds @VulIds.setter def VulIds(self, VulIds): self._VulIds = VulIds def _deserialize(self, params): self._VulIds = params.get("VulIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateVulsMisinformationResponse(AbstractModel): """CreateVulsMisinformation返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 CreateVulsReportRequest(AbstractModel): """CreateVulsReport请求参数结构体 """ def __init__(self): r""" :param _SiteId: 站点ID :type SiteId: int :param _MonitorId: 监控任务ID :type MonitorId: int """ self._SiteId = None self._MonitorId = None @property def SiteId(self): """站点ID :rtype: int """ return self._SiteId @SiteId.setter def SiteId(self, SiteId): self._SiteId = SiteId @property def MonitorId(self): """监控任务ID :rtype: int """ return self._MonitorId @MonitorId.setter def MonitorId(self, MonitorId): self._MonitorId = MonitorId def _deserialize(self, params): self._SiteId = params.get("SiteId") self._MonitorId = params.get("MonitorId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateVulsReportResponse(AbstractModel): """CreateVulsReport返回参数结构体 """ def __init__(self): r""" :param _ReportFileUrl: 报告下载地址 :type ReportFileUrl: str :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ReportFileUrl = None self._RequestId = None @property def ReportFileUrl(self): """报告下载地址 :rtype: str """ return self._ReportFileUrl @ReportFileUrl.setter def ReportFileUrl(self, ReportFileUrl): self._ReportFileUrl = ReportFileUrl @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ReportFileUrl = params.get("ReportFileUrl") self._RequestId = params.get("RequestId") class DeleteMonitorsRequest(AbstractModel): """DeleteMonitors请求参数结构体 """ def __init__(self): r""" :param _MonitorIds: 监控任务ID列表 :type MonitorIds: list of int non-negative """ self._MonitorIds = None @property def MonitorIds(self): """监控任务ID列表 :rtype: list of int non-negative """ return self._MonitorIds @MonitorIds.setter def MonitorIds(self, MonitorIds): self._MonitorIds = MonitorIds def _deserialize(self, params): self._MonitorIds = params.get("MonitorIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteMonitorsResponse(AbstractModel): """DeleteMonitors返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 DeleteSitesRequest(AbstractModel): """DeleteSites请求参数结构体 """ def __init__(self): r""" :param _SiteIds: 站点ID列表 :type SiteIds: list of int non-negative """ self._SiteIds = None @property def SiteIds(self): """站点ID列表 :rtype: list of int non-negative """ return self._SiteIds @SiteIds.setter def SiteIds(self, SiteIds): self._SiteIds = SiteIds def _deserialize(self, params): self._SiteIds = params.get("SiteIds") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteSitesResponse(AbstractModel): """DeleteSites返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 DescribeConfigRequest(AbstractModel): """DescribeConfig请求参数结构体 """ class DescribeConfigResponse(AbstractModel): """DescribeConfig返回参数结构体 """ def __init__(self): r""" :param _NoticeLevel: 漏洞告警通知等级,4位分别代表:高危、中危、低危、提示。 :type NoticeLevel: str :param _Id: 配置ID。 :type Id: int :param _CreatedAt: 记录创建时间。 :type CreatedAt: str :param _UpdatedAt: 记录更新新建。 :type UpdatedAt: str :param _Appid: 云用户appid。 :type Appid: int :param _ContentLevel: 内容检测通知等级-1:通知,0-不通知 :type ContentLevel: int :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._NoticeLevel = None self._Id = None self._CreatedAt = None self._UpdatedAt = None self._Appid = None self._ContentLevel = None self._RequestId = None @property def NoticeLevel(self): """漏洞告警通知等级,4位分别代表:高危、中危、低危、提示。 :rtype: str """ return self._NoticeLevel @NoticeLevel.setter def NoticeLevel(self, NoticeLevel): self._NoticeLevel = NoticeLevel @property def Id(self): """配置ID。 :rtype: int """ return self._Id @Id.setter def Id(self, Id): self._Id = Id @property def CreatedAt(self): """记录创建时间。 :rtype: str """ return self._CreatedAt @CreatedAt.setter def CreatedAt(self, CreatedAt): self._CreatedAt = CreatedAt @property def UpdatedAt(self): """记录更新新建。 :rtype: str """ return self._UpdatedAt @UpdatedAt.setter def UpdatedAt(self, UpdatedAt): self._UpdatedAt = UpdatedAt @property def Appid(self): """云用户appid。 :rtype: int """ return self._Appid @Appid.setter def Appid(self, Appid): self._Appid = Appid @property def ContentLevel(self): """内容检测通知等级-1:通知,0-不通知 :rtype: int """ return self._ContentLevel @ContentLevel.setter def ContentLevel(self, ContentLevel): self._ContentLevel = ContentLevel @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._NoticeLevel = params.get("NoticeLevel") self._Id = params.get("Id") self._CreatedAt = params.get("CreatedAt") self._UpdatedAt = params.get("UpdatedAt") self._Appid = params.get("Appid") self._ContentLevel = params.get("ContentLevel") self._RequestId = params.get("RequestId") class DescribeMonitorsRequest(AbstractModel): """DescribeMonitors请求参数结构体 """ def __init__(self): r""" :param _MonitorIds: 监控任务ID列表 :type MonitorIds: list of int non-negative :param _Filters: 过滤条件 :type Filters: list of Filter :param _Offset: 偏移量,默认为0 :type Offset: int :param _Limit: 返回数量,默认为10,最大值为100 :type Limit: int """ self._MonitorIds = None self._Filters = None self._Offset = None self._Limit = None @property def MonitorIds(self): """监控任务ID列表 :rtype: list of int non-negative """ return self._MonitorIds @MonitorIds.setter def MonitorIds(self, MonitorIds): self._MonitorIds = MonitorIds @property def Filters(self): """过滤条件 :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): """返回数量,默认为10,最大值为100 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit def _deserialize(self, params): self._MonitorIds = params.get("MonitorIds") 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 DescribeMonitorsResponse(AbstractModel): """DescribeMonitors返回参数结构体 """ def __init__(self): r""" :param _Monitors: 监控任务列表。 :type Monitors: list of MonitorsDetail :param _TotalCount: 监控任务数量。 :type TotalCount: int :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Monitors = None self._TotalCount = None self._RequestId = None @property def Monitors(self): """监控任务列表。 :rtype: list of MonitorsDetail """ return self._Monitors @Monitors.setter def Monitors(self, Monitors): self._Monitors = Monitors @property def TotalCount(self): """监控任务数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): if params.get("Monitors") is not None: self._Monitors = [] for item in params.get("Monitors"): obj = MonitorsDetail() obj._deserialize(item) self._Monitors.append(obj) self._TotalCount = params.get("TotalCount") self._RequestId = params.get("RequestId") class DescribeSiteQuotaRequest(AbstractModel): """DescribeSiteQuota请求参数结构体 """ class DescribeSiteQuotaResponse(AbstractModel): """DescribeSiteQuota返回参数结构体 """ def __init__(self): r""" :param _Total: 已购买的扫描次数。 :type Total: int :param _Used: 已使用的扫描次数。 :type Used: int :param _Available: 剩余可用的扫描次数。 :type Available: int :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Total = None self._Used = None self._Available = None self._RequestId = None @property def Total(self): """已购买的扫描次数。 :rtype: int """ return self._Total @Total.setter def Total(self, Total): self._Total = Total @property def Used(self): """已使用的扫描次数。 :rtype: int """ return self._Used @Used.setter def Used(self, Used): self._Used = Used @property def Available(self): """剩余可用的扫描次数。 :rtype: int """ return self._Available @Available.setter def Available(self, Available): self._Available = Available @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Total = params.get("Total") self._Used = params.get("Used") self._Available = params.get("Available") self._RequestId = params.get("RequestId") class DescribeSitesRequest(AbstractModel): """DescribeSites请求参数结构体 """ def __init__(self): r""" :param _SiteIds: 站点ID列表 :type SiteIds: list of int non-negative :param _Filters: 过滤条件 :type Filters: list of Filter :param _Offset: 偏移量,默认为0 :type Offset: int :param _Limit: 返回数量,默认为10,最大值为100 :type Limit: int """ self._SiteIds = None self._Filters = None self._Offset = None self._Limit = None @property def SiteIds(self): """站点ID列表 :rtype: list of int non-negative """ return self._SiteIds @SiteIds.setter def SiteIds(self, SiteIds): self._SiteIds = SiteIds @property def Filters(self): """过滤条件 :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): """返回数量,默认为10,最大值为100 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit def _deserialize(self, params): self._SiteIds = params.get("SiteIds") 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 DescribeSitesResponse(AbstractModel): """DescribeSites返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 站点数量。 :type TotalCount: int :param _Sites: 站点信息列表。 :type Sites: list of Site :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._Sites = None self._RequestId = None @property def TotalCount(self): """站点数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def Sites(self): """站点信息列表。 :rtype: list of Site """ return self._Sites @Sites.setter def Sites(self, Sites): self._Sites = Sites @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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("Sites") is not None: self._Sites = [] for item in params.get("Sites"): obj = Site() obj._deserialize(item) self._Sites.append(obj) self._RequestId = params.get("RequestId") class DescribeSitesVerificationRequest(AbstractModel): """DescribeSitesVerification请求参数结构体 """ def __init__(self): r""" :param _Urls: 站点的url列表 :type Urls: list of str """ self._Urls = None @property def Urls(self): """站点的url列表 :rtype: list of str """ return self._Urls @Urls.setter def Urls(self, Urls): self._Urls = Urls def _deserialize(self, params): self._Urls = params.get("Urls") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeSitesVerificationResponse(AbstractModel): """DescribeSitesVerification返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 验证信息数量。 :type TotalCount: int :param _SitesVerification: 验证信息列表。 :type SitesVerification: list of SitesVerification :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._SitesVerification = None self._RequestId = None @property def TotalCount(self): """验证信息数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def SitesVerification(self): """验证信息列表。 :rtype: list of SitesVerification """ return self._SitesVerification @SitesVerification.setter def SitesVerification(self, SitesVerification): self._SitesVerification = SitesVerification @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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("SitesVerification") is not None: self._SitesVerification = [] for item in params.get("SitesVerification"): obj = SitesVerification() obj._deserialize(item) self._SitesVerification.append(obj) self._RequestId = params.get("RequestId") class DescribeVulsNumberRequest(AbstractModel): """DescribeVulsNumber请求参数结构体 """ class DescribeVulsNumberResponse(AbstractModel): """DescribeVulsNumber返回参数结构体 """ def __init__(self): r""" :param _ImpactSiteNumber: 受影响的网站总数。 :type ImpactSiteNumber: int :param _SiteNumber: 已验证的网站总数。 :type SiteNumber: int :param _VulsHighNumber: 高风险漏洞总数。 :type VulsHighNumber: int :param _VulsMiddleNumber: 中风险漏洞总数。 :type VulsMiddleNumber: int :param _VulsLowNumber: 低高风险漏洞总数。 :type VulsLowNumber: int :param _VulsNoticeNumber: 风险提示总数。 :type VulsNoticeNumber: int :param _PageCount: 扫描页面总数。 :type PageCount: int :param _Sites: 已验证的网站列表。 :type Sites: list of MonitorMiniSite :param _ImpactSites: 受影响的网站列表。 :type ImpactSites: list of MonitorMiniSite :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._ImpactSiteNumber = None self._SiteNumber = None self._VulsHighNumber = None self._VulsMiddleNumber = None self._VulsLowNumber = None self._VulsNoticeNumber = None self._PageCount = None self._Sites = None self._ImpactSites = None self._RequestId = None @property def ImpactSiteNumber(self): """受影响的网站总数。 :rtype: int """ return self._ImpactSiteNumber @ImpactSiteNumber.setter def ImpactSiteNumber(self, ImpactSiteNumber): self._ImpactSiteNumber = ImpactSiteNumber @property def SiteNumber(self): """已验证的网站总数。 :rtype: int """ return self._SiteNumber @SiteNumber.setter def SiteNumber(self, SiteNumber): self._SiteNumber = SiteNumber @property def VulsHighNumber(self): """高风险漏洞总数。 :rtype: int """ return self._VulsHighNumber @VulsHighNumber.setter def VulsHighNumber(self, VulsHighNumber): self._VulsHighNumber = VulsHighNumber @property def VulsMiddleNumber(self): """中风险漏洞总数。 :rtype: int """ return self._VulsMiddleNumber @VulsMiddleNumber.setter def VulsMiddleNumber(self, VulsMiddleNumber): self._VulsMiddleNumber = VulsMiddleNumber @property def VulsLowNumber(self): """低高风险漏洞总数。 :rtype: int """ return self._VulsLowNumber @VulsLowNumber.setter def VulsLowNumber(self, VulsLowNumber): self._VulsLowNumber = VulsLowNumber @property def VulsNoticeNumber(self): """风险提示总数。 :rtype: int """ return self._VulsNoticeNumber @VulsNoticeNumber.setter def VulsNoticeNumber(self, VulsNoticeNumber): self._VulsNoticeNumber = VulsNoticeNumber @property def PageCount(self): """扫描页面总数。 :rtype: int """ return self._PageCount @PageCount.setter def PageCount(self, PageCount): self._PageCount = PageCount @property def Sites(self): """已验证的网站列表。 :rtype: list of MonitorMiniSite """ return self._Sites @Sites.setter def Sites(self, Sites): self._Sites = Sites @property def ImpactSites(self): """受影响的网站列表。 :rtype: list of MonitorMiniSite """ return self._ImpactSites @ImpactSites.setter def ImpactSites(self, ImpactSites): self._ImpactSites = ImpactSites @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._ImpactSiteNumber = params.get("ImpactSiteNumber") self._SiteNumber = params.get("SiteNumber") self._VulsHighNumber = params.get("VulsHighNumber") self._VulsMiddleNumber = params.get("VulsMiddleNumber") self._VulsLowNumber = params.get("VulsLowNumber") self._VulsNoticeNumber = params.get("VulsNoticeNumber") self._PageCount = params.get("PageCount") if params.get("Sites") is not None: self._Sites = [] for item in params.get("Sites"): obj = MonitorMiniSite() obj._deserialize(item) self._Sites.append(obj) if params.get("ImpactSites") is not None: self._ImpactSites = [] for item in params.get("ImpactSites"): obj = MonitorMiniSite() obj._deserialize(item) self._ImpactSites.append(obj) self._RequestId = params.get("RequestId") class DescribeVulsNumberTimelineRequest(AbstractModel): """DescribeVulsNumberTimeline请求参数结构体 """ class DescribeVulsNumberTimelineResponse(AbstractModel): """DescribeVulsNumberTimeline返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 统计数据记录数量。 :type TotalCount: int :param _VulsTimeline: 用户漏洞数随时间变化统计数据。 :type VulsTimeline: list of VulsTimeline :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._VulsTimeline = None self._RequestId = None @property def TotalCount(self): """统计数据记录数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def VulsTimeline(self): """用户漏洞数随时间变化统计数据。 :rtype: list of VulsTimeline """ return self._VulsTimeline @VulsTimeline.setter def VulsTimeline(self, VulsTimeline): self._VulsTimeline = VulsTimeline @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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("VulsTimeline") is not None: self._VulsTimeline = [] for item in params.get("VulsTimeline"): obj = VulsTimeline() obj._deserialize(item) self._VulsTimeline.append(obj) self._RequestId = params.get("RequestId") class DescribeVulsRequest(AbstractModel): """DescribeVuls请求参数结构体 """ def __init__(self): r""" :param _SiteId: 站点ID :type SiteId: int :param _MonitorId: 监控任务ID :type MonitorId: int :param _Filters: 过滤条件 :type Filters: list of Filter :param _Offset: 偏移量,默认为0 :type Offset: int :param _Limit: 返回数量,默认为10,最大值为100 :type Limit: int """ self._SiteId = None self._MonitorId = None self._Filters = None self._Offset = None self._Limit = None @property def SiteId(self): """站点ID :rtype: int """ return self._SiteId @SiteId.setter def SiteId(self, SiteId): self._SiteId = SiteId @property def MonitorId(self): """监控任务ID :rtype: int """ return self._MonitorId @MonitorId.setter def MonitorId(self, MonitorId): self._MonitorId = MonitorId @property def Filters(self): """过滤条件 :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): """返回数量,默认为10,最大值为100 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit def _deserialize(self, params): self._SiteId = params.get("SiteId") self._MonitorId = params.get("MonitorId") 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 DescribeVulsResponse(AbstractModel): """DescribeVuls返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 漏洞数量。 :type TotalCount: int :param _Vuls: 漏洞信息列表。 :type Vuls: list of Vul :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._Vuls = None self._RequestId = None @property def TotalCount(self): """漏洞数量。 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def Vuls(self): """漏洞信息列表。 :rtype: list of Vul """ return self._Vuls @Vuls.setter def Vuls(self, Vuls): self._Vuls = Vuls @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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("Vuls") is not None: self._Vuls = [] for item in params.get("Vuls"): obj = Vul() obj._deserialize(item) self._Vuls.append(obj) self._RequestId = params.get("RequestId") 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 MiniSite(AbstractModel): """站点信息。 """ def __init__(self): r""" :param _SiteId: 站点ID。 :type SiteId: int :param _Url: 站点Url。 :type Url: str """ self._SiteId = None self._Url = None @property def SiteId(self): """站点ID。 :rtype: int """ return self._SiteId @SiteId.setter def SiteId(self, SiteId): self._SiteId = SiteId @property def Url(self): """站点Url。 :rtype: str """ return self._Url @Url.setter def Url(self, Url): self._Url = Url def _deserialize(self, params): self._SiteId = params.get("SiteId") self._Url = params.get("Url") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyConfigAttributeRequest(AbstractModel): """ModifyConfigAttribute请求参数结构体 """ def __init__(self): r""" :param _NoticeLevel: 漏洞告警通知等级,4位分别代表:高危、中危、低危、提示 :type NoticeLevel: str """ self._NoticeLevel = None @property def NoticeLevel(self): """漏洞告警通知等级,4位分别代表:高危、中危、低危、提示 :rtype: str """ return self._NoticeLevel @NoticeLevel.setter def NoticeLevel(self, NoticeLevel): self._NoticeLevel = NoticeLevel def _deserialize(self, params): self._NoticeLevel = params.get("NoticeLevel") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyConfigAttributeResponse(AbstractModel): """ModifyConfigAttribute返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 ModifyMonitorAttributeRequest(AbstractModel): """ModifyMonitorAttribute请求参数结构体 """ def __init__(self): r""" :param _MonitorId: 监测任务ID :type MonitorId: int :param _Urls: 站点的url列表 :type Urls: list of str :param _Name: 任务名称 :type Name: str :param _ScannerType: 扫描模式,normal-正常扫描;deep-深度扫描 :type ScannerType: str :param _Crontab: 扫描周期,单位小时,每X小时执行一次 :type Crontab: int :param _RateLimit: 扫描速率限制,每秒发送X个HTTP请求 :type RateLimit: int :param _FirstScanStartTime: 首次扫描开始时间 :type FirstScanStartTime: str :param _MonitorStatus: 监测状态:1-监测中;2-暂停监测 :type MonitorStatus: int """ self._MonitorId = None self._Urls = None self._Name = None self._ScannerType = None self._Crontab = None self._RateLimit = None self._FirstScanStartTime = None self._MonitorStatus = None @property def MonitorId(self): """监测任务ID :rtype: int """ return self._MonitorId @MonitorId.setter def MonitorId(self, MonitorId): self._MonitorId = MonitorId @property def Urls(self): """站点的url列表 :rtype: list of str """ return self._Urls @Urls.setter def Urls(self, Urls): self._Urls = Urls @property def Name(self): """任务名称 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def ScannerType(self): """扫描模式,normal-正常扫描;deep-深度扫描 :rtype: str """ return self._ScannerType @ScannerType.setter def ScannerType(self, ScannerType): self._ScannerType = ScannerType @property def Crontab(self): """扫描周期,单位小时,每X小时执行一次 :rtype: int """ return self._Crontab @Crontab.setter def Crontab(self, Crontab): self._Crontab = Crontab @property def RateLimit(self): """扫描速率限制,每秒发送X个HTTP请求 :rtype: int """ return self._RateLimit @RateLimit.setter def RateLimit(self, RateLimit): self._RateLimit = RateLimit @property def FirstScanStartTime(self): """首次扫描开始时间 :rtype: str """ return self._FirstScanStartTime @FirstScanStartTime.setter def FirstScanStartTime(self, FirstScanStartTime): self._FirstScanStartTime = FirstScanStartTime @property def MonitorStatus(self): """监测状态:1-监测中;2-暂停监测 :rtype: int """ return self._MonitorStatus @MonitorStatus.setter def MonitorStatus(self, MonitorStatus): self._MonitorStatus = MonitorStatus def _deserialize(self, params): self._MonitorId = params.get("MonitorId") self._Urls = params.get("Urls") self._Name = params.get("Name") self._ScannerType = params.get("ScannerType") self._Crontab = params.get("Crontab") self._RateLimit = params.get("RateLimit") self._FirstScanStartTime = params.get("FirstScanStartTime") self._MonitorStatus = params.get("MonitorStatus") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyMonitorAttributeResponse(AbstractModel): """ModifyMonitorAttribute返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 ModifySiteAttributeRequest(AbstractModel): """ModifySiteAttribute请求参数结构体 """ def __init__(self): r""" :param _SiteId: 站点ID :type SiteId: int :param _Name: 站点名称 :type Name: str :param _NeedLogin: 网站是否需要登录扫描:0-未知;-1-不需要;1-需要 :type NeedLogin: int :param _LoginCookie: 登录后的cookie :type LoginCookie: str :param _LoginCheckUrl: 用于测试cookie是否有效的URL :type LoginCheckUrl: str :param _LoginCheckKw: 用于测试cookie是否有效的关键字 :type LoginCheckKw: str :param _ScanDisallow: 禁止扫描器扫描的目录关键字 :type ScanDisallow: str """ self._SiteId = None self._Name = None self._NeedLogin = None self._LoginCookie = None self._LoginCheckUrl = None self._LoginCheckKw = None self._ScanDisallow = None @property def SiteId(self): """站点ID :rtype: int """ return self._SiteId @SiteId.setter def SiteId(self, SiteId): self._SiteId = SiteId @property def Name(self): """站点名称 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def NeedLogin(self): """网站是否需要登录扫描:0-未知;-1-不需要;1-需要 :rtype: int """ return self._NeedLogin @NeedLogin.setter def NeedLogin(self, NeedLogin): self._NeedLogin = NeedLogin @property def LoginCookie(self): """登录后的cookie :rtype: str """ return self._LoginCookie @LoginCookie.setter def LoginCookie(self, LoginCookie): self._LoginCookie = LoginCookie @property def LoginCheckUrl(self): """用于测试cookie是否有效的URL :rtype: str """ return self._LoginCheckUrl @LoginCheckUrl.setter def LoginCheckUrl(self, LoginCheckUrl): self._LoginCheckUrl = LoginCheckUrl @property def LoginCheckKw(self): """用于测试cookie是否有效的关键字 :rtype: str """ return self._LoginCheckKw @LoginCheckKw.setter def LoginCheckKw(self, LoginCheckKw): self._LoginCheckKw = LoginCheckKw @property def ScanDisallow(self): """禁止扫描器扫描的目录关键字 :rtype: str """ return self._ScanDisallow @ScanDisallow.setter def ScanDisallow(self, ScanDisallow): self._ScanDisallow = ScanDisallow def _deserialize(self, params): self._SiteId = params.get("SiteId") self._Name = params.get("Name") self._NeedLogin = params.get("NeedLogin") self._LoginCookie = params.get("LoginCookie") self._LoginCheckUrl = params.get("LoginCheckUrl") self._LoginCheckKw = params.get("LoginCheckKw") self._ScanDisallow = params.get("ScanDisallow") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifySiteAttributeResponse(AbstractModel): """ModifySiteAttribute返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 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 Monitor(AbstractModel): """监控任务基础数据 """ def __init__(self): r""" :param _Id: 监控任务ID。 :type Id: int :param _Name: 监控名称。 :type Name: str :param _MonitorStatus: 监测状态:1-监测中;2-暂停监测。 :type MonitorStatus: int :param _ScannerType: 监测模式,normal-正常扫描;deep-深度扫描。 :type ScannerType: str :param _Crontab: 扫描周期,单位小时,每X小时执行一次。 :type Crontab: int :param _IncludedVulsTypes: 指定扫描类型,3位数每位依次表示:扫描Web漏洞、扫描系统漏洞、扫描系统端口。 :type IncludedVulsTypes: str :param _RateLimit: 速率限制,每秒发送X个HTTP请求。 :type RateLimit: int :param _FirstScanStartTime: 首次扫描开始时间。 :type FirstScanStartTime: str :param _ScanStatus: 扫描状态:0-待扫描(无任何扫描结果);1-扫描中(正在进行扫描);2-已扫描(有扫描结果且不正在扫描);3-扫描完成待同步结果。 :type ScanStatus: int :param _LastScanFinishTime: 上一次扫描完成时间。 :type LastScanFinishTime: str :param _CurrentScanStartTime: 当前扫描开始时间,如扫描完成则为上一次扫描的开始时间。 :type CurrentScanStartTime: str :param _CreatedAt: CreatedAt。 :type CreatedAt: str :param _UpdatedAt: UpdatedAt。 :type UpdatedAt: str :param _Appid: 云用户appid。 :type Appid: int :param _ContentScanStatus: 扫描状态:0-待检测;1-检测完成 :type ContentScanStatus: int """ self._Id = None self._Name = None self._MonitorStatus = None self._ScannerType = None self._Crontab = None self._IncludedVulsTypes = None self._RateLimit = None self._FirstScanStartTime = None self._ScanStatus = None self._LastScanFinishTime = None self._CurrentScanStartTime = None self._CreatedAt = None self._UpdatedAt = None self._Appid = None self._ContentScanStatus = None @property def Id(self): """监控任务ID。 :rtype: int """ return self._Id @Id.setter def Id(self, Id): self._Id = Id @property def Name(self): """监控名称。 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def MonitorStatus(self): """监测状态:1-监测中;2-暂停监测。 :rtype: int """ return self._MonitorStatus @MonitorStatus.setter def MonitorStatus(self, MonitorStatus): self._MonitorStatus = MonitorStatus @property def ScannerType(self): """监测模式,normal-正常扫描;deep-深度扫描。 :rtype: str """ return self._ScannerType @ScannerType.setter def ScannerType(self, ScannerType): self._ScannerType = ScannerType @property def Crontab(self): """扫描周期,单位小时,每X小时执行一次。 :rtype: int """ return self._Crontab @Crontab.setter def Crontab(self, Crontab): self._Crontab = Crontab @property def IncludedVulsTypes(self): """指定扫描类型,3位数每位依次表示:扫描Web漏洞、扫描系统漏洞、扫描系统端口。 :rtype: str """ return self._IncludedVulsTypes @IncludedVulsTypes.setter def IncludedVulsTypes(self, IncludedVulsTypes): self._IncludedVulsTypes = IncludedVulsTypes @property def RateLimit(self): """速率限制,每秒发送X个HTTP请求。 :rtype: int """ return self._RateLimit @RateLimit.setter def RateLimit(self, RateLimit): self._RateLimit = RateLimit @property def FirstScanStartTime(self): """首次扫描开始时间。 :rtype: str """ return self._FirstScanStartTime @FirstScanStartTime.setter def FirstScanStartTime(self, FirstScanStartTime): self._FirstScanStartTime = FirstScanStartTime @property def ScanStatus(self): """扫描状态:0-待扫描(无任何扫描结果);1-扫描中(正在进行扫描);2-已扫描(有扫描结果且不正在扫描);3-扫描完成待同步结果。 :rtype: int """ return self._ScanStatus @ScanStatus.setter def ScanStatus(self, ScanStatus): self._ScanStatus = ScanStatus @property def LastScanFinishTime(self): """上一次扫描完成时间。 :rtype: str """ return self._LastScanFinishTime @LastScanFinishTime.setter def LastScanFinishTime(self, LastScanFinishTime): self._LastScanFinishTime = LastScanFinishTime @property def CurrentScanStartTime(self): """当前扫描开始时间,如扫描完成则为上一次扫描的开始时间。 :rtype: str """ return self._CurrentScanStartTime @CurrentScanStartTime.setter def CurrentScanStartTime(self, CurrentScanStartTime): self._CurrentScanStartTime = CurrentScanStartTime @property def CreatedAt(self): """CreatedAt。 :rtype: str """ return self._CreatedAt @CreatedAt.setter def CreatedAt(self, CreatedAt): self._CreatedAt = CreatedAt @property def UpdatedAt(self): """UpdatedAt。 :rtype: str """ return self._UpdatedAt @UpdatedAt.setter def UpdatedAt(self, UpdatedAt): self._UpdatedAt = UpdatedAt @property def Appid(self): """云用户appid。 :rtype: int """ return self._Appid @Appid.setter def Appid(self, Appid): self._Appid = Appid @property def ContentScanStatus(self): """扫描状态:0-待检测;1-检测完成 :rtype: int """ return self._ContentScanStatus @ContentScanStatus.setter def ContentScanStatus(self, ContentScanStatus): self._ContentScanStatus = ContentScanStatus def _deserialize(self, params): self._Id = params.get("Id") self._Name = params.get("Name") self._MonitorStatus = params.get("MonitorStatus") self._ScannerType = params.get("ScannerType") self._Crontab = params.get("Crontab") self._IncludedVulsTypes = params.get("IncludedVulsTypes") self._RateLimit = params.get("RateLimit") self._FirstScanStartTime = params.get("FirstScanStartTime") self._ScanStatus = params.get("ScanStatus") self._LastScanFinishTime = params.get("LastScanFinishTime") self._CurrentScanStartTime = params.get("CurrentScanStartTime") self._CreatedAt = params.get("CreatedAt") self._UpdatedAt = params.get("UpdatedAt") self._Appid = params.get("Appid") self._ContentScanStatus = params.get("ContentScanStatus") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MonitorMiniSite(AbstractModel): """监控任务中的站点信息。 """ def __init__(self): r""" :param _SiteId: 站点ID。 :type SiteId: int :param _Url: 站点Url。 :type Url: str """ self._SiteId = None self._Url = None @property def SiteId(self): """站点ID。 :rtype: int """ return self._SiteId @SiteId.setter def SiteId(self, SiteId): self._SiteId = SiteId @property def Url(self): """站点Url。 :rtype: str """ return self._Url @Url.setter def Url(self, Url): self._Url = Url def _deserialize(self, params): self._SiteId = params.get("SiteId") self._Url = params.get("Url") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MonitorsDetail(AbstractModel): """监控任务详细数据 """ def __init__(self): r""" :param _Basic: 监控任务基础信息。 :type Basic: :class:`tencentcloud.cws.v20180312.models.Monitor` :param _Sites: 监控任务包含的站点列表。 :type Sites: list of MonitorMiniSite :param _SiteNumber: 监控任务包含的站点列表数量。 :type SiteNumber: int :param _ImpactSites: 监控任务包含的受漏洞威胁的站点列表。 :type ImpactSites: list of MonitorMiniSite :param _ImpactSiteNumber: 监控任务包含的受漏洞威胁的站点列表数量。 :type ImpactSiteNumber: int :param _VulsHighNumber: 高风险漏洞数量。 :type VulsHighNumber: int :param _VulsMiddleNumber: 中风险漏洞数量。 :type VulsMiddleNumber: int :param _VulsLowNumber: 低风险漏洞数量。 :type VulsLowNumber: int :param _VulsNoticeNumber: 提示数量。 :type VulsNoticeNumber: int :param _Progress: 监控任务包含的站点列表的平均扫描进度。 :type Progress: int :param _PageCount: 扫描页面总数。 :type PageCount: int :param _ContentNumber: 内容检测数量。 :type ContentNumber: int """ self._Basic = None self._Sites = None self._SiteNumber = None self._ImpactSites = None self._ImpactSiteNumber = None self._VulsHighNumber = None self._VulsMiddleNumber = None self._VulsLowNumber = None self._VulsNoticeNumber = None self._Progress = None self._PageCount = None self._ContentNumber = None @property def Basic(self): """监控任务基础信息。 :rtype: :class:`tencentcloud.cws.v20180312.models.Monitor` """ return self._Basic @Basic.setter def Basic(self, Basic): self._Basic = Basic @property def Sites(self): """监控任务包含的站点列表。 :rtype: list of MonitorMiniSite """ return self._Sites @Sites.setter def Sites(self, Sites): self._Sites = Sites @property def SiteNumber(self): """监控任务包含的站点列表数量。 :rtype: int """ return self._SiteNumber @SiteNumber.setter def SiteNumber(self, SiteNumber): self._SiteNumber = SiteNumber @property def ImpactSites(self): """监控任务包含的受漏洞威胁的站点列表。 :rtype: list of MonitorMiniSite """ return self._ImpactSites @ImpactSites.setter def ImpactSites(self, ImpactSites): self._ImpactSites = ImpactSites @property def ImpactSiteNumber(self): """监控任务包含的受漏洞威胁的站点列表数量。 :rtype: int """ return self._ImpactSiteNumber @ImpactSiteNumber.setter def ImpactSiteNumber(self, ImpactSiteNumber): self._ImpactSiteNumber = ImpactSiteNumber @property def VulsHighNumber(self): """高风险漏洞数量。 :rtype: int """ return self._VulsHighNumber @VulsHighNumber.setter def VulsHighNumber(self, VulsHighNumber): self._VulsHighNumber = VulsHighNumber @property def VulsMiddleNumber(self): """中风险漏洞数量。 :rtype: int """ return self._VulsMiddleNumber @VulsMiddleNumber.setter def VulsMiddleNumber(self, VulsMiddleNumber): self._VulsMiddleNumber = VulsMiddleNumber @property def VulsLowNumber(self): """低风险漏洞数量。 :rtype: int """ return self._VulsLowNumber @VulsLowNumber.setter def VulsLowNumber(self, VulsLowNumber): self._VulsLowNumber = VulsLowNumber @property def VulsNoticeNumber(self): """提示数量。 :rtype: int """ return self._VulsNoticeNumber @VulsNoticeNumber.setter def VulsNoticeNumber(self, VulsNoticeNumber): self._VulsNoticeNumber = VulsNoticeNumber @property def Progress(self): """监控任务包含的站点列表的平均扫描进度。 :rtype: int """ return self._Progress @Progress.setter def Progress(self, Progress): self._Progress = Progress @property def PageCount(self): """扫描页面总数。 :rtype: int """ return self._PageCount @PageCount.setter def PageCount(self, PageCount): self._PageCount = PageCount @property def ContentNumber(self): """内容检测数量。 :rtype: int """ return self._ContentNumber @ContentNumber.setter def ContentNumber(self, ContentNumber): self._ContentNumber = ContentNumber def _deserialize(self, params): if params.get("Basic") is not None: self._Basic = Monitor() self._Basic._deserialize(params.get("Basic")) if params.get("Sites") is not None: self._Sites = [] for item in params.get("Sites"): obj = MonitorMiniSite() obj._deserialize(item) self._Sites.append(obj) self._SiteNumber = params.get("SiteNumber") if params.get("ImpactSites") is not None: self._ImpactSites = [] for item in params.get("ImpactSites"): obj = MonitorMiniSite() obj._deserialize(item) self._ImpactSites.append(obj) self._ImpactSiteNumber = params.get("ImpactSiteNumber") self._VulsHighNumber = params.get("VulsHighNumber") self._VulsMiddleNumber = params.get("VulsMiddleNumber") self._VulsLowNumber = params.get("VulsLowNumber") self._VulsNoticeNumber = params.get("VulsNoticeNumber") self._Progress = params.get("Progress") self._PageCount = params.get("PageCount") self._ContentNumber = params.get("ContentNumber") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class Site(AbstractModel): """站点数据 """ def __init__(self): r""" :param _Id: 站点ID。 :type Id: int :param _MonitorId: 监控任务ID,为0时表示未加入监控任务。 :type MonitorId: int :param _Url: 站点url。 :type Url: str :param _Name: 站点名称。 :type Name: str :param _VerifyStatus: 验证状态:0-未验证;1-已验证;2-验证失效,待重新验证。 :type VerifyStatus: int :param _MonitorStatus: 监测状态:0-未监测;1-监测中;2-暂停监测。 :type MonitorStatus: int :param _ScanStatus: 扫描状态:0-待扫描(无任何扫描结果);1-扫描中(正在进行扫描);2-已扫描(有扫描结果且不正在扫描);3-扫描完成待同步结果。 :type ScanStatus: int :param _LastScanTaskId: 最近一次的AIScanner的扫描任务id,注意取消的情况。 :type LastScanTaskId: int :param _LastScanStartTime: 最近一次扫描开始时间。 :type LastScanStartTime: str :param _LastScanFinishTime: 最近一次扫描完成时间。 :type LastScanFinishTime: str :param _LastScanCancelTime: 最近一次取消时间,取消即使用上一次扫描结果。 :type LastScanCancelTime: str :param _LastScanPageCount: 最近一次扫描扫描的页面数。 :type LastScanPageCount: int :param _LastScanScannerType: normal-正常扫描;deep-深度扫描。 :type LastScanScannerType: str :param _LastScanVulsHighNum: 最近一次扫描高风险漏洞数量。 :type LastScanVulsHighNum: int :param _LastScanVulsMiddleNum: 最近一次扫描中风险漏洞数量。 :type LastScanVulsMiddleNum: int :param _LastScanVulsLowNum: 最近一次扫描低风险漏洞数量。 :type LastScanVulsLowNum: int :param _LastScanVulsNoticeNum: 最近一次扫描提示信息数量。 :type LastScanVulsNoticeNum: int :param _CreatedAt: 记录添加时间。 :type CreatedAt: str :param _UpdatedAt: 记录最近修改时间。 :type UpdatedAt: str :param _LastScanRateLimit: 速率限制,每秒发送X个HTTP请求。 :type LastScanRateLimit: int :param _LastScanVulsNum: 最近一次扫描漏洞总数量。 :type LastScanVulsNum: int :param _LastScanNoticeNum: 最近一次扫描提示总数量 :type LastScanNoticeNum: int :param _Progress: 扫描进度,百分比整数 :type Progress: int :param _Appid: 云用户appid。 :type Appid: int :param _Uin: 云用户标识。 :type Uin: str :param _NeedLogin: 网站是否需要登录扫描:0-未知;-1-不需要;1-需要。 :type NeedLogin: int :param _LoginCookie: 登录后的cookie。 :type LoginCookie: str :param _LoginCookieValid: 登录后的cookie是否有效:0-无效;1-有效。 :type LoginCookieValid: int :param _LoginCheckUrl: 用于测试cookie是否有效的URL。 :type LoginCheckUrl: str :param _LoginCheckKw: 用于测试cookie是否有效的关键字。 :type LoginCheckKw: str :param _ScanDisallow: 禁止扫描器扫描的目录关键字。 :type ScanDisallow: str :param _UserAgent: 访问网站的客户端标识。 :type UserAgent: str :param _ContentStatus: 内容检测状态:0-未检测;1-已检测; :type ContentStatus: int :param _LastScanContentNum: 最近一次扫描内容检测数量 :type LastScanContentNum: int """ self._Id = None self._MonitorId = None self._Url = None self._Name = None self._VerifyStatus = None self._MonitorStatus = None self._ScanStatus = None self._LastScanTaskId = None self._LastScanStartTime = None self._LastScanFinishTime = None self._LastScanCancelTime = None self._LastScanPageCount = None self._LastScanScannerType = None self._LastScanVulsHighNum = None self._LastScanVulsMiddleNum = None self._LastScanVulsLowNum = None self._LastScanVulsNoticeNum = None self._CreatedAt = None self._UpdatedAt = None self._LastScanRateLimit = None self._LastScanVulsNum = None self._LastScanNoticeNum = None self._Progress = None self._Appid = None self._Uin = None self._NeedLogin = None self._LoginCookie = None self._LoginCookieValid = None self._LoginCheckUrl = None self._LoginCheckKw = None self._ScanDisallow = None self._UserAgent = None self._ContentStatus = None self._LastScanContentNum = None @property def Id(self): """站点ID。 :rtype: int """ return self._Id @Id.setter def Id(self, Id): self._Id = Id @property def MonitorId(self): """监控任务ID,为0时表示未加入监控任务。 :rtype: int """ return self._MonitorId @MonitorId.setter def MonitorId(self, MonitorId): self._MonitorId = MonitorId @property def Url(self): """站点url。 :rtype: str """ return self._Url @Url.setter def Url(self, Url): self._Url = Url @property def Name(self): """站点名称。 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def VerifyStatus(self): """验证状态:0-未验证;1-已验证;2-验证失效,待重新验证。 :rtype: int """ return self._VerifyStatus @VerifyStatus.setter def VerifyStatus(self, VerifyStatus): self._VerifyStatus = VerifyStatus @property def MonitorStatus(self): """监测状态:0-未监测;1-监测中;2-暂停监测。 :rtype: int """ return self._MonitorStatus @MonitorStatus.setter def MonitorStatus(self, MonitorStatus): self._MonitorStatus = MonitorStatus @property def ScanStatus(self): """扫描状态:0-待扫描(无任何扫描结果);1-扫描中(正在进行扫描);2-已扫描(有扫描结果且不正在扫描);3-扫描完成待同步结果。 :rtype: int """ return self._ScanStatus @ScanStatus.setter def ScanStatus(self, ScanStatus): self._ScanStatus = ScanStatus @property def LastScanTaskId(self): """最近一次的AIScanner的扫描任务id,注意取消的情况。 :rtype: int """ return self._LastScanTaskId @LastScanTaskId.setter def LastScanTaskId(self, LastScanTaskId): self._LastScanTaskId = LastScanTaskId @property def LastScanStartTime(self): """最近一次扫描开始时间。 :rtype: str """ return self._LastScanStartTime @LastScanStartTime.setter def LastScanStartTime(self, LastScanStartTime): self._LastScanStartTime = LastScanStartTime @property def LastScanFinishTime(self): """最近一次扫描完成时间。 :rtype: str """ return self._LastScanFinishTime @LastScanFinishTime.setter def LastScanFinishTime(self, LastScanFinishTime): self._LastScanFinishTime = LastScanFinishTime @property def LastScanCancelTime(self): """最近一次取消时间,取消即使用上一次扫描结果。 :rtype: str """ return self._LastScanCancelTime @LastScanCancelTime.setter def LastScanCancelTime(self, LastScanCancelTime): self._LastScanCancelTime = LastScanCancelTime @property def LastScanPageCount(self): """最近一次扫描扫描的页面数。 :rtype: int """ return self._LastScanPageCount @LastScanPageCount.setter def LastScanPageCount(self, LastScanPageCount): self._LastScanPageCount = LastScanPageCount @property def LastScanScannerType(self): """normal-正常扫描;deep-深度扫描。 :rtype: str """ return self._LastScanScannerType @LastScanScannerType.setter def LastScanScannerType(self, LastScanScannerType): self._LastScanScannerType = LastScanScannerType @property def LastScanVulsHighNum(self): """最近一次扫描高风险漏洞数量。 :rtype: int """ return self._LastScanVulsHighNum @LastScanVulsHighNum.setter def LastScanVulsHighNum(self, LastScanVulsHighNum): self._LastScanVulsHighNum = LastScanVulsHighNum @property def LastScanVulsMiddleNum(self): """最近一次扫描中风险漏洞数量。 :rtype: int """ return self._LastScanVulsMiddleNum @LastScanVulsMiddleNum.setter def LastScanVulsMiddleNum(self, LastScanVulsMiddleNum): self._LastScanVulsMiddleNum = LastScanVulsMiddleNum @property def LastScanVulsLowNum(self): """最近一次扫描低风险漏洞数量。 :rtype: int """ return self._LastScanVulsLowNum @LastScanVulsLowNum.setter def LastScanVulsLowNum(self, LastScanVulsLowNum): self._LastScanVulsLowNum = LastScanVulsLowNum @property def LastScanVulsNoticeNum(self): """最近一次扫描提示信息数量。 :rtype: int """ return self._LastScanVulsNoticeNum @LastScanVulsNoticeNum.setter def LastScanVulsNoticeNum(self, LastScanVulsNoticeNum): self._LastScanVulsNoticeNum = LastScanVulsNoticeNum @property def CreatedAt(self): """记录添加时间。 :rtype: str """ return self._CreatedAt @CreatedAt.setter def CreatedAt(self, CreatedAt): self._CreatedAt = CreatedAt @property def UpdatedAt(self): """记录最近修改时间。 :rtype: str """ return self._UpdatedAt @UpdatedAt.setter def UpdatedAt(self, UpdatedAt): self._UpdatedAt = UpdatedAt @property def LastScanRateLimit(self): """速率限制,每秒发送X个HTTP请求。 :rtype: int """ return self._LastScanRateLimit @LastScanRateLimit.setter def LastScanRateLimit(self, LastScanRateLimit): self._LastScanRateLimit = LastScanRateLimit @property def LastScanVulsNum(self): """最近一次扫描漏洞总数量。 :rtype: int """ return self._LastScanVulsNum @LastScanVulsNum.setter def LastScanVulsNum(self, LastScanVulsNum): self._LastScanVulsNum = LastScanVulsNum @property def LastScanNoticeNum(self): """最近一次扫描提示总数量 :rtype: int """ return self._LastScanNoticeNum @LastScanNoticeNum.setter def LastScanNoticeNum(self, LastScanNoticeNum): self._LastScanNoticeNum = LastScanNoticeNum @property def Progress(self): """扫描进度,百分比整数 :rtype: int """ return self._Progress @Progress.setter def Progress(self, Progress): self._Progress = Progress @property def Appid(self): """云用户appid。 :rtype: int """ return self._Appid @Appid.setter def Appid(self, Appid): self._Appid = Appid @property def Uin(self): """云用户标识。 :rtype: str """ return self._Uin @Uin.setter def Uin(self, Uin): self._Uin = Uin @property def NeedLogin(self): """网站是否需要登录扫描:0-未知;-1-不需要;1-需要。 :rtype: int """ return self._NeedLogin @NeedLogin.setter def NeedLogin(self, NeedLogin): self._NeedLogin = NeedLogin @property def LoginCookie(self): """登录后的cookie。 :rtype: str """ return self._LoginCookie @LoginCookie.setter def LoginCookie(self, LoginCookie): self._LoginCookie = LoginCookie @property def LoginCookieValid(self): """登录后的cookie是否有效:0-无效;1-有效。 :rtype: int """ return self._LoginCookieValid @LoginCookieValid.setter def LoginCookieValid(self, LoginCookieValid): self._LoginCookieValid = LoginCookieValid @property def LoginCheckUrl(self): """用于测试cookie是否有效的URL。 :rtype: str """ return self._LoginCheckUrl @LoginCheckUrl.setter def LoginCheckUrl(self, LoginCheckUrl): self._LoginCheckUrl = LoginCheckUrl @property def LoginCheckKw(self): """用于测试cookie是否有效的关键字。 :rtype: str """ return self._LoginCheckKw @LoginCheckKw.setter def LoginCheckKw(self, LoginCheckKw): self._LoginCheckKw = LoginCheckKw @property def ScanDisallow(self): """禁止扫描器扫描的目录关键字。 :rtype: str """ return self._ScanDisallow @ScanDisallow.setter def ScanDisallow(self, ScanDisallow): self._ScanDisallow = ScanDisallow @property def UserAgent(self): """访问网站的客户端标识。 :rtype: str """ return self._UserAgent @UserAgent.setter def UserAgent(self, UserAgent): self._UserAgent = UserAgent @property def ContentStatus(self): """内容检测状态:0-未检测;1-已检测; :rtype: int """ return self._ContentStatus @ContentStatus.setter def ContentStatus(self, ContentStatus): self._ContentStatus = ContentStatus @property def LastScanContentNum(self): """最近一次扫描内容检测数量 :rtype: int """ return self._LastScanContentNum @LastScanContentNum.setter def LastScanContentNum(self, LastScanContentNum): self._LastScanContentNum = LastScanContentNum def _deserialize(self, params): self._Id = params.get("Id") self._MonitorId = params.get("MonitorId") self._Url = params.get("Url") self._Name = params.get("Name") self._VerifyStatus = params.get("VerifyStatus") self._MonitorStatus = params.get("MonitorStatus") self._ScanStatus = params.get("ScanStatus") self._LastScanTaskId = params.get("LastScanTaskId") self._LastScanStartTime = params.get("LastScanStartTime") self._LastScanFinishTime = params.get("LastScanFinishTime") self._LastScanCancelTime = params.get("LastScanCancelTime") self._LastScanPageCount = params.get("LastScanPageCount") self._LastScanScannerType = params.get("LastScanScannerType") self._LastScanVulsHighNum = params.get("LastScanVulsHighNum") self._LastScanVulsMiddleNum = params.get("LastScanVulsMiddleNum") self._LastScanVulsLowNum = params.get("LastScanVulsLowNum") self._LastScanVulsNoticeNum = params.get("LastScanVulsNoticeNum") self._CreatedAt = params.get("CreatedAt") self._UpdatedAt = params.get("UpdatedAt") self._LastScanRateLimit = params.get("LastScanRateLimit") self._LastScanVulsNum = params.get("LastScanVulsNum") self._LastScanNoticeNum = params.get("LastScanNoticeNum") self._Progress = params.get("Progress") self._Appid = params.get("Appid") self._Uin = params.get("Uin") self._NeedLogin = params.get("NeedLogin") self._LoginCookie = params.get("LoginCookie") self._LoginCookieValid = params.get("LoginCookieValid") self._LoginCheckUrl = params.get("LoginCheckUrl") self._LoginCheckKw = params.get("LoginCheckKw") self._ScanDisallow = params.get("ScanDisallow") self._UserAgent = params.get("UserAgent") self._ContentStatus = params.get("ContentStatus") self._LastScanContentNum = params.get("LastScanContentNum") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SitesVerification(AbstractModel): """站点验证数据 """ def __init__(self): r""" :param _Domain: 根域名。 :type Domain: str :param _TxtName: txt解析域名验证的name。 :type TxtName: str :param _TxtText: txt解析域名验证的text。 :type TxtText: str :param _ValidTo: 验证有效期,在此之前有效。 :type ValidTo: str :param _VerifyStatus: 验证状态:0-未验证;1-已验证;2-验证失效,待重新验证。 :type VerifyStatus: int :param _CreatedAt: CreatedAt。 :type CreatedAt: str :param _UpdatedAt: UpdatedAt。 :type UpdatedAt: str :param _Id: ID。 :type Id: int :param _Appid: 云用户appid :type Appid: int :param _VerifyUrl: 用于验证站点的url,即访问该url获取验证数据。 :type VerifyUrl: str :param _VerifyFileUrl: 获取验证验证文件的url。 :type VerifyFileUrl: str """ self._Domain = None self._TxtName = None self._TxtText = None self._ValidTo = None self._VerifyStatus = None self._CreatedAt = None self._UpdatedAt = None self._Id = None self._Appid = None self._VerifyUrl = None self._VerifyFileUrl = None @property def Domain(self): """根域名。 :rtype: str """ return self._Domain @Domain.setter def Domain(self, Domain): self._Domain = Domain @property def TxtName(self): """txt解析域名验证的name。 :rtype: str """ return self._TxtName @TxtName.setter def TxtName(self, TxtName): self._TxtName = TxtName @property def TxtText(self): """txt解析域名验证的text。 :rtype: str """ return self._TxtText @TxtText.setter def TxtText(self, TxtText): self._TxtText = TxtText @property def ValidTo(self): """验证有效期,在此之前有效。 :rtype: str """ return self._ValidTo @ValidTo.setter def ValidTo(self, ValidTo): self._ValidTo = ValidTo @property def VerifyStatus(self): """验证状态:0-未验证;1-已验证;2-验证失效,待重新验证。 :rtype: int """ return self._VerifyStatus @VerifyStatus.setter def VerifyStatus(self, VerifyStatus): self._VerifyStatus = VerifyStatus @property def CreatedAt(self): """CreatedAt。 :rtype: str """ return self._CreatedAt @CreatedAt.setter def CreatedAt(self, CreatedAt): self._CreatedAt = CreatedAt @property def UpdatedAt(self): """UpdatedAt。 :rtype: str """ return self._UpdatedAt @UpdatedAt.setter def UpdatedAt(self, UpdatedAt): self._UpdatedAt = UpdatedAt @property def Id(self): """ID。 :rtype: int """ return self._Id @Id.setter def Id(self, Id): self._Id = Id @property def Appid(self): """云用户appid :rtype: int """ return self._Appid @Appid.setter def Appid(self, Appid): self._Appid = Appid @property def VerifyUrl(self): """用于验证站点的url,即访问该url获取验证数据。 :rtype: str """ return self._VerifyUrl @VerifyUrl.setter def VerifyUrl(self, VerifyUrl): self._VerifyUrl = VerifyUrl @property def VerifyFileUrl(self): """获取验证验证文件的url。 :rtype: str """ return self._VerifyFileUrl @VerifyFileUrl.setter def VerifyFileUrl(self, VerifyFileUrl): self._VerifyFileUrl = VerifyFileUrl def _deserialize(self, params): self._Domain = params.get("Domain") self._TxtName = params.get("TxtName") self._TxtText = params.get("TxtText") self._ValidTo = params.get("ValidTo") self._VerifyStatus = params.get("VerifyStatus") self._CreatedAt = params.get("CreatedAt") self._UpdatedAt = params.get("UpdatedAt") self._Id = params.get("Id") self._Appid = params.get("Appid") self._VerifyUrl = params.get("VerifyUrl") self._VerifyFileUrl = params.get("VerifyFileUrl") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class VerifySitesRequest(AbstractModel): """VerifySites请求参数结构体 """ def __init__(self): r""" :param _Urls: 站点的url列表 :type Urls: list of str """ self._Urls = None @property def Urls(self): """站点的url列表 :rtype: list of str """ return self._Urls @Urls.setter def Urls(self, Urls): self._Urls = Urls def _deserialize(self, params): self._Urls = params.get("Urls") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class VerifySitesResponse(AbstractModel): """VerifySites返回参数结构体 """ def __init__(self): r""" :param _SuccessNumber: 验证成功的根域名数量。 :type SuccessNumber: int :param _FailNumber: 验证失败的根域名数量。 :type FailNumber: int :param _RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._SuccessNumber = None self._FailNumber = None self._RequestId = None @property def SuccessNumber(self): """验证成功的根域名数量。 :rtype: int """ return self._SuccessNumber @SuccessNumber.setter def SuccessNumber(self, SuccessNumber): self._SuccessNumber = SuccessNumber @property def FailNumber(self): """验证失败的根域名数量。 :rtype: int """ return self._FailNumber @FailNumber.setter def FailNumber(self, FailNumber): self._FailNumber = FailNumber @property def RequestId(self): """唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._SuccessNumber = params.get("SuccessNumber") self._FailNumber = params.get("FailNumber") self._RequestId = params.get("RequestId") class Vul(AbstractModel): """漏洞数据 """ def __init__(self): r""" :param _Id: 漏洞ID。 :type Id: int :param _SiteId: 站点ID。 :type SiteId: int :param _TaskId: 扫描引擎的扫描任务ID。 :type TaskId: int :param _Level: 漏洞级别:high、middle、low、notice。 :type Level: str :param _Name: 漏洞名称。 :type Name: str :param _Url: 出现漏洞的url。 :type Url: str :param _Html: 网址/细节。 :type Html: str :param _Nickname: 漏洞类型。 :type Nickname: str :param _Harm: 危害说明。 :type Harm: str :param _Describe: 漏洞描述。 :type Describe: str :param _Solution: 解决方案。 :type Solution: str :param _From: 漏洞参考。 :type From: str :param _Parameter: 漏洞通过该参数攻击。 :type Parameter: str :param _CreatedAt: CreatedAt。 :type CreatedAt: str :param _UpdatedAt: UpdatedAt。 :type UpdatedAt: str :param _IsReported: 是否已经添加误报,0-否,1-是。 :type IsReported: int :param _Appid: 云用户appid。 :type Appid: int :param _Uin: 云用户标识。 :type Uin: str """ self._Id = None self._SiteId = None self._TaskId = None self._Level = None self._Name = None self._Url = None self._Html = None self._Nickname = None self._Harm = None self._Describe = None self._Solution = None self._From = None self._Parameter = None self._CreatedAt = None self._UpdatedAt = None self._IsReported = None self._Appid = None self._Uin = None @property def Id(self): """漏洞ID。 :rtype: int """ return self._Id @Id.setter def Id(self, Id): self._Id = Id @property def SiteId(self): """站点ID。 :rtype: int """ return self._SiteId @SiteId.setter def SiteId(self, SiteId): self._SiteId = SiteId @property def TaskId(self): """扫描引擎的扫描任务ID。 :rtype: int """ return self._TaskId @TaskId.setter def TaskId(self, TaskId): self._TaskId = TaskId @property def Level(self): """漏洞级别:high、middle、low、notice。 :rtype: str """ return self._Level @Level.setter def Level(self, Level): self._Level = Level @property def Name(self): """漏洞名称。 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name @property def Url(self): """出现漏洞的url。 :rtype: str """ return self._Url @Url.setter def Url(self, Url): self._Url = Url @property def Html(self): """网址/细节。 :rtype: str """ return self._Html @Html.setter def Html(self, Html): self._Html = Html @property def Nickname(self): """漏洞类型。 :rtype: str """ return self._Nickname @Nickname.setter def Nickname(self, Nickname): self._Nickname = Nickname @property def Harm(self): """危害说明。 :rtype: str """ return self._Harm @Harm.setter def Harm(self, Harm): self._Harm = Harm @property def Describe(self): """漏洞描述。 :rtype: str """ return self._Describe @Describe.setter def Describe(self, Describe): self._Describe = Describe @property def Solution(self): """解决方案。 :rtype: str """ return self._Solution @Solution.setter def Solution(self, Solution): self._Solution = Solution @property def From(self): """漏洞参考。 :rtype: str """ return self._From @From.setter def From(self, From): self._From = From @property def Parameter(self): """漏洞通过该参数攻击。 :rtype: str """ return self._Parameter @Parameter.setter def Parameter(self, Parameter): self._Parameter = Parameter @property def CreatedAt(self): """CreatedAt。 :rtype: str """ return self._CreatedAt @CreatedAt.setter def CreatedAt(self, CreatedAt): self._CreatedAt = CreatedAt @property def UpdatedAt(self): """UpdatedAt。 :rtype: str """ return self._UpdatedAt @UpdatedAt.setter def UpdatedAt(self, UpdatedAt): self._UpdatedAt = UpdatedAt @property def IsReported(self): """是否已经添加误报,0-否,1-是。 :rtype: int """ return self._IsReported @IsReported.setter def IsReported(self, IsReported): self._IsReported = IsReported @property def Appid(self): """云用户appid。 :rtype: int """ return self._Appid @Appid.setter def Appid(self, Appid): self._Appid = Appid @property def Uin(self): """云用户标识。 :rtype: str """ return self._Uin @Uin.setter def Uin(self, Uin): self._Uin = Uin def _deserialize(self, params): self._Id = params.get("Id") self._SiteId = params.get("SiteId") self._TaskId = params.get("TaskId") self._Level = params.get("Level") self._Name = params.get("Name") self._Url = params.get("Url") self._Html = params.get("Html") self._Nickname = params.get("Nickname") self._Harm = params.get("Harm") self._Describe = params.get("Describe") self._Solution = params.get("Solution") self._From = params.get("From") self._Parameter = params.get("Parameter") self._CreatedAt = params.get("CreatedAt") self._UpdatedAt = params.get("UpdatedAt") self._IsReported = params.get("IsReported") self._Appid = params.get("Appid") self._Uin = params.get("Uin") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class VulsTimeline(AbstractModel): """用户漏洞数随时间变化统计数据 """ def __init__(self): r""" :param _Id: ID。 :type Id: int :param _Appid: 云用户appid。 :type Appid: int :param _Date: 日期。 :type Date: str :param _PageCount: 扫描页面总数量。 :type PageCount: int :param _SiteNum: 已验证网站总数量。 :type SiteNum: int :param _ImpactSiteNum: 受影响的网站总数量。 :type ImpactSiteNum: int :param _VulsHighNum: 高危漏洞总数量。 :type VulsHighNum: int :param _VulsMiddleNum: 中危漏洞总数量。 :type VulsMiddleNum: int :param _VulsLowNum: 低危漏洞总数量。 :type VulsLowNum: int :param _VulsNoticeNum: 风险提示总数量 :type VulsNoticeNum: int :param _CreatedAt: 记录添加时间。 :type CreatedAt: str :param _UpdatedAt: 记录最近修改时间。 :type UpdatedAt: str """ self._Id = None self._Appid = None self._Date = None self._PageCount = None self._SiteNum = None self._ImpactSiteNum = None self._VulsHighNum = None self._VulsMiddleNum = None self._VulsLowNum = None self._VulsNoticeNum = None self._CreatedAt = None self._UpdatedAt = None @property def Id(self): """ID。 :rtype: int """ return self._Id @Id.setter def Id(self, Id): self._Id = Id @property def Appid(self): """云用户appid。 :rtype: int """ return self._Appid @Appid.setter def Appid(self, Appid): self._Appid = Appid @property def Date(self): """日期。 :rtype: str """ return self._Date @Date.setter def Date(self, Date): self._Date = Date @property def PageCount(self): """扫描页面总数量。 :rtype: int """ return self._PageCount @PageCount.setter def PageCount(self, PageCount): self._PageCount = PageCount @property def SiteNum(self): """已验证网站总数量。 :rtype: int """ return self._SiteNum @SiteNum.setter def SiteNum(self, SiteNum): self._SiteNum = SiteNum @property def ImpactSiteNum(self): """受影响的网站总数量。 :rtype: int """ return self._ImpactSiteNum @ImpactSiteNum.setter def ImpactSiteNum(self, ImpactSiteNum): self._ImpactSiteNum = ImpactSiteNum @property def VulsHighNum(self): """高危漏洞总数量。 :rtype: int """ return self._VulsHighNum @VulsHighNum.setter def VulsHighNum(self, VulsHighNum): self._VulsHighNum = VulsHighNum @property def VulsMiddleNum(self): """中危漏洞总数量。 :rtype: int """ return self._VulsMiddleNum @VulsMiddleNum.setter def VulsMiddleNum(self, VulsMiddleNum): self._VulsMiddleNum = VulsMiddleNum @property def VulsLowNum(self): """低危漏洞总数量。 :rtype: int """ return self._VulsLowNum @VulsLowNum.setter def VulsLowNum(self, VulsLowNum): self._VulsLowNum = VulsLowNum @property def VulsNoticeNum(self): """风险提示总数量 :rtype: int """ return self._VulsNoticeNum @VulsNoticeNum.setter def VulsNoticeNum(self, VulsNoticeNum): self._VulsNoticeNum = VulsNoticeNum @property def CreatedAt(self): """记录添加时间。 :rtype: str """ return self._CreatedAt @CreatedAt.setter def CreatedAt(self, CreatedAt): self._CreatedAt = CreatedAt @property def UpdatedAt(self): """记录最近修改时间。 :rtype: str """ return self._UpdatedAt @UpdatedAt.setter def UpdatedAt(self, UpdatedAt): self._UpdatedAt = UpdatedAt def _deserialize(self, params): self._Id = params.get("Id") self._Appid = params.get("Appid") self._Date = params.get("Date") self._PageCount = params.get("PageCount") self._SiteNum = params.get("SiteNum") self._ImpactSiteNum = params.get("ImpactSiteNum") self._VulsHighNum = params.get("VulsHighNum") self._VulsMiddleNum = params.get("VulsMiddleNum") self._VulsLowNum = params.get("VulsLowNum") self._VulsNoticeNum = params.get("VulsNoticeNum") self._CreatedAt = params.get("CreatedAt") self._UpdatedAt = params.get("UpdatedAt") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set))
Memory