Class V1Resource.SearchAllIamPoliciesRequest
Searches all IAM policies within the specified scope, such as a project, folder, or organization. The caller
must be granted the cloudasset.assets.searchAllIamPolicies permission on the desired scope, otherwise the
request will be rejected.
Inheritance
Inherited Members
Namespace: Google.Apis.CloudAsset.v1
Assembly: Google.Apis.CloudAsset.v1.dll
Syntax
public class V1Resource.SearchAllIamPoliciesRequest : CloudAssetBaseServiceRequest<SearchAllIamPoliciesResponse>, IClientServiceRequest<SearchAllIamPoliciesResponse>, IClientServiceRequest
Constructors
SearchAllIamPoliciesRequest(IClientService, string)
Constructs a new SearchAllIamPolicies request.
Declaration
public SearchAllIamPoliciesRequest(IClientService service, string scope)
Parameters
| Type | Name | Description |
|---|---|---|
| IClientService | service | |
| string | scope |
Properties
AssetTypes
Optional. A list of asset types that the IAM policies are attached to. If empty, it will search the IAM policies that are attached to all the asset types supported by search APIs Regular expressions are also supported. For example: * "compute.googleapis.com.*" snapshots IAM policies attached to asset type starts with "compute.googleapis.com". * ".*Instance" snapshots IAM policies attached to asset type ends with "Instance". * ".Instance." snapshots IAM policies attached to asset type contains "Instance". See RE2 for all supported regular expression syntax. If the regular expression does not match any supported asset type, an INVALID_ARGUMENT error will be returned.
Declaration
[RequestParameter("assetTypes", RequestParameterType.Query)]
public virtual Repeatable<string> AssetTypes { get; set; }
Property Value
| Type | Description |
|---|---|
| Repeatable<string> |
HttpMethod
Gets the HTTP method.
Declaration
public override string HttpMethod { get; }
Property Value
| Type | Description |
|---|---|
| string |
Overrides
MethodName
Gets the method name.
Declaration
public override string MethodName { get; }
Property Value
| Type | Description |
|---|---|
| string |
Overrides
OrderBy
Optional. A comma-separated list of fields specifying the sorting order of the results. The default
order is ascending. Add " DESC" after the field name to indicate descending order. Redundant space
characters are ignored. Example: "assetType DESC, resource". Only singular primitive fields in the
response are sortable: * resource * assetType * project All the other fields such as repeated fields
(e.g., folders) and non-primitive fields (e.g., policy) are not supported.
Declaration
[RequestParameter("orderBy", RequestParameterType.Query)]
public virtual string OrderBy { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
PageSize
Optional. The page size for search result pagination. Page size is capped at 500 even if a larger value
is given. If set to zero or a negative value, server will pick an appropriate default. Returned results
may be fewer than requested. When this happens, there could be more results as long as next_page_token
is returned.
Declaration
[RequestParameter("pageSize", RequestParameterType.Query)]
public virtual int? PageSize { get; set; }
Property Value
| Type | Description |
|---|---|
| int? |
PageToken
Optional. If present, retrieve the next batch of results from the preceding call to this method.
page_token must be the value of next_page_token from the previous response. The values of all other
method parameters must be identical to those in the previous call.
Declaration
[RequestParameter("pageToken", RequestParameterType.Query)]
public virtual string PageToken { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
Query
Optional. The query statement. See how to construct a
query
for more information. If not specified or empty, it will search all the IAM policies within the
specified scope. Note that the query string is compared against each IAM policy binding, including its
principals, roles, and IAM conditions. The returned IAM policies will only contain the bindings that
match your query. To learn more about the IAM policy structure, see the IAM policy
documentation. Examples: *
policy:amy@gmail.com to find IAM policy bindings that specify user "amy@gmail.com". *
policy:roles/compute.admin to find IAM policy bindings that specify the Compute Admin role. *
policy:comp* to find IAM policy bindings that contain "comp" as a prefix of any word in the binding. *
policy.role.permissions:storage.buckets.update to find IAM policy bindings that specify a role
containing "storage.buckets.update" permission. Note that if callers don't have iam.roles.get access
to a role's included permissions, policy bindings that specify this role will be dropped from the search
results. * policy.role.permissions:upd* to find IAM policy bindings that specify a role containing
"upd" as a prefix of any word in the role permission. Note that if callers don't have iam.roles.get
access to a role's included permissions, policy bindings that specify this role will be dropped from the
search results. * resource:organizations/123456 to find IAM policy bindings that are set on
"organizations/123456". * resource=//cloudresourcemanager.googleapis.com/projects/myproject to find
IAM policy bindings that are set on the project named "myproject". * Important to find IAM policy
bindings that contain "Important" as a word in any of the searchable fields (except for the included
permissions). * resource:(instance1 OR instance2) policy:amy to find IAM policy bindings that are set
on resources "instance1" or "instance2" and also specify user "amy". * roles:roles/compute.admin to
find IAM policy bindings that specify the Compute Admin role. * memberTypes:user to find IAM policy
bindings that contain the principal type "user".
Declaration
[RequestParameter("query", RequestParameterType.Query)]
public virtual string Query { get; set; }
Property Value
| Type | Description |
|---|---|
| string |
RestPath
Gets the REST path.
Declaration
public override string RestPath { get; }
Property Value
| Type | Description |
|---|---|
| string |
Overrides
Scope
Required. A scope can be a project, a folder, or an organization. The search is limited to the IAM
policies within the scope. The caller must be granted the
cloudasset.assets.searchAllIamPolicies
permission on the desired scope. The allowed values are: * projects/{PROJECT_ID} (e.g.,
"projects/foo-bar") * projects/{PROJECT_NUMBER} (e.g., "projects/12345678") * folders/{FOLDER_NUMBER}
(e.g., "folders/1234567") * organizations/{ORGANIZATION_NUMBER} (e.g., "organizations/123456")
Declaration
[RequestParameter("scope", RequestParameterType.Path)]
public virtual string Scope { get; }
Property Value
| Type | Description |
|---|---|
| string |
Methods
InitParameters()
Initializes SearchAllIamPolicies parameter list.
Declaration
protected override void InitParameters()