Struct google_api_proto::google::cloud::asset::v1::IamPolicySearchResult
source · pub struct IamPolicySearchResult {
pub resource: String,
pub asset_type: String,
pub project: String,
pub folders: Vec<String>,
pub organization: String,
pub policy: Option<Policy>,
pub explanation: Option<Explanation>,
}
Expand description
A result of IAM Policy search, containing information of an IAM policy.
Fields§
§resource: String
The full resource name of the resource associated with this IAM policy.
Example:
//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1
.
See Cloud Asset Inventory Resource Name
Format
for more information.
To search against the resource
:
- use a field query. Example:
resource:organizations/123
asset_type: String
The type of the resource associated with this IAM policy. Example:
compute.googleapis.com/Disk
.
To search against the asset_type
:
- specify the
asset_types
field in your search request.
project: String
The project that the associated Google Cloud resource belongs to, in the form of projects/{PROJECT_NUMBER}. If an IAM policy is set on a resource (like VM instance, Cloud Storage bucket), the project field will indicate the project that contains the resource. If an IAM policy is set on a folder or orgnization, this field will be empty.
To search against the project
:
- specify the
scope
field as this project in your search request.
folders: Vec<String>
The folder(s) that the IAM policy belongs to, in the form of folders/{FOLDER_NUMBER}. This field is available when the IAM policy belongs to one or more folders.
To search against folders
:
- use a field query. Example:
folders:(123 OR 456)
- use a free text query. Example:
123
- specify the
scope
field as this folder in your search request.
organization: String
The organization that the IAM policy belongs to, in the form of organizations/{ORGANIZATION_NUMBER}. This field is available when the IAM policy belongs to an organization.
To search against organization
:
- use a field query. Example:
organization:123
- use a free text query. Example:
123
- specify the
scope
field as this organization in your search request.
policy: Option<Policy>
The IAM policy directly set on the given resource. Note that the original IAM policy can contain multiple bindings. This only contains the bindings that match the given query. For queries that don’t contain a constrain on policies (e.g., an empty query), this contains all the bindings.
To search against the policy
bindings:
- use a field query:
- query by the policy contained members. Example:
policy:amy@gmail.com
- query by the policy contained roles. Example:
policy:roles/compute.admin
- query by the policy contained roles’ included permissions. Example:
policy.role.permissions:compute.instances.create
- query by the policy contained members. Example:
explanation: Option<Explanation>
Explanation about the IAM policy search result. It contains additional information to explain why the search result matches the query.
Trait Implementations§
source§impl Clone for IamPolicySearchResult
impl Clone for IamPolicySearchResult
source§fn clone(&self) -> IamPolicySearchResult
fn clone(&self) -> IamPolicySearchResult
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for IamPolicySearchResult
impl Debug for IamPolicySearchResult
source§impl Default for IamPolicySearchResult
impl Default for IamPolicySearchResult
source§impl Message for IamPolicySearchResult
impl Message for IamPolicySearchResult
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 IamPolicySearchResult
impl PartialEq for IamPolicySearchResult
source§fn eq(&self, other: &IamPolicySearchResult) -> bool
fn eq(&self, other: &IamPolicySearchResult) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for IamPolicySearchResult
Auto Trait Implementations§
impl !Freeze for IamPolicySearchResult
impl RefUnwindSafe for IamPolicySearchResult
impl Send for IamPolicySearchResult
impl Sync for IamPolicySearchResult
impl Unpin for IamPolicySearchResult
impl UnwindSafe for IamPolicySearchResult
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