Class: TencentCloud::Teo::V20220901::DDoSProtection

Inherits:
Common::AbstractModel
  • Object
show all
Defined in:
lib/v20220901/models.rb

Overview

独立 DDoS 防护配置。

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(protectionoption = nil, domainddosprotections = nil, sharedcnameddosprotections = nil) ⇒ DDoSProtection

Returns a new instance of DDoSProtection.



6106
6107
6108
6109
6110
# File 'lib/v20220901/models.rb', line 6106

def initialize(protectionoption=nil, domainddosprotections=nil, sharedcnameddosprotections=nil)
  @ProtectionOption = protectionoption
  @DomainDDoSProtections = domainddosprotections
  @SharedCNAMEDDoSProtections = sharedcnameddosprotections
end

Instance Attribute Details

#DomainDDoSProtectionsObject

<li> protect_all_domains:独立 DDoS 防护对站点内全部域名生效,新接入域名自动开启独立 DDoS 防护,入参为 protect_all_domains 时,入参 DomainDDoSProtections 不作处理;</li> <li> protect_specified_domains:仅对指定域名生效,具体范围可通过 DomainDDoSProtection 参数指定。</li> <li> 当 ProtectionOption 保持为 protect_specified_domains 时:未填写的域名维持原有独立 DDoS 防护配置不变,显式指定的域名​按传入参数更新;</li> <li> 当 ProtectionOption 由 protect_all_domains 切换为 protect_specified_domains 时:若 DomainDDoSProtections 传空,停用站点下全部域名的独立 DDoS 防护;若 DomainDDoSProtections 不为空,参数中指定的域名停用或保持独立 DDoS 防护,其余未列出的域名统一停用独立 DDoS 防护。</li>

Parameters:

  • ProtectionOption:

    指定独立 DDoS 的防护范围。取值为:

  • DomainDDoSProtections:

    域名的独立 DDoS 防护配置。在入参场景中:

  • SharedCNAMEDDoSProtections:

    共享 CNAME 的独立 DDoS 防护配置。仅作为出参使用。



6104
6105
6106
# File 'lib/v20220901/models.rb', line 6104

def DomainDDoSProtections
  @DomainDDoSProtections
end

#ProtectionOptionObject

<li> protect_all_domains:独立 DDoS 防护对站点内全部域名生效,新接入域名自动开启独立 DDoS 防护,入参为 protect_all_domains 时,入参 DomainDDoSProtections 不作处理;</li> <li> protect_specified_domains:仅对指定域名生效,具体范围可通过 DomainDDoSProtection 参数指定。</li> <li> 当 ProtectionOption 保持为 protect_specified_domains 时:未填写的域名维持原有独立 DDoS 防护配置不变,显式指定的域名​按传入参数更新;</li> <li> 当 ProtectionOption 由 protect_all_domains 切换为 protect_specified_domains 时:若 DomainDDoSProtections 传空,停用站点下全部域名的独立 DDoS 防护;若 DomainDDoSProtections 不为空,参数中指定的域名停用或保持独立 DDoS 防护,其余未列出的域名统一停用独立 DDoS 防护。</li>

Parameters:

  • ProtectionOption:

    指定独立 DDoS 的防护范围。取值为:

  • DomainDDoSProtections:

    域名的独立 DDoS 防护配置。在入参场景中:

  • SharedCNAMEDDoSProtections:

    共享 CNAME 的独立 DDoS 防护配置。仅作为出参使用。



6104
6105
6106
# File 'lib/v20220901/models.rb', line 6104

def ProtectionOption
  @ProtectionOption
end

#SharedCNAMEDDoSProtectionsObject

<li> protect_all_domains:独立 DDoS 防护对站点内全部域名生效,新接入域名自动开启独立 DDoS 防护,入参为 protect_all_domains 时,入参 DomainDDoSProtections 不作处理;</li> <li> protect_specified_domains:仅对指定域名生效,具体范围可通过 DomainDDoSProtection 参数指定。</li> <li> 当 ProtectionOption 保持为 protect_specified_domains 时:未填写的域名维持原有独立 DDoS 防护配置不变,显式指定的域名​按传入参数更新;</li> <li> 当 ProtectionOption 由 protect_all_domains 切换为 protect_specified_domains 时:若 DomainDDoSProtections 传空,停用站点下全部域名的独立 DDoS 防护;若 DomainDDoSProtections 不为空,参数中指定的域名停用或保持独立 DDoS 防护,其余未列出的域名统一停用独立 DDoS 防护。</li>

Parameters:

  • ProtectionOption:

    指定独立 DDoS 的防护范围。取值为:

  • DomainDDoSProtections:

    域名的独立 DDoS 防护配置。在入参场景中:

  • SharedCNAMEDDoSProtections:

    共享 CNAME 的独立 DDoS 防护配置。仅作为出参使用。



6104
6105
6106
# File 'lib/v20220901/models.rb', line 6104

def SharedCNAMEDDoSProtections
  @SharedCNAMEDDoSProtections
end

Instance Method Details

#deserialize(params) ⇒ Object



6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
# File 'lib/v20220901/models.rb', line 6112

def deserialize(params)
  @ProtectionOption = params['ProtectionOption']
  unless params['DomainDDoSProtections'].nil?
    @DomainDDoSProtections = []
    params['DomainDDoSProtections'].each do |i|
      domainddosprotection_tmp = DomainDDoSProtection.new
      domainddosprotection_tmp.deserialize(i)
      @DomainDDoSProtections << domainddosprotection_tmp
    end
  end
  unless params['SharedCNAMEDDoSProtections'].nil?
    @SharedCNAMEDDoSProtections = []
    params['SharedCNAMEDDoSProtections'].each do |i|
      domainddosprotection_tmp = DomainDDoSProtection.new
      domainddosprotection_tmp.deserialize(i)
      @SharedCNAMEDDoSProtections << domainddosprotection_tmp
    end
  end
end