#[non_exhaustive]pub struct UpdateRuleGroupInput {
pub update_token: Option<String>,
pub rule_group_arn: Option<String>,
pub rule_group_name: Option<String>,
pub rule_group: Option<RuleGroup>,
pub rules: Option<String>,
pub type: Option<RuleGroupType>,
pub description: Option<String>,
pub dry_run: Option<bool>,
pub encryption_configuration: Option<EncryptionConfiguration>,
pub source_metadata: Option<SourceMetadata>,
pub analyze_rule_group: Option<bool>,
}
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.update_token: Option<String>
A token used for optimistic locking. Network Firewall returns a token to your requests that access the rule group. The token marks the state of the rule group resource at the time of the request.
To make changes to the rule group, you provide the token in your request. Network Firewall uses the token to ensure that the rule group hasn't changed since you last retrieved it. If it has changed, the operation fails with an InvalidTokenException
. If this happens, retrieve the rule group again to get a current copy of it with a current token. Reapply your changes as needed, then try the operation again using the new token.
rule_group_arn: Option<String>
The Amazon Resource Name (ARN) of the rule group.
You must specify the ARN or the name, and you can specify both.
rule_group_name: Option<String>
The descriptive name of the rule group. You can't change the name of a rule group after you create it.
You must specify the ARN or the name, and you can specify both.
rule_group: Option<RuleGroup>
An object that defines the rule group rules.
You must provide either this rule group setting or a Rules
setting, but not both.
rules: Option<String>
A string containing stateful rule group rules specifications in Suricata flat format, with one rule per line. Use this to import your existing Suricata compatible rule groups.
You must provide either this rules setting or a populated RuleGroup
setting, but not both.
You can provide your rule group specification in Suricata flat format through this setting when you create or update your rule group. The call response returns a RuleGroup
object that Network Firewall has populated from your string.
type: Option<RuleGroupType>
Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.
This setting is required for requests that do not include the RuleGroupARN
.
description: Option<String>
A description of the rule group.
dry_run: Option<bool>
Indicates whether you want Network Firewall to just check the validity of the request, rather than run the request.
If set to TRUE
, Network Firewall checks whether the request can run successfully, but doesn't actually make the requested changes. The call returns the value that the request would return if you ran it with dry run set to FALSE
, but doesn't make additions or changes to your resources. This option allows you to make sure that you have the required permissions to run the request and that your request parameters are valid.
If set to FALSE
, Network Firewall makes the requested changes to your resources.
encryption_configuration: Option<EncryptionConfiguration>
A complex type that contains settings for encryption of your rule group resources.
source_metadata: Option<SourceMetadata>
A complex type that contains metadata about the rule group that your own rule group is copied from. You can use the metadata to keep track of updates made to the originating rule group.
analyze_rule_group: Option<bool>
Indicates whether you want Network Firewall to analyze the stateless rules in the rule group for rule behavior such as asymmetric routing. If set to TRUE
, Network Firewall runs the analysis and then updates the rule group for you. To run the stateless rule group analyzer without updating the rule group, set DryRun
to TRUE
.
Implementations§
source§impl UpdateRuleGroupInput
impl UpdateRuleGroupInput
sourcepub fn update_token(&self) -> Option<&str>
pub fn update_token(&self) -> Option<&str>
A token used for optimistic locking. Network Firewall returns a token to your requests that access the rule group. The token marks the state of the rule group resource at the time of the request.
To make changes to the rule group, you provide the token in your request. Network Firewall uses the token to ensure that the rule group hasn't changed since you last retrieved it. If it has changed, the operation fails with an InvalidTokenException
. If this happens, retrieve the rule group again to get a current copy of it with a current token. Reapply your changes as needed, then try the operation again using the new token.
sourcepub fn rule_group_arn(&self) -> Option<&str>
pub fn rule_group_arn(&self) -> Option<&str>
The Amazon Resource Name (ARN) of the rule group.
You must specify the ARN or the name, and you can specify both.
sourcepub fn rule_group_name(&self) -> Option<&str>
pub fn rule_group_name(&self) -> Option<&str>
The descriptive name of the rule group. You can't change the name of a rule group after you create it.
You must specify the ARN or the name, and you can specify both.
sourcepub fn rule_group(&self) -> Option<&RuleGroup>
pub fn rule_group(&self) -> Option<&RuleGroup>
An object that defines the rule group rules.
You must provide either this rule group setting or a Rules
setting, but not both.
sourcepub fn rules(&self) -> Option<&str>
pub fn rules(&self) -> Option<&str>
A string containing stateful rule group rules specifications in Suricata flat format, with one rule per line. Use this to import your existing Suricata compatible rule groups.
You must provide either this rules setting or a populated RuleGroup
setting, but not both.
You can provide your rule group specification in Suricata flat format through this setting when you create or update your rule group. The call response returns a RuleGroup
object that Network Firewall has populated from your string.
sourcepub fn type(&self) -> Option<&RuleGroupType>
pub fn type(&self) -> Option<&RuleGroupType>
Indicates whether the rule group is stateless or stateful. If the rule group is stateless, it contains stateless rules. If it is stateful, it contains stateful rules.
This setting is required for requests that do not include the RuleGroupARN
.
sourcepub fn description(&self) -> Option<&str>
pub fn description(&self) -> Option<&str>
A description of the rule group.
sourcepub fn dry_run(&self) -> Option<bool>
pub fn dry_run(&self) -> Option<bool>
Indicates whether you want Network Firewall to just check the validity of the request, rather than run the request.
If set to TRUE
, Network Firewall checks whether the request can run successfully, but doesn't actually make the requested changes. The call returns the value that the request would return if you ran it with dry run set to FALSE
, but doesn't make additions or changes to your resources. This option allows you to make sure that you have the required permissions to run the request and that your request parameters are valid.
If set to FALSE
, Network Firewall makes the requested changes to your resources.
sourcepub fn encryption_configuration(&self) -> Option<&EncryptionConfiguration>
pub fn encryption_configuration(&self) -> Option<&EncryptionConfiguration>
A complex type that contains settings for encryption of your rule group resources.
sourcepub fn source_metadata(&self) -> Option<&SourceMetadata>
pub fn source_metadata(&self) -> Option<&SourceMetadata>
A complex type that contains metadata about the rule group that your own rule group is copied from. You can use the metadata to keep track of updates made to the originating rule group.
sourcepub fn analyze_rule_group(&self) -> Option<bool>
pub fn analyze_rule_group(&self) -> Option<bool>
Indicates whether you want Network Firewall to analyze the stateless rules in the rule group for rule behavior such as asymmetric routing. If set to TRUE
, Network Firewall runs the analysis and then updates the rule group for you. To run the stateless rule group analyzer without updating the rule group, set DryRun
to TRUE
.
source§impl UpdateRuleGroupInput
impl UpdateRuleGroupInput
sourcepub fn builder() -> UpdateRuleGroupInputBuilder
pub fn builder() -> UpdateRuleGroupInputBuilder
Creates a new builder-style object to manufacture UpdateRuleGroupInput
.
Trait Implementations§
source§impl Clone for UpdateRuleGroupInput
impl Clone for UpdateRuleGroupInput
source§fn clone(&self) -> UpdateRuleGroupInput
fn clone(&self) -> UpdateRuleGroupInput
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for UpdateRuleGroupInput
impl Debug for UpdateRuleGroupInput
source§impl PartialEq for UpdateRuleGroupInput
impl PartialEq for UpdateRuleGroupInput
source§fn eq(&self, other: &UpdateRuleGroupInput) -> bool
fn eq(&self, other: &UpdateRuleGroupInput) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for UpdateRuleGroupInput
Auto Trait Implementations§
impl Freeze for UpdateRuleGroupInput
impl RefUnwindSafe for UpdateRuleGroupInput
impl Send for UpdateRuleGroupInput
impl Sync for UpdateRuleGroupInput
impl Unpin for UpdateRuleGroupInput
impl UnwindSafe for UpdateRuleGroupInput
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
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more