Class: Google::Apis::ComputeV1::SecurityPolicyDdosProtectionConfig

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SecurityPolicyDdosProtectionConfig

Returns a new instance of SecurityPolicyDdosProtectionConfig.



56493
56494
56495
# File 'lib/google/apis/compute_v1/classes.rb', line 56493

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#ddos_adaptive_protectionString

Corresponds to the JSON property ddosAdaptiveProtection

Returns:

  • (String)


56468
56469
56470
# File 'lib/google/apis/compute_v1/classes.rb', line 56468

def ddos_adaptive_protection
  @ddos_adaptive_protection
end

#ddos_impacted_baseline_thresholdFloat

DDoS Protection for Network Load Balancers (and VMs with public IPs) builds DDoS mitigations that minimize collateral damage. It quantifies this as the fraction of a non-abuse baseline that's inadvertently blocked. Rules whose collateral damage exceeds ddosImpactedBaselineThreshold will not be deployed. Using a lower value will prioritize keeping collateral damage low, possibly at the cost of its effectiveness in rate limiting some or all of the attack. It should typically be unset, so Advanced DDoS (and Adaptive Protection) uses the best mitigation it can find. Setting the threshold is advised if there are logs for false positive detections with high collateral damage, and will cause Advanced DDoS to attempt to find a less aggressive rule that satisfies the constraint. If a suitable rule cannot be found, the system falls back to either no mitigation for smaller attacks or broader network throttles for larger ones. Corresponds to the JSON property ddosImpactedBaselineThreshold

Returns:

  • (Float)


56486
56487
56488
# File 'lib/google/apis/compute_v1/classes.rb', line 56486

def ddos_impacted_baseline_threshold
  @ddos_impacted_baseline_threshold
end

#ddos_protectionString

Corresponds to the JSON property ddosProtection

Returns:

  • (String)


56491
56492
56493
# File 'lib/google/apis/compute_v1/classes.rb', line 56491

def ddos_protection
  @ddos_protection
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



56498
56499
56500
56501
56502
# File 'lib/google/apis/compute_v1/classes.rb', line 56498

def update!(**args)
  @ddos_adaptive_protection = args[:ddos_adaptive_protection] if args.key?(:ddos_adaptive_protection)
  @ddos_impacted_baseline_threshold = args[:ddos_impacted_baseline_threshold] if args.key?(:ddos_impacted_baseline_threshold)
  @ddos_protection = args[:ddos_protection] if args.key?(:ddos_protection)
end