#[non_exhaustive]pub struct SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig {
pub enable: Option<bool>,
pub rule_visibility: Option<RuleVisibility>,
pub threshold_configs: Vec<SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig>,
/* private fields */
}Available on crate features
organization-security-policies or region-security-policies or security-policies only.Expand description
Configuration options for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.enable: Option<bool>If set to true, enables CAAP for L7 DDoS detection. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
rule_visibility: Option<RuleVisibility>Rule visibility can be one of the following: STANDARD - opaque rules. (default) PREMIUM - transparent rules. This field is only supported in Global Security Policies of type CLOUD_ARMOR.
threshold_configs: Vec<SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig>Configuration options for layer7 adaptive protection for various customizable thresholds.
Implementations§
Source§impl SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
pub fn new() -> Self
Sourcepub fn set_enable<T>(self, v: T) -> Self
pub fn set_enable<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_enable<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_enable<T>(self, v: Option<T>) -> Self
Sourcepub fn set_rule_visibility<T>(self, v: T) -> Selfwhere
T: Into<RuleVisibility>,
pub fn set_rule_visibility<T>(self, v: T) -> Selfwhere
T: Into<RuleVisibility>,
Sets the value of rule_visibility.
§Example
ⓘ
use google_cloud_compute_v1::model::security_policy_adaptive_protection_config_layer_7_ddos_defense_config::RuleVisibility;
let x0 = SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig::new().set_rule_visibility(RuleVisibility::Standard);Sourcepub fn set_or_clear_rule_visibility<T>(self, v: Option<T>) -> Selfwhere
T: Into<RuleVisibility>,
pub fn set_or_clear_rule_visibility<T>(self, v: Option<T>) -> Selfwhere
T: Into<RuleVisibility>,
Sets or clears the value of rule_visibility.
§Example
ⓘ
use google_cloud_compute_v1::model::security_policy_adaptive_protection_config_layer_7_ddos_defense_config::RuleVisibility;
let x0 = SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig::new().set_or_clear_rule_visibility(Some(RuleVisibility::Standard));
let x_none = SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig::new().set_or_clear_rule_visibility(None::<RuleVisibility>);Sourcepub fn set_threshold_configs<T, V>(self, v: T) -> Selfwhere
T: IntoIterator<Item = V>,
V: Into<SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig>,
pub fn set_threshold_configs<T, V>(self, v: T) -> Selfwhere
T: IntoIterator<Item = V>,
V: Into<SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig>,
Sets the value of threshold_configs.
§Example
ⓘ
use google_cloud_compute_v1::model::SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig;
let x = SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig::new()
.set_threshold_configs([
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig::default()/* use setters */,
SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfig::default()/* use (different) setters */,
]);Trait Implementations§
Source§impl Clone for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl Clone for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Source§fn clone(&self) -> SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
fn clone(&self) -> SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Default for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl Default for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Source§fn default() -> SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
fn default() -> SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Returns the “default value” for a type. Read more
Source§impl PartialEq for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl PartialEq for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Source§fn eq(
&self,
other: &SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig,
) -> bool
fn eq( &self, other: &SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig, ) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Auto Trait Implementations§
impl Freeze for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl RefUnwindSafe for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl Send for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl Sync for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl Unpin for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
impl UnwindSafe for SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more