Struct google_api_proto::google::cloud::vmwareengine::v1::ExternalAccessRule
source · pub struct ExternalAccessRule {Show 13 fields
pub name: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub description: String,
pub priority: i32,
pub action: i32,
pub ip_protocol: String,
pub source_ip_ranges: Vec<IpRange>,
pub source_ports: Vec<String>,
pub destination_ip_ranges: Vec<IpRange>,
pub destination_ports: Vec<String>,
pub state: i32,
pub uid: String,
}
Expand description
External access firewall rules for filtering incoming traffic destined to
ExternalAddress
resources.
Fields§
§name: String
Output only. The resource name of this external access rule.
Resource names are schemeless URIs that follow the conventions in
https://cloud.google.com/apis/design/resource_names.
For example:
projects/my-project/locations/us-central1/networkPolicies/my-policy/externalAccessRules/my-rule
create_time: Option<Timestamp>
Output only. Creation time of this resource.
update_time: Option<Timestamp>
Output only. Last update time of this resource.
description: String
User-provided description for this external access rule.
priority: i32
External access rule priority, which determines the external access rule to
use when multiple rules apply. If multiple rules have the same priority,
their ordering is non-deterministic. If specific ordering is required,
assign unique priorities to enforce such ordering. The external access rule
priority is an integer from 100 to 4096, both inclusive. Lower integers
indicate higher precedence. For example, a rule with priority 100
has
higher precedence than a rule with priority 101
.
action: i32
The action that the external access rule performs.
ip_protocol: String
The IP protocol to which the external access rule applies. This value can
be one of the following three protocol strings (not case-sensitive):
tcp
, udp
, or icmp
.
source_ip_ranges: Vec<IpRange>
If source ranges are specified, the external access rule applies only to
traffic that has a source IP address in these ranges. These ranges can
either be expressed in the CIDR format or as an IP address. As only inbound
rules are supported, ExternalAddress
resources cannot be the source IP
addresses of an external access rule. To match all source addresses,
specify 0.0.0.0/0
.
source_ports: Vec<String>
A list of source ports to which the external access rule applies. This
field is only applicable for the UDP or TCP protocol.
Each entry must be either an integer or a range. For example: \["22"\]
,
\["80","443"\]
, or \["12345-12349"\]
. To match all source ports, specify
\["0-65535"\]
.
destination_ip_ranges: Vec<IpRange>
If destination ranges are specified, the external access rule applies only
to the traffic that has a destination IP address in these ranges. The
specified IP addresses must have reserved external IP addresses in the
scope of the parent network policy. To match all external IP addresses in
the scope of the parent network policy, specify 0.0.0.0/0
. To match a
specific external IP address, specify it using the
IpRange.external_address
property.
destination_ports: Vec<String>
A list of destination ports to which the external access rule applies. This
field is only applicable for the UDP or TCP protocol.
Each entry must be either an integer or a range. For example: \["22"\]
,
\["80","443"\]
, or \["12345-12349"\]
. To match all destination ports,
specify \["0-65535"\]
.
state: i32
Output only. The state of the resource.
uid: String
Output only. System-generated unique identifier for the resource.
Implementations§
source§impl ExternalAccessRule
impl ExternalAccessRule
sourcepub fn action(&self) -> Action
pub fn action(&self) -> Action
Returns the enum value of action
, or the default if the field is set to an invalid enum value.
sourcepub fn set_action(&mut self, value: Action)
pub fn set_action(&mut self, value: Action)
Sets action
to the provided enum value.
Trait Implementations§
source§impl Clone for ExternalAccessRule
impl Clone for ExternalAccessRule
source§fn clone(&self) -> ExternalAccessRule
fn clone(&self) -> ExternalAccessRule
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ExternalAccessRule
impl Debug for ExternalAccessRule
source§impl Default for ExternalAccessRule
impl Default for ExternalAccessRule
source§impl Message for ExternalAccessRule
impl Message for ExternalAccessRule
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for ExternalAccessRule
impl PartialEq for ExternalAccessRule
source§fn eq(&self, other: &ExternalAccessRule) -> bool
fn eq(&self, other: &ExternalAccessRule) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for ExternalAccessRule
Auto Trait Implementations§
impl Freeze for ExternalAccessRule
impl RefUnwindSafe for ExternalAccessRule
impl Send for ExternalAccessRule
impl Sync for ExternalAccessRule
impl Unpin for ExternalAccessRule
impl UnwindSafe for ExternalAccessRule
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request