Struct google_api_proto::google::cloud::policytroubleshooter::v1::ExplainedPolicy
source · pub struct ExplainedPolicy {
pub access: i32,
pub full_resource_name: String,
pub policy: Option<Policy>,
pub binding_explanations: Vec<BindingExplanation>,
pub relevance: i32,
}
Expand description
Details about how a specific IAM [Policy][google.iam.v1.Policy] contributed to the access check.
Fields§
§access: i32
Indicates whether this policy provides the specified permission to the specified principal for the specified resource.
This field does not indicate whether the principal actually has the
permission for the resource. There might be another policy that overrides
this policy. To determine whether the principal actually has the
permission, use the access
field in the
[TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
full_resource_name: String
The full resource name that identifies the resource. For example,
//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance
.
If the sender of the request does not have access to the policy, this field is omitted.
For examples of full resource names for Google Cloud services, see https://cloud.google.com/iam/help/troubleshooter/full-resource-names.
policy: Option<Policy>
The IAM policy attached to the resource.
If the sender of the request does not have access to the policy, this field is empty.
binding_explanations: Vec<BindingExplanation>
Details about how each binding in the policy affects the principal’s ability, or inability, to use the permission for the resource.
If the sender of the request does not have access to the policy, this field is omitted.
relevance: i32
The relevance of this policy to the overall determination in the [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
If the sender of the request does not have access to the policy, this field is omitted.
Implementations§
source§impl ExplainedPolicy
impl ExplainedPolicy
sourcepub fn access(&self) -> AccessState
pub fn access(&self) -> AccessState
Returns the enum value of access
, or the default if the field is set to an invalid enum value.
sourcepub fn set_access(&mut self, value: AccessState)
pub fn set_access(&mut self, value: AccessState)
Sets access
to the provided enum value.
sourcepub fn relevance(&self) -> HeuristicRelevance
pub fn relevance(&self) -> HeuristicRelevance
Returns the enum value of relevance
, or the default if the field is set to an invalid enum value.
sourcepub fn set_relevance(&mut self, value: HeuristicRelevance)
pub fn set_relevance(&mut self, value: HeuristicRelevance)
Sets relevance
to the provided enum value.
Trait Implementations§
source§impl Clone for ExplainedPolicy
impl Clone for ExplainedPolicy
source§fn clone(&self) -> ExplainedPolicy
fn clone(&self) -> ExplainedPolicy
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ExplainedPolicy
impl Debug for ExplainedPolicy
source§impl Default for ExplainedPolicy
impl Default for ExplainedPolicy
source§impl Message for ExplainedPolicy
impl Message for ExplainedPolicy
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for ExplainedPolicy
impl PartialEq for ExplainedPolicy
source§fn eq(&self, other: &ExplainedPolicy) -> bool
fn eq(&self, other: &ExplainedPolicy) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for ExplainedPolicy
Auto Trait Implementations§
impl !Freeze for ExplainedPolicy
impl RefUnwindSafe for ExplainedPolicy
impl Send for ExplainedPolicy
impl Sync for ExplainedPolicy
impl Unpin for ExplainedPolicy
impl UnwindSafe for ExplainedPolicy
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<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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