blob: d35dc73d1ee305271be270746db7d857cbac58e8 [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -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="accesscontextmanager_v1.html">Access Context Manager API</a> . <a href="accesscontextmanager_v1.accessPolicies.html">accessPolicies</a> . <a href="accesscontextmanager_v1.accessPolicies.servicePerimeters.html">servicePerimeters</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#commit">commit(parent, body=None, x__xgafv=None)</a></code></p>
79<p class="firstline">Commit the dry-run spec for all the Service Perimeters in an</p>
80<p class="toc_element">
81 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
82<p class="firstline">Create a Service Perimeter. The</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070083<p class="toc_element">
84 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
Dan O'Mearadd494642020-05-01 07:42:23 -070085<p class="firstline">Delete a Service Perimeter by resource</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070086<p class="toc_element">
87 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
Dan O'Mearadd494642020-05-01 07:42:23 -070088<p class="firstline">Get a Service Perimeter by resource</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070089<p class="toc_element">
Bu Sun Kim65020912020-05-20 12:08:20 -070090 <code><a href="#list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070091<p class="firstline">List all Service Perimeters for an</p>
92<p class="toc_element">
93 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
94<p class="firstline">Retrieves the next page of results.</p>
95<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070096 <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
97<p class="firstline">Update a Service Perimeter. The</p>
98<p class="toc_element">
99 <code><a href="#replaceAll">replaceAll(parent, body=None, x__xgafv=None)</a></code></p>
100<p class="firstline">Replace all existing Service Perimeters in an</p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700101<h3>Method Details</h3>
102<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700103 <code class="details" id="commit">commit(parent, body=None, x__xgafv=None)</code>
104 <pre>Commit the dry-run spec for all the Service Perimeters in an
105Access Policy.
106A commit operation on a Service Perimeter involves copying its `spec` field
Bu Sun Kim65020912020-05-20 12:08:20 -0700107to that Service Perimeter&#x27;s `status` field. Only Service Perimeters with
Dan O'Mearadd494642020-05-01 07:42:23 -0700108`use_explicit_dry_run_spec` field set to true are affected by a commit
109operation. The longrunning operation from this RPC will have a successful
110status once the dry-run specs for all the Service Perimeters have been
111committed. If a commit fails, it will cause the longrunning operation to
112return an error response and the entire commit operation will be cancelled.
113When successful, Operation.response field will contain
114CommitServicePerimetersResponse. The `dry_run` and the `spec` fields will
115be cleared after a successful commit operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700116
117Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700118 parent: string, Required. Resource name for the parent Access Policy which owns all
119Service Perimeters in scope for
120the commit operation.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700121
122Format: `accessPolicies/{policy_id}` (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700123 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700124 The object takes the form of:
125
Dan O'Mearadd494642020-05-01 07:42:23 -0700126{ # A request to commit dry-run specs in all Service Perimeters belonging to
127 # an Access Policy.
Bu Sun Kim65020912020-05-20 12:08:20 -0700128 &quot;etag&quot;: &quot;A String&quot;, # Optional. The etag for the version of the Access Policy that this
Dan O'Mearadd494642020-05-01 07:42:23 -0700129 # commit operation is to be performed on. If, at the time of commit, the
130 # etag for the Access Policy stored in Access Context Manager is different
131 # from the specified etag, then the commit operation will not be performed
132 # and the call will fail. This field is not required. If etag is not
133 # provided, the operation will be performed as if a valid etag is provided.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700134 }
135
136 x__xgafv: string, V1 error format.
137 Allowed values
138 1 - v1 error format
139 2 - v2 error format
140
141Returns:
142 An object of the form:
143
144 { # This resource represents a long-running operation that is the result of a
145 # network API call.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700146 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
147 # originally returns it. If you use the default HTTP mapping, the
148 # `name` should be a resource name ending with `operations/{unique_id}`.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700149 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
150 # contains progress information and common metadata such as create time.
151 # Some services might not provide such metadata. Any method that returns a
152 # long-running operation should document the metadata type, if any.
153 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
154 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700155 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700156 # method returns no data on success, such as `Delete`, the response is
157 # `google.protobuf.Empty`. If the original method is standard
158 # `Get`/`Create`/`Update`, the response should be the resource. For other
159 # methods, the response should have the type `XxxResponse`, where `Xxx`
160 # is the original method name. For example, if the original method name
161 # is `TakeSnapshot()`, the inferred response type is
162 # `TakeSnapshotResponse`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700163 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700164 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700165 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
166 # If `true`, the operation is completed, and either `error` or `response` is
167 # available.
168 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
169 # different programming environments, including REST APIs and RPC APIs. It is
170 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
171 # three pieces of data: error code, error message, and error details.
172 #
173 # You can find out more about this error model and how to work with it in the
174 # [API Design Guide](https://cloud.google.com/apis/design/errors).
175 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
176 # message types for APIs to use.
177 {
178 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
179 },
180 ],
181 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
182 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
183 # user-facing error message should be localized and sent in the
184 # google.rpc.Status.details field, or localized by the client.
185 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700186 }</pre>
187</div>
188
189<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700190 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
191 <pre>Create a Service Perimeter. The
192longrunning operation from this RPC will have a successful status once the
193Service Perimeter has
194propagated to long-lasting storage. Service Perimeters containing
195errors will result in an error response for the first error encountered.
196
197Args:
198 parent: string, Required. Resource name for the access policy which owns this Service
199Perimeter.
200
201Format: `accessPolicies/{policy_id}` (required)
202 body: object, The request body.
203 The object takes the form of:
204
205{ # `ServicePerimeter` describes a set of Google Cloud resources which can freely
206 # import and export data amongst themselves, but not export outside of the
207 # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
208 # has a target outside of the `ServicePerimeter`, the request will be blocked.
209 # Otherwise the request is allowed. There are two types of Service Perimeter -
210 # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
211 # Google Cloud project can only belong to a single regular Service Perimeter.
212 # Service Perimeter Bridges can contain only Google Cloud projects as members,
213 # a single Google Cloud project may belong to multiple Service Perimeter
214 # Bridges.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700215 &quot;description&quot;: &quot;A String&quot;, # Description of the `ServicePerimeter` and its use. Does not affect
216 # behavior.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700217 &quot;perimeterType&quot;: &quot;A String&quot;, # Perimeter type indicator. A single project is
218 # allowed to be a member of single regular perimeter, but multiple service
219 # perimeter bridges. A project cannot be a included in a perimeter bridge
220 # without being included in regular perimeter. For perimeter bridges,
221 # the restricted service list as well as access level lists must be
222 # empty.
Bu Sun Kim65020912020-05-20 12:08:20 -0700223 &quot;useExplicitDryRunSpec&quot;: True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
224 # exists for all Service Perimeters, and that spec is identical to the
225 # status for those Service Perimeters. When this flag is set, it inhibits the
226 # generation of the implicit spec, thereby allowing the user to explicitly
227 # provide a configuration (&quot;spec&quot;) to use in a dry-run version of the Service
228 # Perimeter. This allows the user to test changes to the enforced config
229 # (&quot;status&quot;) without actually enforcing them. This testing is done through
230 # analyzing the differences between currently enforced and suggested
231 # restrictions. use_explicit_dry_run_spec must bet set to True if any of the
232 # fields in the spec are set to non-default values.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700233 &quot;title&quot;: &quot;A String&quot;, # Human readable title. Must be unique within the Policy.
234 &quot;name&quot;: &quot;A String&quot;, # Required. Resource name for the ServicePerimeter. The `short_name`
235 # component must begin with a letter and only include alphanumeric and &#x27;_&#x27;.
236 # Format: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`
Bu Sun Kim65020912020-05-20 12:08:20 -0700237 &quot;spec&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Proposed (or dry run) ServicePerimeter configuration. This configuration
238 # allows to specify and test ServicePerimeter configuration without enforcing
239 # actual access restrictions. Only allowed to be set when the
240 # &quot;use_explicit_dry_run_spec&quot; flag is set.
241 # describe specific Service Perimeter configuration.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700242 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
243 # Currently only projects are allowed. Format: `projects/{project_number}`
244 &quot;A String&quot;,
245 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700246 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
247 # Perimeter.
248 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
249 # APIs specified in &#x27;allowed_services&#x27;.
250 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
251 # unless &#x27;enable_restriction&#x27; is True.
252 &quot;A String&quot;,
253 ],
254 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700255 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
256 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
257 # must be in the same policy as this `ServicePerimeter`. Referencing a
258 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
259 # listed, resources within the perimeter can only be accessed via Google
260 # Cloud calls with request origins within the perimeter. Example:
261 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
262 # For Service Perimeter Bridge, must be empty.
263 &quot;A String&quot;,
264 ],
265 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
266 # restrictions. For example, if `storage.googleapis.com` is specified, access
267 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
268 # access restrictions.
269 &quot;A String&quot;,
270 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700271 },
272 &quot;status&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Current ServicePerimeter configuration. Specifies sets of resources,
273 # restricted services and access levels that determine perimeter
274 # content and boundaries.
275 # describe specific Service Perimeter configuration.
276 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
277 # Currently only projects are allowed. Format: `projects/{project_number}`
278 &quot;A String&quot;,
279 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700280 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
281 # Perimeter.
282 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
283 # APIs specified in &#x27;allowed_services&#x27;.
284 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
285 # unless &#x27;enable_restriction&#x27; is True.
286 &quot;A String&quot;,
287 ],
288 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700289 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
290 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
291 # must be in the same policy as this `ServicePerimeter`. Referencing a
292 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
293 # listed, resources within the perimeter can only be accessed via Google
294 # Cloud calls with request origins within the perimeter. Example:
295 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
296 # For Service Perimeter Bridge, must be empty.
297 &quot;A String&quot;,
298 ],
299 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
300 # restrictions. For example, if `storage.googleapis.com` is specified, access
301 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
302 # access restrictions.
303 &quot;A String&quot;,
304 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700305 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700306}
307
308 x__xgafv: string, V1 error format.
309 Allowed values
310 1 - v1 error format
311 2 - v2 error format
312
313Returns:
314 An object of the form:
315
316 { # This resource represents a long-running operation that is the result of a
317 # network API call.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700318 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
319 # originally returns it. If you use the default HTTP mapping, the
320 # `name` should be a resource name ending with `operations/{unique_id}`.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700321 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
322 # contains progress information and common metadata such as create time.
323 # Some services might not provide such metadata. Any method that returns a
324 # long-running operation should document the metadata type, if any.
325 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
326 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700327 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
Dan O'Mearadd494642020-05-01 07:42:23 -0700328 # method returns no data on success, such as `Delete`, the response is
329 # `google.protobuf.Empty`. If the original method is standard
330 # `Get`/`Create`/`Update`, the response should be the resource. For other
331 # methods, the response should have the type `XxxResponse`, where `Xxx`
332 # is the original method name. For example, if the original method name
333 # is `TakeSnapshot()`, the inferred response type is
334 # `TakeSnapshotResponse`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700335 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Dan O'Mearadd494642020-05-01 07:42:23 -0700336 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700337 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
338 # If `true`, the operation is completed, and either `error` or `response` is
339 # available.
340 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
341 # different programming environments, including REST APIs and RPC APIs. It is
342 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
343 # three pieces of data: error code, error message, and error details.
344 #
345 # You can find out more about this error model and how to work with it in the
346 # [API Design Guide](https://cloud.google.com/apis/design/errors).
347 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
348 # message types for APIs to use.
349 {
350 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
351 },
352 ],
353 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
354 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
355 # user-facing error message should be localized and sent in the
356 # google.rpc.Status.details field, or localized by the client.
357 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700358 }</pre>
359</div>
360
361<div class="method">
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700362 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
Dan O'Mearadd494642020-05-01 07:42:23 -0700363 <pre>Delete a Service Perimeter by resource
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700364name. The longrunning operation from this RPC will have a successful status
365once the Service Perimeter has been
366removed from long-lasting storage.
367
368Args:
369 name: string, Required. Resource name for the Service Perimeter.
370
371Format:
372`accessPolicies/{policy_id}/servicePerimeters/{service_perimeter_id}` (required)
373 x__xgafv: string, V1 error format.
374 Allowed values
375 1 - v1 error format
376 2 - v2 error format
377
378Returns:
379 An object of the form:
380
381 { # This resource represents a long-running operation that is the result of a
382 # network API call.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700383 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
384 # originally returns it. If you use the default HTTP mapping, the
385 # `name` should be a resource name ending with `operations/{unique_id}`.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700386 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
387 # contains progress information and common metadata such as create time.
388 # Some services might not provide such metadata. Any method that returns a
389 # long-running operation should document the metadata type, if any.
390 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
391 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700392 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700393 # method returns no data on success, such as `Delete`, the response is
394 # `google.protobuf.Empty`. If the original method is standard
395 # `Get`/`Create`/`Update`, the response should be the resource. For other
396 # methods, the response should have the type `XxxResponse`, where `Xxx`
397 # is the original method name. For example, if the original method name
398 # is `TakeSnapshot()`, the inferred response type is
399 # `TakeSnapshotResponse`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700400 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700401 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700402 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
403 # If `true`, the operation is completed, and either `error` or `response` is
404 # available.
405 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
406 # different programming environments, including REST APIs and RPC APIs. It is
407 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
408 # three pieces of data: error code, error message, and error details.
409 #
410 # You can find out more about this error model and how to work with it in the
411 # [API Design Guide](https://cloud.google.com/apis/design/errors).
412 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
413 # message types for APIs to use.
414 {
415 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
416 },
417 ],
418 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
419 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
420 # user-facing error message should be localized and sent in the
421 # google.rpc.Status.details field, or localized by the client.
422 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700423 }</pre>
424</div>
425
426<div class="method">
427 <code class="details" id="get">get(name, x__xgafv=None)</code>
Dan O'Mearadd494642020-05-01 07:42:23 -0700428 <pre>Get a Service Perimeter by resource
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700429name.
430
431Args:
432 name: string, Required. Resource name for the Service Perimeter.
433
434Format:
435`accessPolicies/{policy_id}/servicePerimeters/{service_perimeters_id}` (required)
436 x__xgafv: string, V1 error format.
437 Allowed values
438 1 - v1 error format
439 2 - v2 error format
440
441Returns:
442 An object of the form:
443
Dan O'Mearadd494642020-05-01 07:42:23 -0700444 { # `ServicePerimeter` describes a set of Google Cloud resources which can freely
445 # import and export data amongst themselves, but not export outside of the
446 # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
447 # has a target outside of the `ServicePerimeter`, the request will be blocked.
448 # Otherwise the request is allowed. There are two types of Service Perimeter -
449 # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
450 # Google Cloud project can only belong to a single regular Service Perimeter.
451 # Service Perimeter Bridges can contain only Google Cloud projects as members,
452 # a single Google Cloud project may belong to multiple Service Perimeter
453 # Bridges.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700454 &quot;description&quot;: &quot;A String&quot;, # Description of the `ServicePerimeter` and its use. Does not affect
455 # behavior.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700456 &quot;perimeterType&quot;: &quot;A String&quot;, # Perimeter type indicator. A single project is
457 # allowed to be a member of single regular perimeter, but multiple service
458 # perimeter bridges. A project cannot be a included in a perimeter bridge
459 # without being included in regular perimeter. For perimeter bridges,
460 # the restricted service list as well as access level lists must be
461 # empty.
Bu Sun Kim65020912020-05-20 12:08:20 -0700462 &quot;useExplicitDryRunSpec&quot;: True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
463 # exists for all Service Perimeters, and that spec is identical to the
464 # status for those Service Perimeters. When this flag is set, it inhibits the
465 # generation of the implicit spec, thereby allowing the user to explicitly
466 # provide a configuration (&quot;spec&quot;) to use in a dry-run version of the Service
467 # Perimeter. This allows the user to test changes to the enforced config
468 # (&quot;status&quot;) without actually enforcing them. This testing is done through
469 # analyzing the differences between currently enforced and suggested
470 # restrictions. use_explicit_dry_run_spec must bet set to True if any of the
471 # fields in the spec are set to non-default values.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700472 &quot;title&quot;: &quot;A String&quot;, # Human readable title. Must be unique within the Policy.
473 &quot;name&quot;: &quot;A String&quot;, # Required. Resource name for the ServicePerimeter. The `short_name`
474 # component must begin with a letter and only include alphanumeric and &#x27;_&#x27;.
475 # Format: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`
Bu Sun Kim65020912020-05-20 12:08:20 -0700476 &quot;spec&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Proposed (or dry run) ServicePerimeter configuration. This configuration
477 # allows to specify and test ServicePerimeter configuration without enforcing
478 # actual access restrictions. Only allowed to be set when the
479 # &quot;use_explicit_dry_run_spec&quot; flag is set.
480 # describe specific Service Perimeter configuration.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700481 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
482 # Currently only projects are allowed. Format: `projects/{project_number}`
483 &quot;A String&quot;,
484 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700485 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
486 # Perimeter.
487 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
488 # APIs specified in &#x27;allowed_services&#x27;.
489 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
490 # unless &#x27;enable_restriction&#x27; is True.
491 &quot;A String&quot;,
492 ],
493 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700494 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
495 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
496 # must be in the same policy as this `ServicePerimeter`. Referencing a
497 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
498 # listed, resources within the perimeter can only be accessed via Google
499 # Cloud calls with request origins within the perimeter. Example:
500 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
501 # For Service Perimeter Bridge, must be empty.
502 &quot;A String&quot;,
503 ],
504 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
505 # restrictions. For example, if `storage.googleapis.com` is specified, access
506 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
507 # access restrictions.
508 &quot;A String&quot;,
509 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700510 },
511 &quot;status&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Current ServicePerimeter configuration. Specifies sets of resources,
512 # restricted services and access levels that determine perimeter
513 # content and boundaries.
514 # describe specific Service Perimeter configuration.
515 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
516 # Currently only projects are allowed. Format: `projects/{project_number}`
517 &quot;A String&quot;,
518 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700519 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
520 # Perimeter.
521 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
522 # APIs specified in &#x27;allowed_services&#x27;.
523 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
524 # unless &#x27;enable_restriction&#x27; is True.
525 &quot;A String&quot;,
526 ],
527 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700528 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
529 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
530 # must be in the same policy as this `ServicePerimeter`. Referencing a
531 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
532 # listed, resources within the perimeter can only be accessed via Google
533 # Cloud calls with request origins within the perimeter. Example:
534 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
535 # For Service Perimeter Bridge, must be empty.
536 &quot;A String&quot;,
537 ],
538 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
539 # restrictions. For example, if `storage.googleapis.com` is specified, access
540 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
541 # access restrictions.
542 &quot;A String&quot;,
543 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700544 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700545 }</pre>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700546</div>
547
548<div class="method">
Bu Sun Kim65020912020-05-20 12:08:20 -0700549 <code class="details" id="list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700550 <pre>List all Service Perimeters for an
551access policy.
552
553Args:
554 parent: string, Required. Resource name for the access policy to list Service Perimeters from.
555
556Format:
557`accessPolicies/{policy_id}` (required)
558 pageToken: string, Next page token for the next batch of Service Perimeter instances.
559Defaults to the first page of results.
Bu Sun Kim65020912020-05-20 12:08:20 -0700560 pageSize: integer, Number of Service Perimeters to include
561in the list. Default 100.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700562 x__xgafv: string, V1 error format.
563 Allowed values
564 1 - v1 error format
565 2 - v2 error format
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700566
567Returns:
568 An object of the form:
569
570 { # A response to `ListServicePerimetersRequest`.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700571 &quot;nextPageToken&quot;: &quot;A String&quot;, # The pagination token to retrieve the next page of results. If the value is
572 # empty, no further results remain.
Bu Sun Kim65020912020-05-20 12:08:20 -0700573 &quot;servicePerimeters&quot;: [ # List of the Service Perimeter instances.
Dan O'Mearadd494642020-05-01 07:42:23 -0700574 { # `ServicePerimeter` describes a set of Google Cloud resources which can freely
575 # import and export data amongst themselves, but not export outside of the
576 # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
577 # has a target outside of the `ServicePerimeter`, the request will be blocked.
578 # Otherwise the request is allowed. There are two types of Service Perimeter -
579 # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
580 # Google Cloud project can only belong to a single regular Service Perimeter.
581 # Service Perimeter Bridges can contain only Google Cloud projects as members,
582 # a single Google Cloud project may belong to multiple Service Perimeter
583 # Bridges.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700584 &quot;description&quot;: &quot;A String&quot;, # Description of the `ServicePerimeter` and its use. Does not affect
585 # behavior.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700586 &quot;perimeterType&quot;: &quot;A String&quot;, # Perimeter type indicator. A single project is
587 # allowed to be a member of single regular perimeter, but multiple service
588 # perimeter bridges. A project cannot be a included in a perimeter bridge
589 # without being included in regular perimeter. For perimeter bridges,
590 # the restricted service list as well as access level lists must be
591 # empty.
Bu Sun Kim65020912020-05-20 12:08:20 -0700592 &quot;useExplicitDryRunSpec&quot;: True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
593 # exists for all Service Perimeters, and that spec is identical to the
594 # status for those Service Perimeters. When this flag is set, it inhibits the
595 # generation of the implicit spec, thereby allowing the user to explicitly
596 # provide a configuration (&quot;spec&quot;) to use in a dry-run version of the Service
597 # Perimeter. This allows the user to test changes to the enforced config
598 # (&quot;status&quot;) without actually enforcing them. This testing is done through
599 # analyzing the differences between currently enforced and suggested
600 # restrictions. use_explicit_dry_run_spec must bet set to True if any of the
601 # fields in the spec are set to non-default values.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700602 &quot;title&quot;: &quot;A String&quot;, # Human readable title. Must be unique within the Policy.
603 &quot;name&quot;: &quot;A String&quot;, # Required. Resource name for the ServicePerimeter. The `short_name`
604 # component must begin with a letter and only include alphanumeric and &#x27;_&#x27;.
605 # Format: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`
Bu Sun Kim65020912020-05-20 12:08:20 -0700606 &quot;spec&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Proposed (or dry run) ServicePerimeter configuration. This configuration
607 # allows to specify and test ServicePerimeter configuration without enforcing
608 # actual access restrictions. Only allowed to be set when the
609 # &quot;use_explicit_dry_run_spec&quot; flag is set.
610 # describe specific Service Perimeter configuration.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700611 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
612 # Currently only projects are allowed. Format: `projects/{project_number}`
613 &quot;A String&quot;,
614 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700615 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
616 # Perimeter.
617 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
618 # APIs specified in &#x27;allowed_services&#x27;.
619 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
620 # unless &#x27;enable_restriction&#x27; is True.
621 &quot;A String&quot;,
622 ],
623 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700624 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
625 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
626 # must be in the same policy as this `ServicePerimeter`. Referencing a
627 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
628 # listed, resources within the perimeter can only be accessed via Google
629 # Cloud calls with request origins within the perimeter. Example:
630 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
631 # For Service Perimeter Bridge, must be empty.
632 &quot;A String&quot;,
633 ],
634 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
635 # restrictions. For example, if `storage.googleapis.com` is specified, access
636 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
637 # access restrictions.
638 &quot;A String&quot;,
639 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700640 },
641 &quot;status&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Current ServicePerimeter configuration. Specifies sets of resources,
642 # restricted services and access levels that determine perimeter
643 # content and boundaries.
644 # describe specific Service Perimeter configuration.
645 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
646 # Currently only projects are allowed. Format: `projects/{project_number}`
647 &quot;A String&quot;,
648 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700649 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
650 # Perimeter.
651 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
652 # APIs specified in &#x27;allowed_services&#x27;.
653 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
654 # unless &#x27;enable_restriction&#x27; is True.
655 &quot;A String&quot;,
656 ],
657 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700658 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
659 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
660 # must be in the same policy as this `ServicePerimeter`. Referencing a
661 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
662 # listed, resources within the perimeter can only be accessed via Google
663 # Cloud calls with request origins within the perimeter. Example:
664 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
665 # For Service Perimeter Bridge, must be empty.
666 &quot;A String&quot;,
667 ],
668 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
669 # restrictions. For example, if `storage.googleapis.com` is specified, access
670 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
671 # access restrictions.
672 &quot;A String&quot;,
673 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700674 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700675 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700676 ],
677 }</pre>
678</div>
679
680<div class="method">
681 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
682 <pre>Retrieves the next page of results.
683
684Args:
685 previous_request: The request for the previous page. (required)
686 previous_response: The response from the request for the previous page. (required)
687
688Returns:
Bu Sun Kim65020912020-05-20 12:08:20 -0700689 A request object that you can call &#x27;execute()&#x27; on to request the next
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700690 page. Returns None if there are no more items in the collection.
691 </pre>
692</div>
693
694<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700695 <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
696 <pre>Update a Service Perimeter. The
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700697longrunning operation from this RPC will have a successful status once the
698changes to the Service Perimeter have
699propagated to long-lasting storage. Service Perimeter containing
700errors will result in an error response for the first error encountered.
701
702Args:
703 name: string, Required. Resource name for the ServicePerimeter. The `short_name`
Bu Sun Kim65020912020-05-20 12:08:20 -0700704component must begin with a letter and only include alphanumeric and &#x27;_&#x27;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700705Format: `accessPolicies/{policy_id}/servicePerimeters/{short_name}` (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700706 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700707 The object takes the form of:
708
Dan O'Mearadd494642020-05-01 07:42:23 -0700709{ # `ServicePerimeter` describes a set of Google Cloud resources which can freely
710 # import and export data amongst themselves, but not export outside of the
711 # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
712 # has a target outside of the `ServicePerimeter`, the request will be blocked.
713 # Otherwise the request is allowed. There are two types of Service Perimeter -
714 # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
715 # Google Cloud project can only belong to a single regular Service Perimeter.
716 # Service Perimeter Bridges can contain only Google Cloud projects as members,
717 # a single Google Cloud project may belong to multiple Service Perimeter
718 # Bridges.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700719 &quot;description&quot;: &quot;A String&quot;, # Description of the `ServicePerimeter` and its use. Does not affect
720 # behavior.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700721 &quot;perimeterType&quot;: &quot;A String&quot;, # Perimeter type indicator. A single project is
722 # allowed to be a member of single regular perimeter, but multiple service
723 # perimeter bridges. A project cannot be a included in a perimeter bridge
724 # without being included in regular perimeter. For perimeter bridges,
725 # the restricted service list as well as access level lists must be
726 # empty.
Bu Sun Kim65020912020-05-20 12:08:20 -0700727 &quot;useExplicitDryRunSpec&quot;: True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
728 # exists for all Service Perimeters, and that spec is identical to the
729 # status for those Service Perimeters. When this flag is set, it inhibits the
730 # generation of the implicit spec, thereby allowing the user to explicitly
731 # provide a configuration (&quot;spec&quot;) to use in a dry-run version of the Service
732 # Perimeter. This allows the user to test changes to the enforced config
733 # (&quot;status&quot;) without actually enforcing them. This testing is done through
734 # analyzing the differences between currently enforced and suggested
735 # restrictions. use_explicit_dry_run_spec must bet set to True if any of the
736 # fields in the spec are set to non-default values.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700737 &quot;title&quot;: &quot;A String&quot;, # Human readable title. Must be unique within the Policy.
738 &quot;name&quot;: &quot;A String&quot;, # Required. Resource name for the ServicePerimeter. The `short_name`
739 # component must begin with a letter and only include alphanumeric and &#x27;_&#x27;.
740 # Format: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`
Bu Sun Kim65020912020-05-20 12:08:20 -0700741 &quot;spec&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Proposed (or dry run) ServicePerimeter configuration. This configuration
742 # allows to specify and test ServicePerimeter configuration without enforcing
743 # actual access restrictions. Only allowed to be set when the
744 # &quot;use_explicit_dry_run_spec&quot; flag is set.
745 # describe specific Service Perimeter configuration.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700746 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
747 # Currently only projects are allowed. Format: `projects/{project_number}`
748 &quot;A String&quot;,
749 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700750 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
751 # Perimeter.
752 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
753 # APIs specified in &#x27;allowed_services&#x27;.
754 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
755 # unless &#x27;enable_restriction&#x27; is True.
756 &quot;A String&quot;,
757 ],
758 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700759 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
760 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
761 # must be in the same policy as this `ServicePerimeter`. Referencing a
762 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
763 # listed, resources within the perimeter can only be accessed via Google
764 # Cloud calls with request origins within the perimeter. Example:
765 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
766 # For Service Perimeter Bridge, must be empty.
767 &quot;A String&quot;,
768 ],
769 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
770 # restrictions. For example, if `storage.googleapis.com` is specified, access
771 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
772 # access restrictions.
773 &quot;A String&quot;,
774 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700775 },
776 &quot;status&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Current ServicePerimeter configuration. Specifies sets of resources,
777 # restricted services and access levels that determine perimeter
778 # content and boundaries.
779 # describe specific Service Perimeter configuration.
780 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
781 # Currently only projects are allowed. Format: `projects/{project_number}`
782 &quot;A String&quot;,
783 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700784 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
785 # Perimeter.
786 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
787 # APIs specified in &#x27;allowed_services&#x27;.
788 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
789 # unless &#x27;enable_restriction&#x27; is True.
790 &quot;A String&quot;,
791 ],
792 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700793 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
794 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
795 # must be in the same policy as this `ServicePerimeter`. Referencing a
796 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
797 # listed, resources within the perimeter can only be accessed via Google
798 # Cloud calls with request origins within the perimeter. Example:
799 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
800 # For Service Perimeter Bridge, must be empty.
801 &quot;A String&quot;,
802 ],
803 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
804 # restrictions. For example, if `storage.googleapis.com` is specified, access
805 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
806 # access restrictions.
807 &quot;A String&quot;,
808 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700809 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700810}
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700811
812 updateMask: string, Required. Mask to control which fields get updated. Must be non-empty.
813 x__xgafv: string, V1 error format.
814 Allowed values
815 1 - v1 error format
816 2 - v2 error format
817
818Returns:
819 An object of the form:
820
821 { # This resource represents a long-running operation that is the result of a
822 # network API call.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700823 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
824 # originally returns it. If you use the default HTTP mapping, the
825 # `name` should be a resource name ending with `operations/{unique_id}`.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700826 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
827 # contains progress information and common metadata such as create time.
828 # Some services might not provide such metadata. Any method that returns a
829 # long-running operation should document the metadata type, if any.
830 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
831 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700832 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700833 # method returns no data on success, such as `Delete`, the response is
834 # `google.protobuf.Empty`. If the original method is standard
835 # `Get`/`Create`/`Update`, the response should be the resource. For other
836 # methods, the response should have the type `XxxResponse`, where `Xxx`
837 # is the original method name. For example, if the original method name
838 # is `TakeSnapshot()`, the inferred response type is
839 # `TakeSnapshotResponse`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700840 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700841 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700842 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
843 # If `true`, the operation is completed, and either `error` or `response` is
844 # available.
845 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
846 # different programming environments, including REST APIs and RPC APIs. It is
847 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
848 # three pieces of data: error code, error message, and error details.
849 #
850 # You can find out more about this error model and how to work with it in the
851 # [API Design Guide](https://cloud.google.com/apis/design/errors).
852 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
853 # message types for APIs to use.
854 {
855 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
856 },
857 ],
858 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
859 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
860 # user-facing error message should be localized and sent in the
861 # google.rpc.Status.details field, or localized by the client.
862 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700863 }</pre>
864</div>
865
Dan O'Mearadd494642020-05-01 07:42:23 -0700866<div class="method">
867 <code class="details" id="replaceAll">replaceAll(parent, body=None, x__xgafv=None)</code>
868 <pre>Replace all existing Service Perimeters in an
869Access Policy
870with the Service Perimeters provided.
871This is done atomically. The longrunning operation from this
872RPC will have a successful status once all replacements have propagated to
873long-lasting storage. Replacements containing errors will result in an
874error response for the first error encountered. Replacement will be
875cancelled on error, existing Service Perimeters will not be
876affected. Operation.response field will contain
877ReplaceServicePerimetersResponse.
878
879Args:
880 parent: string, Required. Resource name for the access policy which owns these
881Service Perimeters.
882
883Format: `accessPolicies/{policy_id}` (required)
884 body: object, The request body.
885 The object takes the form of:
886
887{ # A request to replace all existing Service Perimeters in an Access Policy
888 # with the Service Perimeters provided. This is done atomically.
Bu Sun Kim65020912020-05-20 12:08:20 -0700889 &quot;servicePerimeters&quot;: [ # Required. The desired Service Perimeters that should
Dan O'Mearadd494642020-05-01 07:42:23 -0700890 # replace all existing Service Perimeters in the
891 # Access Policy.
892 { # `ServicePerimeter` describes a set of Google Cloud resources which can freely
893 # import and export data amongst themselves, but not export outside of the
894 # `ServicePerimeter`. If a request with a source within this `ServicePerimeter`
895 # has a target outside of the `ServicePerimeter`, the request will be blocked.
896 # Otherwise the request is allowed. There are two types of Service Perimeter -
897 # Regular and Bridge. Regular Service Perimeters cannot overlap, a single
898 # Google Cloud project can only belong to a single regular Service Perimeter.
899 # Service Perimeter Bridges can contain only Google Cloud projects as members,
900 # a single Google Cloud project may belong to multiple Service Perimeter
901 # Bridges.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700902 &quot;description&quot;: &quot;A String&quot;, # Description of the `ServicePerimeter` and its use. Does not affect
903 # behavior.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700904 &quot;perimeterType&quot;: &quot;A String&quot;, # Perimeter type indicator. A single project is
905 # allowed to be a member of single regular perimeter, but multiple service
906 # perimeter bridges. A project cannot be a included in a perimeter bridge
907 # without being included in regular perimeter. For perimeter bridges,
908 # the restricted service list as well as access level lists must be
909 # empty.
Bu Sun Kim65020912020-05-20 12:08:20 -0700910 &quot;useExplicitDryRunSpec&quot;: True or False, # Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly
911 # exists for all Service Perimeters, and that spec is identical to the
912 # status for those Service Perimeters. When this flag is set, it inhibits the
913 # generation of the implicit spec, thereby allowing the user to explicitly
914 # provide a configuration (&quot;spec&quot;) to use in a dry-run version of the Service
915 # Perimeter. This allows the user to test changes to the enforced config
916 # (&quot;status&quot;) without actually enforcing them. This testing is done through
917 # analyzing the differences between currently enforced and suggested
918 # restrictions. use_explicit_dry_run_spec must bet set to True if any of the
919 # fields in the spec are set to non-default values.
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700920 &quot;title&quot;: &quot;A String&quot;, # Human readable title. Must be unique within the Policy.
921 &quot;name&quot;: &quot;A String&quot;, # Required. Resource name for the ServicePerimeter. The `short_name`
922 # component must begin with a letter and only include alphanumeric and &#x27;_&#x27;.
923 # Format: `accessPolicies/{policy_id}/servicePerimeters/{short_name}`
Bu Sun Kim65020912020-05-20 12:08:20 -0700924 &quot;spec&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Proposed (or dry run) ServicePerimeter configuration. This configuration
925 # allows to specify and test ServicePerimeter configuration without enforcing
926 # actual access restrictions. Only allowed to be set when the
927 # &quot;use_explicit_dry_run_spec&quot; flag is set.
928 # describe specific Service Perimeter configuration.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700929 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
930 # Currently only projects are allowed. Format: `projects/{project_number}`
931 &quot;A String&quot;,
932 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700933 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
934 # Perimeter.
935 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
936 # APIs specified in &#x27;allowed_services&#x27;.
937 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
938 # unless &#x27;enable_restriction&#x27; is True.
939 &quot;A String&quot;,
940 ],
941 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700942 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
943 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
944 # must be in the same policy as this `ServicePerimeter`. Referencing a
945 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
946 # listed, resources within the perimeter can only be accessed via Google
947 # Cloud calls with request origins within the perimeter. Example:
948 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
949 # For Service Perimeter Bridge, must be empty.
950 &quot;A String&quot;,
951 ],
952 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
953 # restrictions. For example, if `storage.googleapis.com` is specified, access
954 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
955 # access restrictions.
956 &quot;A String&quot;,
957 ],
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700958 },
959 &quot;status&quot;: { # `ServicePerimeterConfig` specifies a set of Google Cloud resources that # Current ServicePerimeter configuration. Specifies sets of resources,
960 # restricted services and access levels that determine perimeter
961 # content and boundaries.
962 # describe specific Service Perimeter configuration.
963 &quot;resources&quot;: [ # A list of Google Cloud resources that are inside of the service perimeter.
964 # Currently only projects are allowed. Format: `projects/{project_number}`
965 &quot;A String&quot;,
966 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700967 &quot;vpcAccessibleServices&quot;: { # Specifies how APIs are allowed to communicate within the Service # Configuration for APIs allowed within Perimeter.
968 # Perimeter.
969 &quot;enableRestriction&quot;: True or False, # Whether to restrict API calls within the Service Perimeter to the list of
970 # APIs specified in &#x27;allowed_services&#x27;.
971 &quot;allowedServices&quot;: [ # The list of APIs usable within the Service Perimeter. Must be empty
972 # unless &#x27;enable_restriction&#x27; is True.
973 &quot;A String&quot;,
974 ],
975 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -0700976 &quot;accessLevels&quot;: [ # A list of `AccessLevel` resource names that allow resources within the
977 # `ServicePerimeter` to be accessed from the internet. `AccessLevels` listed
978 # must be in the same policy as this `ServicePerimeter`. Referencing a
979 # nonexistent `AccessLevel` is a syntax error. If no `AccessLevel` names are
980 # listed, resources within the perimeter can only be accessed via Google
981 # Cloud calls with request origins within the perimeter. Example:
982 # `&quot;accessPolicies/MY_POLICY/accessLevels/MY_LEVEL&quot;`.
983 # For Service Perimeter Bridge, must be empty.
984 &quot;A String&quot;,
985 ],
986 &quot;restrictedServices&quot;: [ # Google Cloud services that are subject to the Service Perimeter
987 # restrictions. For example, if `storage.googleapis.com` is specified, access
988 # to the storage buckets inside the perimeter must meet the perimeter&#x27;s
989 # access restrictions.
990 &quot;A String&quot;,
991 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700992 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700993 },
994 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700995 &quot;etag&quot;: &quot;A String&quot;, # Optional. The etag for the version of the Access Policy that this
996 # replace operation is to be performed on. If, at the time of replace, the
997 # etag for the Access Policy stored in Access Context Manager is different
998 # from the specified etag, then the replace operation will not be performed
999 # and the call will fail. This field is not required. If etag is not
1000 # provided, the operation will be performed as if a valid etag is provided.
Dan O'Mearadd494642020-05-01 07:42:23 -07001001 }
1002
1003 x__xgafv: string, V1 error format.
1004 Allowed values
1005 1 - v1 error format
1006 2 - v2 error format
1007
1008Returns:
1009 An object of the form:
1010
1011 { # This resource represents a long-running operation that is the result of a
1012 # network API call.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001013 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
1014 # originally returns it. If you use the default HTTP mapping, the
1015 # `name` should be a resource name ending with `operations/{unique_id}`.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001016 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
1017 # contains progress information and common metadata such as create time.
1018 # Some services might not provide such metadata. Any method that returns a
1019 # long-running operation should document the metadata type, if any.
1020 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1021 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001022 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
Dan O'Mearadd494642020-05-01 07:42:23 -07001023 # method returns no data on success, such as `Delete`, the response is
1024 # `google.protobuf.Empty`. If the original method is standard
1025 # `Get`/`Create`/`Update`, the response should be the resource. For other
1026 # methods, the response should have the type `XxxResponse`, where `Xxx`
1027 # is the original method name. For example, if the original method name
1028 # is `TakeSnapshot()`, the inferred response type is
1029 # `TakeSnapshotResponse`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001030 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Dan O'Mearadd494642020-05-01 07:42:23 -07001031 },
Bu Sun Kimd059ad82020-07-22 17:02:09 -07001032 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
1033 # If `true`, the operation is completed, and either `error` or `response` is
1034 # available.
1035 &quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
1036 # different programming environments, including REST APIs and RPC APIs. It is
1037 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1038 # three pieces of data: error code, error message, and error details.
1039 #
1040 # You can find out more about this error model and how to work with it in the
1041 # [API Design Guide](https://cloud.google.com/apis/design/errors).
1042 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
1043 # message types for APIs to use.
1044 {
1045 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1046 },
1047 ],
1048 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
1049 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
1050 # user-facing error message should be localized and sent in the
1051 # google.rpc.Status.details field, or localized by the client.
1052 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001053 }</pre>
1054</div>
1055
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001056</body></html>