#[non_exhaustive]pub struct MitreAttack {
pub primary_tactic: Tactic,
pub primary_techniques: Vec<Technique>,
pub additional_tactics: Vec<Tactic>,
pub additional_techniques: Vec<Technique>,
pub version: String,
/* private fields */
}Expand description
MITRE ATT&CK tactics and techniques related to this finding. See: https://attack.mitre.org
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.primary_tactic: TacticThe MITRE ATT&CK tactic most closely represented by this finding, if any.
primary_techniques: Vec<Technique>The MITRE ATT&CK technique most closely represented by this finding, if
any. primary_techniques is a repeated field because there are multiple
levels of MITRE ATT&CK techniques. If the technique most closely
represented by this finding is a sub-technique (e.g. SCANNING_IP_BLOCKS),
both the sub-technique and its parent technique(s) will be listed (e.g.
SCANNING_IP_BLOCKS, ACTIVE_SCANNING).
additional_tactics: Vec<Tactic>Additional MITRE ATT&CK tactics related to this finding, if any.
additional_techniques: Vec<Technique>Additional MITRE ATT&CK techniques related to this finding, if any, along with any of their respective parent techniques.
version: StringThe MITRE ATT&CK version referenced by the above fields. E.g. “8”.
Implementations§
Source§impl MitreAttack
impl MitreAttack
pub fn new() -> Self
Sourcepub fn set_primary_tactic<T: Into<Tactic>>(self, v: T) -> Self
pub fn set_primary_tactic<T: Into<Tactic>>(self, v: T) -> Self
Sets the value of primary_tactic.
§Example
use google_cloud_securitycenter_v2::model::mitre_attack::Tactic;
let x0 = MitreAttack::new().set_primary_tactic(Tactic::Reconnaissance);
let x1 = MitreAttack::new().set_primary_tactic(Tactic::ResourceDevelopment);
let x2 = MitreAttack::new().set_primary_tactic(Tactic::InitialAccess);Sourcepub fn set_primary_techniques<T, V>(self, v: T) -> Self
pub fn set_primary_techniques<T, V>(self, v: T) -> Self
Sets the value of primary_techniques.
§Example
use google_cloud_securitycenter_v2::model::mitre_attack::Technique;
let x = MitreAttack::new().set_primary_techniques([
Technique::DataObfuscation,
Technique::DataObfuscationSteganography,
Technique::OsCredentialDumping,
]);Sourcepub fn set_additional_tactics<T, V>(self, v: T) -> Self
pub fn set_additional_tactics<T, V>(self, v: T) -> Self
Sets the value of additional_tactics.
§Example
use google_cloud_securitycenter_v2::model::mitre_attack::Tactic;
let x = MitreAttack::new().set_additional_tactics([
Tactic::Reconnaissance,
Tactic::ResourceDevelopment,
Tactic::InitialAccess,
]);Sourcepub fn set_additional_techniques<T, V>(self, v: T) -> Self
pub fn set_additional_techniques<T, V>(self, v: T) -> Self
Sets the value of additional_techniques.
§Example
use google_cloud_securitycenter_v2::model::mitre_attack::Technique;
let x = MitreAttack::new().set_additional_techniques([
Technique::DataObfuscation,
Technique::DataObfuscationSteganography,
Technique::OsCredentialDumping,
]);Trait Implementations§
Source§impl Clone for MitreAttack
impl Clone for MitreAttack
Source§fn clone(&self) -> MitreAttack
fn clone(&self) -> MitreAttack
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more