#[non_exhaustive]pub struct ServicePerimeter {
pub name: String,
pub title: String,
pub description: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub perimeter_type: PerimeterType,
pub status: Option<ServicePerimeterConfig>,
pub spec: Option<ServicePerimeterConfig>,
pub use_explicit_dry_run_spec: bool,
/* private fields */
}Expand description
ServicePerimeter describes a set of Google Cloud resources which can freely
import and export data amongst themselves, but not export outside of the
ServicePerimeter. If a request with a source within this ServicePerimeter
has a target outside of the ServicePerimeter, the request will be blocked.
Otherwise the request is allowed. There are two types of Service Perimeter -
Regular and Bridge. Regular Service Perimeters cannot overlap, a single
Google Cloud project can only belong to a single regular Service Perimeter.
Service Perimeter Bridges can contain only Google Cloud projects as members,
a single Google Cloud project may belong to multiple Service Perimeter
Bridges.
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. Resource name for the ServicePerimeter. The short_name
component must begin with a letter and only include alphanumeric and ‘_’.
Format:
accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}
title: StringHuman readable title. Must be unique within the Policy.
description: StringDescription of the ServicePerimeter and its use. Does not affect
behavior.
create_time: Option<Timestamp>Output only. Time the ServicePerimeter was created in UTC.
update_time: Option<Timestamp>Output only. Time the ServicePerimeter was updated in UTC.
perimeter_type: PerimeterTypePerimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, the restricted service list as well as access level lists must be empty.
status: Option<ServicePerimeterConfig>Current ServicePerimeter configuration. Specifies sets of resources, restricted services and access levels that determine perimeter content and boundaries.
spec: Option<ServicePerimeterConfig>Proposed (or dry run) ServicePerimeter configuration. This configuration allows to specify and test ServicePerimeter configuration without enforcing actual access restrictions. Only allowed to be set when the “use_explicit_dry_run_spec” flag is set.
use_explicit_dry_run_spec: boolUse explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration (“spec”) to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config (“status”) without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values.
Implementations§
Source§impl ServicePerimeter
impl ServicePerimeter
pub fn new() -> Self
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.
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.
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.
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.
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.
Sourcepub fn set_perimeter_type<T: Into<PerimeterType>>(self, v: T) -> Self
pub fn set_perimeter_type<T: Into<PerimeterType>>(self, v: T) -> Self
Sets the value of perimeter_type.
Sourcepub fn set_status<T>(self, v: T) -> Selfwhere
T: Into<ServicePerimeterConfig>,
pub fn set_status<T>(self, v: T) -> Selfwhere
T: Into<ServicePerimeterConfig>,
Sets the value of status.
Sourcepub fn set_or_clear_status<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServicePerimeterConfig>,
pub fn set_or_clear_status<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServicePerimeterConfig>,
Sets or clears the value of status.
Sourcepub fn set_spec<T>(self, v: T) -> Selfwhere
T: Into<ServicePerimeterConfig>,
pub fn set_spec<T>(self, v: T) -> Selfwhere
T: Into<ServicePerimeterConfig>,
Sets the value of spec.
Sourcepub fn set_or_clear_spec<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServicePerimeterConfig>,
pub fn set_or_clear_spec<T>(self, v: Option<T>) -> Selfwhere
T: Into<ServicePerimeterConfig>,
Sets or clears the value of spec.
Sourcepub fn set_use_explicit_dry_run_spec<T: Into<bool>>(self, v: T) -> Self
pub fn set_use_explicit_dry_run_spec<T: Into<bool>>(self, v: T) -> Self
Sets the value of use_explicit_dry_run_spec.
Trait Implementations§
Source§impl Clone for ServicePerimeter
impl Clone for ServicePerimeter
Source§fn clone(&self) -> ServicePerimeter
fn clone(&self) -> ServicePerimeter
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more