#[non_exhaustive]pub struct ResourceValueConfig {
pub name: String,
pub resource_value: ResourceValue,
pub tag_values: Vec<String>,
pub resource_type: String,
pub scope: String,
pub resource_labels_selector: HashMap<String, String>,
pub description: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub cloud_provider: CloudProvider,
pub sensitive_data_protection_mapping: Option<SensitiveDataProtectionMapping>,
/* private fields */
}Expand description
A resource value configuration (RVC) is a mapping configuration of user’s resources to resource values. Used in Attack path simulations.
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.name: StringIdentifier. Name for the resource value configuration
resource_value: ResourceValueResource value level this expression represents Only required when there is no Sensitive Data Protection mapping in the request
tag_values: Vec<String>Tag values combined with AND to check against.
For Google Cloud resources, they are tag value IDs in the form of
“tagValues/123”. Example: [ "tagValues/123", "tagValues/456", "tagValues/789" ]
https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing
resource_type: StringApply resource_value only to resources that match resource_type.
resource_type will be checked with AND of other resources.
For example, “storage.googleapis.com/Bucket” with resource_value “HIGH”
will apply “HIGH” value only to “storage.googleapis.com/Bucket” resources.
scope: StringProject or folder to scope this configuration to.
For example, “project/456” would apply this configuration only to resources
in “project/456” scope and will be checked with AND of other resources.
resource_labels_selector: HashMap<String, String>List of resource labels to search for, evaluated with AND.
For example, “resource_labels_selector”: {“key”: “value”, “env”: “prod”}
will match resources with labels “key”: “value” AND “env”:
“prod”
https://cloud.google.com/resource-manager/docs/creating-managing-labels
description: StringDescription of the resource value configuration.
create_time: Option<Timestamp>Output only. Timestamp this resource value configuration was created.
update_time: Option<Timestamp>Output only. Timestamp this resource value configuration was last updated.
cloud_provider: CloudProviderCloud provider this configuration applies to
sensitive_data_protection_mapping: Option<SensitiveDataProtectionMapping>A mapping of the sensitivity on Sensitive Data Protection finding to resource values. This mapping can only be used in combination with a resource_type that is related to BigQuery, e.g. “bigquery.googleapis.com/Dataset”.
Implementations§
Source§impl ResourceValueConfig
impl ResourceValueConfig
pub fn new() -> Self
Sourcepub fn set_resource_value<T: Into<ResourceValue>>(self, v: T) -> Self
pub fn set_resource_value<T: Into<ResourceValue>>(self, v: T) -> Self
Sets the value of resource_value.
§Example
use google_cloud_securitycenter_v2::model::ResourceValue;
let x0 = ResourceValueConfig::new().set_resource_value(ResourceValue::High);
let x1 = ResourceValueConfig::new().set_resource_value(ResourceValue::Medium);
let x2 = ResourceValueConfig::new().set_resource_value(ResourceValue::Low);Sourcepub fn set_tag_values<T, V>(self, v: T) -> Self
pub fn set_tag_values<T, V>(self, v: T) -> Self
Sets the value of tag_values.
§Example
let x = ResourceValueConfig::new().set_tag_values(["a", "b", "c"]);Sourcepub fn set_resource_type<T: Into<String>>(self, v: T) -> Self
pub fn set_resource_type<T: Into<String>>(self, v: T) -> Self
Sets the value of resource_type.
§Example
let x = ResourceValueConfig::new().set_resource_type("example");Sourcepub fn set_resource_labels_selector<T, K, V>(self, v: T) -> Self
pub fn set_resource_labels_selector<T, K, V>(self, v: T) -> Self
Sets the value of resource_labels_selector.
§Example
let x = ResourceValueConfig::new().set_resource_labels_selector([
("key0", "abc"),
("key1", "xyz"),
]);Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sets the value of description.
§Example
let x = ResourceValueConfig::new().set_description("example");Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
§Example
use wkt::Timestamp;
let x = ResourceValueConfig::new().set_create_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
§Example
use wkt::Timestamp;
let x = ResourceValueConfig::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = ResourceValueConfig::new().set_or_clear_create_time(None::<Timestamp>);Sourcepub fn set_update_time<T>(self, v: T) -> Self
pub fn set_update_time<T>(self, v: T) -> Self
Sets the value of update_time.
§Example
use wkt::Timestamp;
let x = ResourceValueConfig::new().set_update_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_update_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of update_time.
§Example
use wkt::Timestamp;
let x = ResourceValueConfig::new().set_or_clear_update_time(Some(Timestamp::default()/* use setters */));
let x = ResourceValueConfig::new().set_or_clear_update_time(None::<Timestamp>);Sourcepub fn set_cloud_provider<T: Into<CloudProvider>>(self, v: T) -> Self
pub fn set_cloud_provider<T: Into<CloudProvider>>(self, v: T) -> Self
Sets the value of cloud_provider.
§Example
use google_cloud_securitycenter_v2::model::CloudProvider;
let x0 = ResourceValueConfig::new().set_cloud_provider(CloudProvider::GoogleCloudPlatform);
let x1 = ResourceValueConfig::new().set_cloud_provider(CloudProvider::AmazonWebServices);
let x2 = ResourceValueConfig::new().set_cloud_provider(CloudProvider::MicrosoftAzure);Sourcepub fn set_sensitive_data_protection_mapping<T>(self, v: T) -> Selfwhere
T: Into<SensitiveDataProtectionMapping>,
pub fn set_sensitive_data_protection_mapping<T>(self, v: T) -> Selfwhere
T: Into<SensitiveDataProtectionMapping>,
Sets the value of sensitive_data_protection_mapping.
§Example
use google_cloud_securitycenter_v2::model::resource_value_config::SensitiveDataProtectionMapping;
let x = ResourceValueConfig::new().set_sensitive_data_protection_mapping(SensitiveDataProtectionMapping::default()/* use setters */);Sourcepub fn set_or_clear_sensitive_data_protection_mapping<T>(
self,
v: Option<T>,
) -> Selfwhere
T: Into<SensitiveDataProtectionMapping>,
pub fn set_or_clear_sensitive_data_protection_mapping<T>(
self,
v: Option<T>,
) -> Selfwhere
T: Into<SensitiveDataProtectionMapping>,
Sets or clears the value of sensitive_data_protection_mapping.
§Example
use google_cloud_securitycenter_v2::model::resource_value_config::SensitiveDataProtectionMapping;
let x = ResourceValueConfig::new().set_or_clear_sensitive_data_protection_mapping(Some(SensitiveDataProtectionMapping::default()/* use setters */));
let x = ResourceValueConfig::new().set_or_clear_sensitive_data_protection_mapping(None::<SensitiveDataProtectionMapping>);Trait Implementations§
Source§impl Clone for ResourceValueConfig
impl Clone for ResourceValueConfig
Source§fn clone(&self) -> ResourceValueConfig
fn clone(&self) -> ResourceValueConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more