#[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 one of the following
formats:
organizations/{organization}/locations/{location}/frameworks/{framework}
or
projects/{project}/locations/{location}/frameworks/{framework}.
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
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,
]);Trait Implementations§
impl StructuralPartialEq for Framework
Auto Trait Implementations§
impl Freeze for Framework
impl RefUnwindSafe for Framework
impl Send for Framework
impl Sync for Framework
impl Unpin for Framework
impl UnsafeUnpin for Framework
impl UnwindSafe for Framework
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> 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