pub struct RegionSecurityPolicyArgsBuilder<S: State = Empty> { /* private fields */ }
Expand description
Use builder syntax to set the inputs and finish with build_struct()
.
Implementations§
source§impl<S: State> RegionSecurityPolicyArgsBuilder<S>
impl<S: State> RegionSecurityPolicyArgsBuilder<S>
sourcepub fn build_struct(self) -> RegionSecurityPolicyArgswhere
S: IsComplete,
pub fn build_struct(self) -> RegionSecurityPolicyArgswhere
S: IsComplete,
Finish building and return the requested object
sourcepub fn ddos_protection_config(
self,
value: impl Into<Output<Option<RegionSecurityPolicyDdosProtectionConfig>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDdosProtectionConfig<S>>where
S::DdosProtectionConfig: IsUnset,
pub fn ddos_protection_config(
self,
value: impl Into<Output<Option<RegionSecurityPolicyDdosProtectionConfig>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDdosProtectionConfig<S>>where
S::DdosProtectionConfig: IsUnset,
sourcepub fn maybe_ddos_protection_config(
self,
value: Option<impl Into<Output<Option<RegionSecurityPolicyDdosProtectionConfig>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDdosProtectionConfig<S>>where
S::DdosProtectionConfig: IsUnset,
pub fn maybe_ddos_protection_config(
self,
value: Option<impl Into<Output<Option<RegionSecurityPolicyDdosProtectionConfig>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDdosProtectionConfig<S>>where
S::DdosProtectionConfig: IsUnset,
sourcepub fn description(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDescription<S>>where
S::Description: IsUnset,
pub fn description(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDescription<S>>where
S::Description: IsUnset,
sourcepub fn maybe_description(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDescription<S>>where
S::Description: IsUnset,
pub fn maybe_description(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetDescription<S>>where
S::Description: IsUnset,
sourcepub fn name(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetName<S>>where
S::Name: IsUnset,
pub fn name(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetName<S>>where
S::Name: IsUnset,
Optional (Some / Option setters). Default: <pulumi_wasm_rust::Output<Option<String>> as Default>::default()
.
Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
sourcepub fn maybe_name(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetName<S>>where
S::Name: IsUnset,
pub fn maybe_name(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetName<S>>where
S::Name: IsUnset,
Optional (Some / Option setters). Default: <pulumi_wasm_rust::Output<Option<String>> as Default>::default()
.
Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
sourcepub fn project(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetProject<S>>where
S::Project: IsUnset,
pub fn project(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetProject<S>>where
S::Project: IsUnset,
sourcepub fn maybe_project(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetProject<S>>where
S::Project: IsUnset,
pub fn maybe_project(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetProject<S>>where
S::Project: IsUnset,
sourcepub fn region(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRegion<S>>where
S::Region: IsUnset,
pub fn region(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRegion<S>>where
S::Region: IsUnset,
sourcepub fn maybe_region(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRegion<S>>where
S::Region: IsUnset,
pub fn maybe_region(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRegion<S>>where
S::Region: IsUnset,
sourcepub fn rules(
self,
value: impl Into<Output<Option<Vec<RegionSecurityPolicyRule>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRules<S>>where
S::Rules: IsUnset,
pub fn rules(
self,
value: impl Into<Output<Option<Vec<RegionSecurityPolicyRule>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRules<S>>where
S::Rules: IsUnset,
Optional (Some / Option setters). Default:
<pulumi_wasm_rust::Output<
Option<Vec<super::super::types::compute::RegionSecurityPolicyRule>>,
> as Default>::default()
The set of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match “*”). If no rules are provided when creating a security policy, a default rule with action “allow” will be added. Structure is documented below.
sourcepub fn maybe_rules(
self,
value: Option<impl Into<Output<Option<Vec<RegionSecurityPolicyRule>>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRules<S>>where
S::Rules: IsUnset,
pub fn maybe_rules(
self,
value: Option<impl Into<Output<Option<Vec<RegionSecurityPolicyRule>>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetRules<S>>where
S::Rules: IsUnset,
Optional (Some / Option setters). Default:
<pulumi_wasm_rust::Output<
Option<Vec<super::super::types::compute::RegionSecurityPolicyRule>>,
> as Default>::default()
The set of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match “*”). If no rules are provided when creating a security policy, a default rule with action “allow” will be added. Structure is documented below.
sourcepub fn type_(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetType<S>>where
S::Type: IsUnset,
pub fn type_(
self,
value: impl Into<Output<Option<String>>>,
) -> RegionSecurityPolicyArgsBuilder<SetType<S>>where
S::Type: IsUnset,
Optional (Some / Option setters). Default: <pulumi_wasm_rust::Output<Option<String>> as Default>::default()
.
The type indicates the intended use of the security policy.
- CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers.
- CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google’s cache.
- CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application.
This field can be set only at resource creation time.
Possible values are:
CLOUD_ARMOR
,CLOUD_ARMOR_EDGE
,CLOUD_ARMOR_NETWORK
.
sourcepub fn maybe_type_(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetType<S>>where
S::Type: IsUnset,
pub fn maybe_type_(
self,
value: Option<impl Into<Output<Option<String>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetType<S>>where
S::Type: IsUnset,
Optional (Some / Option setters). Default: <pulumi_wasm_rust::Output<Option<String>> as Default>::default()
.
The type indicates the intended use of the security policy.
- CLOUD_ARMOR: Cloud Armor backend security policies can be configured to filter incoming HTTP requests targeting backend services. They filter requests before they hit the origin servers.
- CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can be configured to filter incoming HTTP requests targeting backend services (including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They filter requests before the request is served from Google’s cache.
- CLOUD_ARMOR_NETWORK: Cloud Armor network policies can be configured to filter packets targeting network load balancing resources such as backend services, target pools, target instances, and instances with external IPs. They filter requests before the request is served from the application.
This field can be set only at resource creation time.
Possible values are:
CLOUD_ARMOR
,CLOUD_ARMOR_EDGE
,CLOUD_ARMOR_NETWORK
.
sourcepub fn user_defined_fields(
self,
value: impl Into<Output<Option<Vec<RegionSecurityPolicyUserDefinedField>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetUserDefinedFields<S>>where
S::UserDefinedFields: IsUnset,
pub fn user_defined_fields(
self,
value: impl Into<Output<Option<Vec<RegionSecurityPolicyUserDefinedField>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetUserDefinedFields<S>>where
S::UserDefinedFields: IsUnset,
Optional (Some / Option setters). Default:
<pulumi_wasm_rust::Output<
Option<Vec<super::super::types::compute::RegionSecurityPolicyUserDefinedField>>,
> as Default>::default()
Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Structure is documented below.
sourcepub fn maybe_user_defined_fields(
self,
value: Option<impl Into<Output<Option<Vec<RegionSecurityPolicyUserDefinedField>>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetUserDefinedFields<S>>where
S::UserDefinedFields: IsUnset,
pub fn maybe_user_defined_fields(
self,
value: Option<impl Into<Output<Option<Vec<RegionSecurityPolicyUserDefinedField>>>>>,
) -> RegionSecurityPolicyArgsBuilder<SetUserDefinedFields<S>>where
S::UserDefinedFields: IsUnset,
Optional (Some / Option setters). Default:
<pulumi_wasm_rust::Output<
Option<Vec<super::super::types::compute::RegionSecurityPolicyUserDefinedField>>,
> as Default>::default()
Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-defined field consists of up to 4 bytes extracted from a fixed offset in the packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask to select certain bits. Rules may then specify matching values for these fields. Structure is documented below.