#[non_exhaustive]pub struct Framework {
pub name: String,
pub major_revision_id: i64,
pub display_name: String,
pub description: String,
pub type: FrameworkType,
pub cloud_control_details: Vec<CloudControlDetails>,
pub category: Vec<FrameworkCategory>,
pub supported_cloud_providers: Vec<CloudProvider>,
pub supported_target_resource_types: Vec<TargetResourceType>,
pub supported_enforcement_modes: Vec<EnforcementMode>,
/* private fields */
}Expand description
A framework is a collection of cloud controls and regulatory controls that represent security best practices or industry-defined standards such as FedRAMP or NIST.
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: StringRequired. Identifier. The name of the framework, in the format
organizations/{organization}/locations/{location}/frameworks/{framework_id}.
The only supported location is global.
major_revision_id: i64Output only. The major version of the framework, which is incremented in ascending order.
display_name: StringOptional. The friendly name of the framework. The maximum length is 200 characters.
description: StringOptional. The description of the framework. The maximum length is 2000 characters.
type: FrameworkTypeOutput only. The type of framework.
cloud_control_details: Vec<CloudControlDetails>Optional. The cloud control details that are directly added without any grouping in the framework.
category: Vec<FrameworkCategory>Optional. The category of the framework.
supported_cloud_providers: Vec<CloudProvider>Output only. The cloud providers that are supported by the framework.
supported_target_resource_types: Vec<TargetResourceType>Output only. The target resource types that are supported by the framework.
supported_enforcement_modes: Vec<EnforcementMode>Output only. The supported enforcement modes of the framework.
Implementations§
Source§impl Framework
impl Framework
pub fn new() -> Self
Sourcepub fn set_major_revision_id<T: Into<i64>>(self, v: T) -> Self
pub fn set_major_revision_id<T: Into<i64>>(self, v: T) -> Self
Sourcepub fn set_display_name<T: Into<String>>(self, v: T) -> Self
pub fn set_display_name<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_description<T: Into<String>>(self, v: T) -> Self
pub fn set_description<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_type<T: Into<FrameworkType>>(self, v: T) -> Self
pub fn set_type<T: Into<FrameworkType>>(self, v: T) -> Self
Sourcepub fn set_cloud_control_details<T, V>(self, v: T) -> Self
pub fn set_cloud_control_details<T, V>(self, v: T) -> Self
Sets the value of cloud_control_details.
§Example
use google_cloud_cloudsecuritycompliance_v1::model::CloudControlDetails;
let x = Framework::new()
.set_cloud_control_details([
CloudControlDetails::default()/* use setters */,
CloudControlDetails::default()/* use (different) setters */,
]);Sourcepub fn set_category<T, V>(self, v: T) -> Self
pub fn set_category<T, V>(self, v: T) -> Self
Sourcepub fn set_supported_cloud_providers<T, V>(self, v: T) -> Self
pub fn set_supported_cloud_providers<T, V>(self, v: T) -> Self
Sets the value of supported_cloud_providers.
§Example
use google_cloud_cloudsecuritycompliance_v1::model::CloudProvider;
let x = Framework::new().set_supported_cloud_providers([
CloudProvider::Aws,
CloudProvider::Azure,
CloudProvider::Gcp,
]);Sourcepub fn set_supported_target_resource_types<T, V>(self, v: T) -> Self
pub fn set_supported_target_resource_types<T, V>(self, v: T) -> Self
Sets the value of supported_target_resource_types.
§Example
use google_cloud_cloudsecuritycompliance_v1::model::TargetResourceType;
let x = Framework::new().set_supported_target_resource_types([
TargetResourceType::TargetResourceCrmTypeOrg,
TargetResourceType::TargetResourceCrmTypeFolder,
TargetResourceType::TargetResourceCrmTypeProject,
]);Sourcepub fn set_supported_enforcement_modes<T, V>(self, v: T) -> Self
pub fn set_supported_enforcement_modes<T, V>(self, v: T) -> Self
Sets the value of supported_enforcement_modes.
§Example
use google_cloud_cloudsecuritycompliance_v1::model::EnforcementMode;
let x = Framework::new().set_supported_enforcement_modes([
EnforcementMode::Preventive,
EnforcementMode::Detective,
EnforcementMode::Audit,
]);