Struct google_accesscontextmanager1_beta::Condition [−][src]
pub struct Condition { pub device_policy: Option<DevicePolicy>, pub required_access_levels: Option<Vec<String>>, pub members: Option<Vec<String>>, pub negate: Option<bool>, pub ip_subnetworks: Option<Vec<String>>, }
A condition necessary for an AccessLevel
to be granted. The Condition is an
AND over its fields. So a Condition is true if: 1) the request IP is from one
of the listed subnetworks AND 2) the originating device complies with the
listed device policy AND 3) all listed access levels are granted AND 4) the
request was sent at a time allowed by the DateTimeRestriction.
This type is not used in any activity, and only used as part of another schema.
Fields
device_policy: Option<DevicePolicy>
Device specific restrictions, all restrictions must hold for the Condition to be true. If not specified, all devices are allowed.
required_access_levels: Option<Vec<String>>
A list of other access levels defined in the same Policy
, referenced by
resource name. Referencing an AccessLevel
which does not exist is an
error. All access levels listed must be granted for the Condition
to be true. Example:
"accessPolicies/MY_POLICY/accessLevels/LEVEL_NAME"
members: Option<Vec<String>>
The signed-in user originating the request must be a part of one of the
provided members.
Syntax:
user:{emailid}
group:{emailid}
serviceAccount:{emailid}
If not specified, a request may come from any user (logged in/not logged
in, not present in any groups, etc.).
negate: Option<bool>
Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields, each field must be false for the Condition overall to be satisfied. Defaults to false.
ip_subnetworks: Option<Vec<String>>
CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, "192.0.2.0/24" is accepted but "192.0.2.1/24" is not. Similarly, for IPv6, "2001:db8::/32" is accepted whereas "2001:db8::1/32" is not. The originating IP of a request must be in one of the listed subnets in order for this Condition to be true. If empty, all IP addresses are allowed.
Trait Implementations
impl Default for Condition
[src]
impl Default for Condition
impl Clone for Condition
[src]
impl Clone for Condition
fn clone(&self) -> Condition
[src]
fn clone(&self) -> Condition
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for Condition
[src]
impl Debug for Condition
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Part for Condition
[src]
impl Part for Condition