blob: bb758b3db390e66d42dd720949ede659ae83fa98 [file] [log] [blame]
Bu Sun Kim65020912020-05-20 12:08:20 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="cloudasset_v1p1beta1.html">Cloud Asset API</a> . <a href="cloudasset_v1p1beta1.iamPolicies.html">iamPolicies</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -070078 <code><a href="#searchAll">searchAll(scope, query=None, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
Bu Sun Kim65020912020-05-20 12:08:20 -070079<p class="firstline">Searches all the IAM policies under a given accessible CRM scope</p>
80<p class="toc_element">
81 <code><a href="#searchAll_next">searchAll_next(previous_request, previous_response)</a></code></p>
82<p class="firstline">Retrieves the next page of results.</p>
83<h3>Method Details</h3>
84<div class="method">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -070085 <code class="details" id="searchAll">searchAll(scope, query=None, pageToken=None, pageSize=None, x__xgafv=None)</code>
Bu Sun Kim65020912020-05-20 12:08:20 -070086 <pre>Searches all the IAM policies under a given accessible CRM scope
87(project/folder/organization). This RPC gives callers
88especially admins the ability to search all the IAM policies under a scope,
89even if they don&#x27;t have .getIamPolicy permission of all the IAM policies.
90Callers should have cloud.assets.SearchAllIamPolicies permission on the
91requested scope, otherwise it will be rejected.
92
93Args:
94 scope: string, Required. The relative name of an asset. The search is limited to the resources
95within the `scope`. The allowed value must be:
96* Organization number (such as &quot;organizations/123&quot;)
97* Folder number(such as &quot;folders/1234&quot;)
98* Project number (such as &quot;projects/12345&quot;)
99* Project id (such as &quot;projects/abc&quot;) (required)
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700100 query: string, Optional. The query statement.
101Examples:
102* &quot;policy:myuser@mydomain.com&quot;
103* &quot;policy:(myuser@mydomain.com viewer)&quot;
Bu Sun Kim65020912020-05-20 12:08:20 -0700104 pageToken: string, Optional. If present, retrieve the next batch of results from the preceding call to
105this method. `page_token` must be the value of `next_page_token` from the
106previous response. The values of all other method parameters must be
107identical to those in the previous call.
108 pageSize: integer, Optional. The page size for search result pagination. Page size is capped at 500 even
109if a larger value is given. If set to zero, server will pick an appropriate
110default. Returned results may be fewer than requested. When this happens,
111there could be more results as long as `next_page_token` is returned.
Bu Sun Kim65020912020-05-20 12:08:20 -0700112 x__xgafv: string, V1 error format.
113 Allowed values
114 1 - v1 error format
115 2 - v2 error format
116
117Returns:
118 An object of the form:
119
120 { # Search all IAM policies response.
121 &quot;results&quot;: [ # A list of IamPolicy that match the search query. Related information such
122 # as the associated resource is returned along with the policy.
123 { # The result for a IAM Policy search.
Bu Sun Kim65020912020-05-20 12:08:20 -0700124 &quot;project&quot;: &quot;A String&quot;, # The project that the associated GCP resource belongs to, in the form of
125 # `projects/{project_number}`. If an IAM policy is set on a resource (like VM
126 # instance, Cloud Storage bucket), the project field will indicate the
127 # project that contains the resource. If an IAM policy is set on a folder or
128 # orgnization, the project field will be empty.
129 &quot;policy&quot;: { # An Identity and Access Management (IAM) policy, which specifies access # The IAM policy directly set on the given resource. Note that the original
130 # IAM policy can contain multiple bindings. This only contains the bindings
131 # that match the given query. For queries that don&#x27;t contain a constrain on
132 # policies (e.g. an empty query), this contains all the bindings.
133 # controls for Google Cloud resources.
134 #
135 #
136 # A `Policy` is a collection of `bindings`. A `binding` binds one or more
137 # `members` to a single `role`. Members can be user accounts, service accounts,
138 # Google groups, and domains (such as G Suite). A `role` is a named list of
139 # permissions; each `role` can be an IAM predefined role or a user-created
140 # custom role.
141 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700142 # For some types of Google Cloud resources, a `binding` can also specify a
143 # `condition`, which is a logical expression that allows access to a resource
144 # only if the expression evaluates to `true`. A condition can add constraints
145 # based on attributes of the request, the resource, or both. To learn which
146 # resources support conditions in their IAM policies, see the
147 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Bu Sun Kim65020912020-05-20 12:08:20 -0700148 #
149 # **JSON example:**
150 #
151 # {
152 # &quot;bindings&quot;: [
153 # {
154 # &quot;role&quot;: &quot;roles/resourcemanager.organizationAdmin&quot;,
155 # &quot;members&quot;: [
156 # &quot;user:mike@example.com&quot;,
157 # &quot;group:admins@example.com&quot;,
158 # &quot;domain:google.com&quot;,
159 # &quot;serviceAccount:my-project-id@appspot.gserviceaccount.com&quot;
160 # ]
161 # },
162 # {
163 # &quot;role&quot;: &quot;roles/resourcemanager.organizationViewer&quot;,
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700164 # &quot;members&quot;: [
165 # &quot;user:eve@example.com&quot;
166 # ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700167 # &quot;condition&quot;: {
168 # &quot;title&quot;: &quot;expirable access&quot;,
169 # &quot;description&quot;: &quot;Does not grant access after Sep 2020&quot;,
170 # &quot;expression&quot;: &quot;request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)&quot;,
171 # }
172 # }
173 # ],
174 # &quot;etag&quot;: &quot;BwWWja0YfJA=&quot;,
175 # &quot;version&quot;: 3
176 # }
177 #
178 # **YAML example:**
179 #
180 # bindings:
181 # - members:
182 # - user:mike@example.com
183 # - group:admins@example.com
184 # - domain:google.com
185 # - serviceAccount:my-project-id@appspot.gserviceaccount.com
186 # role: roles/resourcemanager.organizationAdmin
187 # - members:
188 # - user:eve@example.com
189 # role: roles/resourcemanager.organizationViewer
190 # condition:
191 # title: expirable access
192 # description: Does not grant access after Sep 2020
193 # expression: request.time &lt; timestamp(&#x27;2020-10-01T00:00:00.000Z&#x27;)
194 # - etag: BwWWja0YfJA=
195 # - version: 3
196 #
197 # For a description of IAM and its features, see the
198 # [IAM documentation](https://cloud.google.com/iam/docs/).
199 &quot;etag&quot;: &quot;A String&quot;, # `etag` is used for optimistic concurrency control as a way to help
200 # prevent simultaneous updates of a policy from overwriting each other.
201 # It is strongly suggested that systems make use of the `etag` in the
202 # read-modify-write cycle to perform policy updates in order to avoid race
203 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
204 # systems are expected to put that etag in the request to `setIamPolicy` to
205 # ensure that their change will be applied to the same version of the policy.
206 #
207 # **Important:** If you use IAM Conditions, you must include the `etag` field
208 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
209 # you to overwrite a version `3` policy with a version `1` policy, and all of
210 # the conditions in the version `3` policy are lost.
211 &quot;version&quot;: 42, # Specifies the format of the policy.
212 #
213 # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
214 # are rejected.
215 #
216 # Any operation that affects conditional role bindings must specify version
217 # `3`. This requirement applies to the following operations:
218 #
219 # * Getting a policy that includes a conditional role binding
220 # * Adding a conditional role binding to a policy
221 # * Changing a conditional role binding in a policy
222 # * Removing any role binding, with or without a condition, from a policy
223 # that includes conditions
224 #
225 # **Important:** If you use IAM Conditions, you must include the `etag` field
226 # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
227 # you to overwrite a version `3` policy with a version `1` policy, and all of
228 # the conditions in the version `3` policy are lost.
229 #
230 # If a policy does not include any conditions, operations on that policy may
231 # specify any valid version or leave the field unset.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700232 #
233 # To learn which resources support conditions in their IAM policies, see the
234 # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Bu Sun Kim65020912020-05-20 12:08:20 -0700235 &quot;auditConfigs&quot;: [ # Specifies cloud audit logging configuration for this policy.
236 { # Specifies the audit configuration for a service.
237 # The configuration determines which permission types are logged, and what
238 # identities, if any, are exempted from logging.
239 # An AuditConfig must have one or more AuditLogConfigs.
240 #
241 # If there are AuditConfigs for both `allServices` and a specific service,
242 # the union of the two AuditConfigs is used for that service: the log_types
243 # specified in each AuditConfig are enabled, and the exempted_members in each
244 # AuditLogConfig are exempted.
245 #
246 # Example Policy with multiple AuditConfigs:
247 #
248 # {
249 # &quot;audit_configs&quot;: [
250 # {
251 # &quot;service&quot;: &quot;allServices&quot;
252 # &quot;audit_log_configs&quot;: [
253 # {
254 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
255 # &quot;exempted_members&quot;: [
256 # &quot;user:jose@example.com&quot;
257 # ]
258 # },
259 # {
260 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
261 # },
262 # {
263 # &quot;log_type&quot;: &quot;ADMIN_READ&quot;,
264 # }
265 # ]
266 # },
267 # {
268 # &quot;service&quot;: &quot;sampleservice.googleapis.com&quot;
269 # &quot;audit_log_configs&quot;: [
270 # {
271 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
272 # },
273 # {
274 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
275 # &quot;exempted_members&quot;: [
276 # &quot;user:aliya@example.com&quot;
277 # ]
278 # }
279 # ]
280 # }
281 # ]
282 # }
283 #
284 # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
285 # logging. It also exempts jose@example.com from DATA_READ logging, and
286 # aliya@example.com from DATA_WRITE logging.
287 &quot;service&quot;: &quot;A String&quot;, # Specifies a service that will be enabled for audit logging.
288 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
289 # `allServices` is a special value that covers all services.
290 &quot;auditLogConfigs&quot;: [ # The configuration for logging of each type of permission.
291 { # Provides the configuration for logging a type of permissions.
292 # Example:
293 #
294 # {
295 # &quot;audit_log_configs&quot;: [
296 # {
297 # &quot;log_type&quot;: &quot;DATA_READ&quot;,
298 # &quot;exempted_members&quot;: [
299 # &quot;user:jose@example.com&quot;
300 # ]
301 # },
302 # {
303 # &quot;log_type&quot;: &quot;DATA_WRITE&quot;,
304 # }
305 # ]
306 # }
307 #
308 # This enables &#x27;DATA_READ&#x27; and &#x27;DATA_WRITE&#x27; logging, while exempting
309 # jose@example.com from DATA_READ logging.
310 &quot;exemptedMembers&quot;: [ # Specifies the identities that do not cause logging for this type of
311 # permission.
312 # Follows the same format of Binding.members.
313 &quot;A String&quot;,
314 ],
315 &quot;logType&quot;: &quot;A String&quot;, # The log type that this config enables.
316 },
317 ],
318 },
319 ],
320 &quot;bindings&quot;: [ # Associates a list of `members` to a `role`. Optionally, may specify a
321 # `condition` that determines how and when the `bindings` are applied. Each
322 # of the `bindings` must contain at least one member.
323 { # Associates `members` with a `role`.
324 &quot;condition&quot;: { # Represents a textual expression in the Common Expression Language (CEL) # The condition that is associated with this binding.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700325 #
326 # If the condition evaluates to `true`, then this binding applies to the
327 # current request.
328 #
329 # If the condition evaluates to `false`, then this binding does not apply to
330 # the current request. However, a different role binding might grant the same
331 # role to one or more of the members in this binding.
332 #
333 # To learn which resources support conditions in their IAM policies, see the
334 # [IAM
335 # documentation](https://cloud.google.com/iam/help/conditions/resource-policies).
Bu Sun Kim65020912020-05-20 12:08:20 -0700336 # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
337 # are documented at https://github.com/google/cel-spec.
338 #
339 # Example (Comparison):
340 #
341 # title: &quot;Summary size limit&quot;
342 # description: &quot;Determines if a summary is less than 100 chars&quot;
343 # expression: &quot;document.summary.size() &lt; 100&quot;
344 #
345 # Example (Equality):
346 #
347 # title: &quot;Requestor is owner&quot;
348 # description: &quot;Determines if requestor is the document owner&quot;
349 # expression: &quot;document.owner == request.auth.claims.email&quot;
350 #
351 # Example (Logic):
352 #
353 # title: &quot;Public documents&quot;
354 # description: &quot;Determine whether the document should be publicly visible&quot;
355 # expression: &quot;document.type != &#x27;private&#x27; &amp;&amp; document.type != &#x27;internal&#x27;&quot;
356 #
357 # Example (Data Manipulation):
358 #
359 # title: &quot;Notification string&quot;
360 # description: &quot;Create a notification string with a timestamp.&quot;
361 # expression: &quot;&#x27;New message received at &#x27; + string(document.create_time)&quot;
362 #
363 # The exact variables and functions that may be referenced within an expression
364 # are determined by the service that evaluates it. See the service
365 # documentation for additional information.
366 &quot;title&quot;: &quot;A String&quot;, # Optional. Title for the expression, i.e. a short string describing
367 # its purpose. This can be used e.g. in UIs which allow to enter the
368 # expression.
369 &quot;location&quot;: &quot;A String&quot;, # Optional. String indicating the location of the expression for error
370 # reporting, e.g. a file name and a position in the file.
371 &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the expression. This is a longer text which
372 # describes the expression, e.g. when hovered over it in a UI.
373 &quot;expression&quot;: &quot;A String&quot;, # Textual representation of an expression in Common Expression Language
374 # syntax.
375 },
376 &quot;members&quot;: [ # Specifies the identities requesting access for a Cloud Platform resource.
377 # `members` can have the following values:
378 #
379 # * `allUsers`: A special identifier that represents anyone who is
380 # on the internet; with or without a Google account.
381 #
382 # * `allAuthenticatedUsers`: A special identifier that represents anyone
383 # who is authenticated with a Google account or a service account.
384 #
385 # * `user:{emailid}`: An email address that represents a specific Google
386 # account. For example, `alice@example.com` .
387 #
388 #
389 # * `serviceAccount:{emailid}`: An email address that represents a service
390 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
391 #
392 # * `group:{emailid}`: An email address that represents a Google group.
393 # For example, `admins@example.com`.
394 #
395 # * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique
396 # identifier) representing a user that has been recently deleted. For
397 # example, `alice@example.com?uid=123456789012345678901`. If the user is
398 # recovered, this value reverts to `user:{emailid}` and the recovered user
399 # retains the role in the binding.
400 #
401 # * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus
402 # unique identifier) representing a service account that has been recently
403 # deleted. For example,
404 # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
405 # If the service account is undeleted, this value reverts to
406 # `serviceAccount:{emailid}` and the undeleted service account retains the
407 # role in the binding.
408 #
409 # * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique
410 # identifier) representing a Google group that has been recently
411 # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
412 # the group is recovered, this value reverts to `group:{emailid}` and the
413 # recovered group retains the role in the binding.
414 #
415 #
416 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
417 # users of that domain. For example, `google.com` or `example.com`.
418 #
419 &quot;A String&quot;,
420 ],
421 &quot;role&quot;: &quot;A String&quot;, # Role that is assigned to `members`.
422 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
423 },
424 ],
425 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700426 &quot;resource&quot;: &quot;A String&quot;, # The [full resource
427 # name](https://cloud.google.com/apis/design/resource_names#full_resource_name)
428 # of the resource associated with this IAM policy.
429 &quot;explanation&quot;: { # Explanation about the IAM policy search result. # Explanation about the IAM policy search result. It contains additional
430 # information to explain why the search result matches the query.
431 &quot;matchedPermissions&quot;: { # The map from roles to their included permission matching the permission
432 # query (e.g. containing `policy.role.permissions:`). A sample role string:
433 # &quot;roles/compute.instanceAdmin&quot;. The roles can also be found in the
434 # returned `policy` bindings. Note that the map is populated only if
435 # requesting with a permission query.
436 &quot;a_key&quot;: { # IAM permissions
437 &quot;permissions&quot;: [ # A list of permissions. A sample permission string: &quot;compute.disk.get&quot;.
438 &quot;A String&quot;,
439 ],
440 },
441 },
442 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700443 },
444 ],
445 &quot;nextPageToken&quot;: &quot;A String&quot;, # Set if there are more results than those appearing in this response; to get
446 # the next set of results, call this method again, using this value as the
447 # `page_token`.
448 }</pre>
449</div>
450
451<div class="method">
452 <code class="details" id="searchAll_next">searchAll_next(previous_request, previous_response)</code>
453 <pre>Retrieves the next page of results.
454
455Args:
456 previous_request: The request for the previous page. (required)
457 previous_response: The response from the request for the previous page. (required)
458
459Returns:
460 A request object that you can call &#x27;execute()&#x27; on to request the next
461 page. Returns None if there are no more items in the collection.
462 </pre>
463</div>
464
465</body></html>