#[non_exhaustive]pub enum AttackVector {
Unspecified,
Network,
Adjacent,
Local,
Physical,
UnknownValue(UnknownValue),
}Expand description
This metric reflects the context by which vulnerability exploitation is possible.
§Working with unknown values
This enum is defined as #[non_exhaustive] because Google Cloud may add
additional enum variants at any time. Adding new variants is not considered
a breaking change. Applications should write their code in anticipation of:
- New values appearing in future releases of the client library, and
- New values received dynamically, without application changes.
Please consult the Working with enums section in the user guide for some guidelines.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Unspecified
Invalid value.
Network
The vulnerable component is bound to the network stack and the set of possible attackers extends beyond the other options listed below, up to and including the entire Internet.
Adjacent
The vulnerable component is bound to the network stack, but the attack is limited at the protocol level to a logically adjacent topology.
Local
The vulnerable component is not bound to the network stack and the attacker’s path is via read/write/execute capabilities.
Physical
The attack requires the attacker to physically touch or manipulate the vulnerable component.
UnknownValue(UnknownValue)
If set, the enum was initialized with an unknown value.
Applications can examine the value using AttackVector::value or AttackVector::name.
Implementations§
Trait Implementations§
Source§impl Clone for AttackVector
impl Clone for AttackVector
Source§fn clone(&self) -> AttackVector
fn clone(&self) -> AttackVector
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for AttackVector
impl Debug for AttackVector
Source§impl Default for AttackVector
impl Default for AttackVector
Source§impl<'de> Deserialize<'de> for AttackVector
impl<'de> Deserialize<'de> for AttackVector
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Source§impl Display for AttackVector
impl Display for AttackVector
Source§impl From<&str> for AttackVector
impl From<&str> for AttackVector
Source§impl From<i32> for AttackVector
impl From<i32> for AttackVector
Source§impl PartialEq for AttackVector
impl PartialEq for AttackVector
Source§impl Serialize for AttackVector
impl Serialize for AttackVector
impl StructuralPartialEq for AttackVector
Auto Trait Implementations§
impl Freeze for AttackVector
impl RefUnwindSafe for AttackVector
impl Send for AttackVector
impl Sync for AttackVector
impl Unpin for AttackVector
impl UnwindSafe for AttackVector
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.