google-cloud-network_services-v1 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -40,7 +40,8 @@ module Google
40
40
  # At least one extension is required.
41
41
  # Up to 3 extensions can be defined for each extension chain
42
42
  # for `LbTrafficExtension` resource.
43
- # `LbRouteExtension` chains are limited to 1 extension per extension chain.
43
+ # `LbRouteExtension` and `LbEdgeExtension` chains are limited to 1 extension
44
+ # per extension chain.
44
45
  class ExtensionChain
45
46
  include ::Google::Protobuf::MessageExts
46
47
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -72,12 +73,13 @@ module Google
72
73
  # Optional. The `:authority` header in the gRPC request sent from Envoy
73
74
  # to the extension service.
74
75
  # Required for Callout extensions.
76
+ #
77
+ # This field is not supported for plugin extensions. Setting it results in
78
+ # a validation error.
75
79
  # @!attribute [rw] service
76
80
  # @return [::String]
77
81
  # Required. The reference to the service that runs the extension.
78
82
  #
79
- # Currently only callout extensions are supported here.
80
- #
81
83
  # To configure a callout extension, `service` must be a fully-qualified
82
84
  # reference
83
85
  # to a [backend
@@ -86,17 +88,38 @@ module Google
86
88
  # `https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}`
87
89
  # or
88
90
  # `https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}`.
91
+ #
92
+ # To configure a plugin extension, `service` must be a reference
93
+ # to a [`WasmPlugin`
94
+ # resource](https://cloud.google.com/service-extensions/docs/reference/rest/v1beta1/projects.locations.wasmPlugins)
95
+ # in the format:
96
+ # `projects/{project}/locations/{location}/wasmPlugins/{plugin}`
97
+ # or
98
+ # `//networkservices.googleapis.com/projects/{project}/locations/{location}/wasmPlugins/{wasmPlugin}`.
99
+ #
100
+ # Plugin extensions are currently supported for the
101
+ # `LbTrafficExtension`, the `LbRouteExtension`, and the `LbEdgeExtension`
102
+ # resources.
89
103
  # @!attribute [rw] supported_events
90
104
  # @return [::Array<::Google::Cloud::NetworkServices::V1::EventType>]
91
105
  # Optional. A set of events during request or response processing for which
92
- # this extension is called. This field is required for the
93
- # `LbTrafficExtension` resource. It must not be set for the
94
- # `LbRouteExtension` resource.
106
+ # this extension is called.
107
+ #
108
+ # For the `LbTrafficExtension` resource, this field is required.
109
+ #
110
+ # For the `LbRouteExtension` resource, this field is optional. If
111
+ # unspecified, `REQUEST_HEADERS` event is assumed as supported.
112
+ #
113
+ # For the `LbEdgeExtension` resource, this field is required and must only
114
+ # contain `REQUEST_HEADERS` event.
95
115
  # @!attribute [rw] timeout
96
116
  # @return [::Google::Protobuf::Duration]
97
117
  # Optional. Specifies the timeout for each individual message on the
98
- # stream. The timeout must be between 10-1000 milliseconds. Required for
99
- # Callout extensions.
118
+ # stream. The timeout must be between `10`-`10000` milliseconds. Required
119
+ # for callout extensions.
120
+ #
121
+ # This field is not supported for plugin extensions. Setting it results in
122
+ # a validation error.
100
123
  # @!attribute [rw] fail_open
101
124
  # @return [::Boolean]
102
125
  # Optional. Determines how the proxy behaves if the call to the extension
@@ -118,6 +141,36 @@ module Google
118
141
  # Optional. List of the HTTP headers to forward to the extension
119
142
  # (from the client or backend). If omitted, all headers are sent.
120
143
  # Each element is a string indicating the header name.
144
+ # @!attribute [rw] metadata
145
+ # @return [::Google::Protobuf::Struct]
146
+ # Optional. The metadata provided here is included as part of the
147
+ # `metadata_context` (of type `google.protobuf.Struct`) in the
148
+ # `ProcessingRequest` message sent to the extension server.
149
+ #
150
+ # The metadata is available under the namespace
151
+ # `com.google.<extension_type>.<resource_name>.<extension_chain_name>.<extension_name>`.
152
+ # For example:
153
+ # `com.google.lb_traffic_extension.lbtrafficextension1.chain1.ext1`.
154
+ #
155
+ # The following variables are supported in the metadata:
156
+ #
157
+ # `{forwarding_rule_id}` - substituted with the forwarding rule's fully
158
+ # qualified resource name.
159
+ #
160
+ # This field must not be set for plugin extensions. Setting it results in
161
+ # a validation error.
162
+ #
163
+ # You can set metadata at either the resource level or the extension level.
164
+ # The extension level metadata is recommended because you can pass a
165
+ # different set of metadata through each extension to the backend.
166
+ #
167
+ # This field is subject to following limitations:
168
+ #
169
+ # * The total size of the metadata must be less than 1KiB.
170
+ # * The total number of keys in the metadata must be less than 16.
171
+ # * The length of each key must be less than 64 characters.
172
+ # * The length of each value must be less than 1024 characters.
173
+ # * All values must be strings.
121
174
  class Extension
122
175
  include ::Google::Protobuf::MessageExts
123
176
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -151,9 +204,10 @@ module Google
151
204
  # for Google Cloud resources.
152
205
  # @!attribute [rw] forwarding_rules
153
206
  # @return [::Array<::String>]
154
- # Required. A list of references to the forwarding rules to which this
155
- # service extension is attached to. At least one forwarding rule is required.
156
- # There can be only one `LBTrafficExtension` resource per forwarding rule.
207
+ # Optional. A list of references to the forwarding rules to which this
208
+ # service extension is attached. At least one forwarding rule is required.
209
+ # Only one `LbTrafficExtension` resource can be associated with a forwarding
210
+ # rule.
157
211
  # @!attribute [rw] extension_chains
158
212
  # @return [::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>]
159
213
  # Required. A set of ordered extension chains that contain the match
@@ -166,19 +220,32 @@ module Google
166
220
  # @return [::Google::Cloud::NetworkServices::V1::LoadBalancingScheme]
167
221
  # Required. All backend services and forwarding rules referenced by this
168
222
  # extension must share the same load balancing scheme. Supported values:
169
- # `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to
170
- # [Choosing a load
171
- # balancer](https://cloud.google.com/load-balancing/docs/backend-service).
223
+ # `INTERNAL_MANAGED` and `EXTERNAL_MANAGED`. For more information, refer to
224
+ # [Backend services
225
+ # overview](https://cloud.google.com/load-balancing/docs/backend-service).
172
226
  # @!attribute [rw] metadata
173
227
  # @return [::Google::Protobuf::Struct]
174
- # Optional. The metadata provided here is included in the
175
- # `ProcessingRequest.metadata_context.filter_metadata` map field. The
176
- # metadata is available under the key
228
+ # Optional. The metadata provided here is included as part of the
229
+ # `metadata_context` (of type `google.protobuf.Struct`) in the
230
+ # `ProcessingRequest` message sent to the extension server.
231
+ #
232
+ # The metadata applies to all extensions in all extensions chains in this
233
+ # resource.
234
+ #
235
+ # The metadata is available under the key
177
236
  # `com.google.lb_traffic_extension.<resource_name>`.
237
+ #
178
238
  # The following variables are supported in the metadata:
179
239
  #
180
240
  # `{forwarding_rule_id}` - substituted with the forwarding rule's fully
181
241
  # qualified resource name.
242
+ #
243
+ # This field must not be set if at least one of the extension chains
244
+ # contains plugin extensions. Setting it results in a validation error.
245
+ #
246
+ # You can set metadata at either the resource level or the extension level.
247
+ # The extension level metadata is recommended because you can pass a
248
+ # different set of metadata through each extension to the backend.
182
249
  class LbTrafficExtension
183
250
  include ::Google::Protobuf::MessageExts
184
251
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -197,7 +264,7 @@ module Google
197
264
  # @!attribute [rw] parent
198
265
  # @return [::String]
199
266
  # Required. The project and location from which the `LbTrafficExtension`
200
- # resources are listed, specified in the following format:
267
+ # resources are listed. These values are specified in the following format:
201
268
  # `projects/{project}/locations/{location}`.
202
269
  # @!attribute [rw] page_size
203
270
  # @return [::Integer]
@@ -211,7 +278,7 @@ module Google
211
278
  # Optional. Filtering results.
212
279
  # @!attribute [rw] order_by
213
280
  # @return [::String]
214
- # Optional. Hint for how to order the results.
281
+ # Optional. Hint about how to order the results.
215
282
  class ListLbTrafficExtensionsRequest
216
283
  include ::Google::Protobuf::MessageExts
217
284
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -260,12 +327,11 @@ module Google
260
327
  # Optional. An optional request ID to identify requests. Specify a unique
261
328
  # request ID so that if you must retry your request, the server can ignore
262
329
  # the request if it has already been completed. The server guarantees
263
- # that for at least 60 minutes since the first request.
330
+ # that for 60 minutes since the first request.
264
331
  #
265
332
  # For example, consider a situation where you make an initial request and the
266
333
  # request times out. If you make the request again with the same request
267
- # ID, the server can check if original operation with the same request ID
268
- # was received, and if so, ignores the second request. This prevents
334
+ # ID, the server ignores the second request This prevents
269
335
  # clients from accidentally creating duplicate commitments.
270
336
  #
271
337
  # The request ID must be a valid UUID with the exception that zero UUID is
@@ -280,7 +346,7 @@ module Google
280
346
  # @return [::Google::Protobuf::FieldMask]
281
347
  # Optional. Used to specify the fields to be overwritten in the
282
348
  # `LbTrafficExtension` resource by the update.
283
- # The fields specified in the update_mask are relative to the resource, not
349
+ # The fields specified in the `update_mask` are relative to the resource, not
284
350
  # the full request. A field is overwritten if it is in the mask. If the
285
351
  # user does not specify a mask, then all fields are overwritten.
286
352
  # @!attribute [rw] lb_traffic_extension
@@ -291,12 +357,11 @@ module Google
291
357
  # Optional. An optional request ID to identify requests. Specify a unique
292
358
  # request ID so that if you must retry your request, the server can ignore
293
359
  # the request if it has already been completed. The server guarantees
294
- # that for at least 60 minutes since the first request.
360
+ # that for 60 minutes since the first request.
295
361
  #
296
362
  # For example, consider a situation where you make an initial request and the
297
363
  # request times out. If you make the request again with the same request
298
- # ID, the server can check if original operation with the same request ID
299
- # was received, and if so, ignores the second request. This prevents
364
+ # ID, the server ignores the second request This prevents
300
365
  # clients from accidentally creating duplicate commitments.
301
366
  #
302
367
  # The request ID must be a valid UUID with the exception that zero UUID is
@@ -317,12 +382,11 @@ module Google
317
382
  # Optional. An optional request ID to identify requests. Specify a unique
318
383
  # request ID so that if you must retry your request, the server can ignore
319
384
  # the request if it has already been completed. The server guarantees
320
- # that for at least 60 minutes after the first request.
385
+ # that for 60 minutes after the first request.
321
386
  #
322
387
  # For example, consider a situation where you make an initial request and the
323
388
  # request times out. If you make the request again with the same request
324
- # ID, the server can check if original operation with the same request ID
325
- # was received, and if so, ignores the second request. This prevents
389
+ # ID, the server ignores the second request This prevents
326
390
  # clients from accidentally creating duplicate commitments.
327
391
  #
328
392
  # The request ID must be a valid UUID with the exception that zero UUID is
@@ -358,8 +422,9 @@ module Google
358
422
  # @!attribute [rw] forwarding_rules
359
423
  # @return [::Array<::String>]
360
424
  # Required. A list of references to the forwarding rules to which this
361
- # service extension is attached to. At least one forwarding rule is required.
362
- # There can be only one `LbRouteExtension` resource per forwarding rule.
425
+ # service extension is attached. At least one forwarding rule is required.
426
+ # Only one `LbRouteExtension` resource can be associated with a forwarding
427
+ # rule.
363
428
  # @!attribute [rw] extension_chains
364
429
  # @return [::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>]
365
430
  # Required. A set of ordered extension chains that contain the match
@@ -373,19 +438,31 @@ module Google
373
438
  # Required. All backend services and forwarding rules referenced by this
374
439
  # extension must share the same load balancing scheme. Supported values:
375
440
  # `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to
376
- # [Choosing a load
377
- # balancer](https://cloud.google.com/load-balancing/docs/backend-service).
441
+ # [Backend services
442
+ # overview](https://cloud.google.com/load-balancing/docs/backend-service).
378
443
  # @!attribute [rw] metadata
379
444
  # @return [::Google::Protobuf::Struct]
380
445
  # Optional. The metadata provided here is included as part of the
381
446
  # `metadata_context` (of type `google.protobuf.Struct`) in the
382
- # `ProcessingRequest` message sent to the extension
383
- # server. The metadata is available under the namespace
447
+ # `ProcessingRequest` message sent to the extension server.
448
+ #
449
+ # The metadata applies to all extensions in all extensions chains in this
450
+ # resource.
451
+ #
452
+ # The metadata is available under the key
384
453
  # `com.google.lb_route_extension.<resource_name>`.
385
- # The following variables are supported in the metadata Struct:
454
+ #
455
+ # The following variables are supported in the metadata:
386
456
  #
387
457
  # `{forwarding_rule_id}` - substituted with the forwarding rule's fully
388
458
  # qualified resource name.
459
+ #
460
+ # This field must not be set if at least one of the extension chains
461
+ # contains plugin extensions. Setting it results in a validation error.
462
+ #
463
+ # You can set metadata at either the resource level or the extension level.
464
+ # The extension level metadata is recommended because you can pass a
465
+ # different set of metadata through each extension to the backend.
389
466
  class LbRouteExtension
390
467
  include ::Google::Protobuf::MessageExts
391
468
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -404,7 +481,7 @@ module Google
404
481
  # @!attribute [rw] parent
405
482
  # @return [::String]
406
483
  # Required. The project and location from which the `LbRouteExtension`
407
- # resources are listed, specified in the following format:
484
+ # resources are listed. These values are specified in the following format:
408
485
  # `projects/{project}/locations/{location}`.
409
486
  # @!attribute [rw] page_size
410
487
  # @return [::Integer]
@@ -418,7 +495,7 @@ module Google
418
495
  # Optional. Filtering results.
419
496
  # @!attribute [rw] order_by
420
497
  # @return [::String]
421
- # Optional. Hint for how to order the results.
498
+ # Optional. Hint about how to order the results.
422
499
  class ListLbRouteExtensionsRequest
423
500
  include ::Google::Protobuf::MessageExts
424
501
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -467,12 +544,11 @@ module Google
467
544
  # Optional. An optional request ID to identify requests. Specify a unique
468
545
  # request ID so that if you must retry your request, the server can ignore
469
546
  # the request if it has already been completed. The server guarantees
470
- # that for at least 60 minutes since the first request.
547
+ # that for 60 minutes since the first request.
471
548
  #
472
549
  # For example, consider a situation where you make an initial request and the
473
550
  # request times out. If you make the request again with the same request
474
- # ID, the server can check if original operation with the same request ID
475
- # was received, and if so, ignores the second request. This prevents
551
+ # ID, the server ignores the second request This prevents
476
552
  # clients from accidentally creating duplicate commitments.
477
553
  #
478
554
  # The request ID must be a valid UUID with the exception that zero UUID is
@@ -487,7 +563,7 @@ module Google
487
563
  # @return [::Google::Protobuf::FieldMask]
488
564
  # Optional. Used to specify the fields to be overwritten in the
489
565
  # `LbRouteExtension` resource by the update.
490
- # The fields specified in the update_mask are relative to the resource, not
566
+ # The fields specified in the `update_mask` are relative to the resource, not
491
567
  # the full request. A field is overwritten if it is in the mask. If the
492
568
  # user does not specify a mask, then all fields are overwritten.
493
569
  # @!attribute [rw] lb_route_extension
@@ -498,12 +574,11 @@ module Google
498
574
  # Optional. An optional request ID to identify requests. Specify a unique
499
575
  # request ID so that if you must retry your request, the server can ignore
500
576
  # the request if it has already been completed. The server guarantees
501
- # that for at least 60 minutes since the first request.
577
+ # that for 60 minutes since the first request.
502
578
  #
503
579
  # For example, consider a situation where you make an initial request and the
504
580
  # request times out. If you make the request again with the same request
505
- # ID, the server can check if original operation with the same request ID
506
- # was received, and if so, ignores the second request. This prevents
581
+ # ID, the server ignores the second request This prevents
507
582
  # clients from accidentally creating duplicate commitments.
508
583
  #
509
584
  # The request ID must be a valid UUID with the exception that zero UUID is
@@ -524,12 +599,11 @@ module Google
524
599
  # Optional. An optional request ID to identify requests. Specify a unique
525
600
  # request ID so that if you must retry your request, the server can ignore
526
601
  # the request if it has already been completed. The server guarantees
527
- # that for at least 60 minutes after the first request.
602
+ # that for 60 minutes after the first request.
528
603
  #
529
604
  # For example, consider a situation where you make an initial request and the
530
605
  # request times out. If you make the request again with the same request
531
- # ID, the server can check if original operation with the same request ID
532
- # was received, and if so, ignores the second request. This prevents
606
+ # ID, the server ignores the second request This prevents
533
607
  # clients from accidentally creating duplicate commitments.
534
608
  #
535
609
  # The request ID must be a valid UUID with the exception that zero UUID is
@@ -539,6 +613,243 @@ module Google
539
613
  extend ::Google::Protobuf::MessageExts::ClassMethods
540
614
  end
541
615
 
616
+ # `AuthzExtension` is a resource that allows traffic forwarding
617
+ # to a callout backend service to make an authorization decision.
618
+ # @!attribute [rw] name
619
+ # @return [::String]
620
+ # Required. Identifier. Name of the `AuthzExtension` resource in the
621
+ # following format:
622
+ # `projects/{project}/locations/{location}/authzExtensions/{authz_extension}`.
623
+ # @!attribute [r] create_time
624
+ # @return [::Google::Protobuf::Timestamp]
625
+ # Output only. The timestamp when the resource was created.
626
+ # @!attribute [r] update_time
627
+ # @return [::Google::Protobuf::Timestamp]
628
+ # Output only. The timestamp when the resource was updated.
629
+ # @!attribute [rw] description
630
+ # @return [::String]
631
+ # Optional. A human-readable description of the resource.
632
+ # @!attribute [rw] labels
633
+ # @return [::Google::Protobuf::Map{::String => ::String}]
634
+ # Optional. Set of labels associated with the `AuthzExtension`
635
+ # resource.
636
+ #
637
+ # The format must comply with [the requirements for
638
+ # labels](/compute/docs/labeling-resources#requirements) for Google Cloud
639
+ # resources.
640
+ # @!attribute [rw] load_balancing_scheme
641
+ # @return [::Google::Cloud::NetworkServices::V1::LoadBalancingScheme]
642
+ # Required. All backend services and forwarding rules referenced by this
643
+ # extension must share the same load balancing scheme. Supported values:
644
+ # `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to
645
+ # [Backend services
646
+ # overview](https://cloud.google.com/load-balancing/docs/backend-service).
647
+ # @!attribute [rw] authority
648
+ # @return [::String]
649
+ # Required. The `:authority` header in the gRPC request sent from Envoy
650
+ # to the extension service.
651
+ # @!attribute [rw] service
652
+ # @return [::String]
653
+ # Required. The reference to the service that runs the extension.
654
+ #
655
+ # To configure a callout extension, `service` must be a fully-qualified
656
+ # reference
657
+ # to a [backend
658
+ # service](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices)
659
+ # in the format:
660
+ # `https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}`
661
+ # or
662
+ # `https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}`.
663
+ # @!attribute [rw] timeout
664
+ # @return [::Google::Protobuf::Duration]
665
+ # Required. Specifies the timeout for each individual message on the stream.
666
+ # The timeout must be between 10-10000 milliseconds.
667
+ # @!attribute [rw] fail_open
668
+ # @return [::Boolean]
669
+ # Optional. Determines how the proxy behaves if the call to the extension
670
+ # fails or times out.
671
+ #
672
+ # When set to `TRUE`, request or response processing continues without
673
+ # error. Any subsequent extensions in the extension chain are also
674
+ # executed. When set to `FALSE` or the default setting of `FALSE` is used,
675
+ # one of the following happens:
676
+ #
677
+ # * If response headers have not been delivered to the downstream client,
678
+ # a generic 500 error is returned to the client. The error response can be
679
+ # tailored by configuring a custom error response in the load balancer.
680
+ #
681
+ # * If response headers have been delivered, then the HTTP stream to the
682
+ # downstream client is reset.
683
+ # @!attribute [rw] metadata
684
+ # @return [::Google::Protobuf::Struct]
685
+ # Optional. The metadata provided here is included as part of the
686
+ # `metadata_context` (of type `google.protobuf.Struct`) in the
687
+ # `ProcessingRequest` message sent to the extension
688
+ # server. The metadata is available under the namespace
689
+ # `com.google.authz_extension.<resource_name>`.
690
+ # The following variables are supported in the metadata Struct:
691
+ #
692
+ # `{forwarding_rule_id}` - substituted with the forwarding rule's fully
693
+ # qualified resource name.
694
+ # @!attribute [rw] forward_headers
695
+ # @return [::Array<::String>]
696
+ # Optional. List of the HTTP headers to forward to the extension
697
+ # (from the client). If omitted, all headers are sent.
698
+ # Each element is a string indicating the header name.
699
+ # @!attribute [rw] wire_format
700
+ # @return [::Google::Cloud::NetworkServices::V1::WireFormat]
701
+ # Optional. The format of communication supported by the callout extension.
702
+ # If not specified, the default value `EXT_PROC_GRPC` is used.
703
+ class AuthzExtension
704
+ include ::Google::Protobuf::MessageExts
705
+ extend ::Google::Protobuf::MessageExts::ClassMethods
706
+
707
+ # @!attribute [rw] key
708
+ # @return [::String]
709
+ # @!attribute [rw] value
710
+ # @return [::String]
711
+ class LabelsEntry
712
+ include ::Google::Protobuf::MessageExts
713
+ extend ::Google::Protobuf::MessageExts::ClassMethods
714
+ end
715
+ end
716
+
717
+ # Message for requesting list of `AuthzExtension` resources.
718
+ # @!attribute [rw] parent
719
+ # @return [::String]
720
+ # Required. The project and location from which the `AuthzExtension`
721
+ # resources are listed. These values are specified in the following format:
722
+ # `projects/{project}/locations/{location}`.
723
+ # @!attribute [rw] page_size
724
+ # @return [::Integer]
725
+ # Optional. Requested page size. The server might return fewer items than
726
+ # requested. If unspecified, the server picks an appropriate default.
727
+ # @!attribute [rw] page_token
728
+ # @return [::String]
729
+ # Optional. A token identifying a page of results that the server returns.
730
+ # @!attribute [rw] filter
731
+ # @return [::String]
732
+ # Optional. Filtering results.
733
+ # @!attribute [rw] order_by
734
+ # @return [::String]
735
+ # Optional. Hint about how to order the results.
736
+ class ListAuthzExtensionsRequest
737
+ include ::Google::Protobuf::MessageExts
738
+ extend ::Google::Protobuf::MessageExts::ClassMethods
739
+ end
740
+
741
+ # Message for response to listing `AuthzExtension` resources.
742
+ # @!attribute [rw] authz_extensions
743
+ # @return [::Array<::Google::Cloud::NetworkServices::V1::AuthzExtension>]
744
+ # The list of `AuthzExtension` resources.
745
+ # @!attribute [rw] next_page_token
746
+ # @return [::String]
747
+ # A token identifying a page of results that the server returns.
748
+ # @!attribute [rw] unreachable
749
+ # @return [::Array<::String>]
750
+ # Locations that could not be reached.
751
+ class ListAuthzExtensionsResponse
752
+ include ::Google::Protobuf::MessageExts
753
+ extend ::Google::Protobuf::MessageExts::ClassMethods
754
+ end
755
+
756
+ # Message for getting a `AuthzExtension` resource.
757
+ # @!attribute [rw] name
758
+ # @return [::String]
759
+ # Required. A name of the `AuthzExtension` resource to get. Must be in
760
+ # the format
761
+ # `projects/{project}/locations/{location}/authzExtensions/{authz_extension}`.
762
+ class GetAuthzExtensionRequest
763
+ include ::Google::Protobuf::MessageExts
764
+ extend ::Google::Protobuf::MessageExts::ClassMethods
765
+ end
766
+
767
+ # Message for creating a `AuthzExtension` resource.
768
+ # @!attribute [rw] parent
769
+ # @return [::String]
770
+ # Required. The parent resource of the `AuthzExtension` resource. Must
771
+ # be in the format `projects/{project}/locations/{location}`.
772
+ # @!attribute [rw] authz_extension_id
773
+ # @return [::String]
774
+ # Required. User-provided ID of the `AuthzExtension` resource to be
775
+ # created.
776
+ # @!attribute [rw] authz_extension
777
+ # @return [::Google::Cloud::NetworkServices::V1::AuthzExtension]
778
+ # Required. `AuthzExtension` resource to be created.
779
+ # @!attribute [rw] request_id
780
+ # @return [::String]
781
+ # Optional. An optional request ID to identify requests. Specify a unique
782
+ # request ID so that if you must retry your request, the server can ignore
783
+ # the request if it has already been completed. The server guarantees
784
+ # that for 60 minutes since the first request.
785
+ #
786
+ # For example, consider a situation where you make an initial request and the
787
+ # request times out. If you make the request again with the same request
788
+ # ID, the server ignores the second request This prevents
789
+ # clients from accidentally creating duplicate commitments.
790
+ #
791
+ # The request ID must be a valid UUID with the exception that zero UUID is
792
+ # not supported (00000000-0000-0000-0000-000000000000).
793
+ class CreateAuthzExtensionRequest
794
+ include ::Google::Protobuf::MessageExts
795
+ extend ::Google::Protobuf::MessageExts::ClassMethods
796
+ end
797
+
798
+ # Message for updating a `AuthzExtension` resource.
799
+ # @!attribute [rw] update_mask
800
+ # @return [::Google::Protobuf::FieldMask]
801
+ # Required. Used to specify the fields to be overwritten in the
802
+ # `AuthzExtension` resource by the update.
803
+ # The fields specified in the `update_mask` are relative to the resource, not
804
+ # the full request. A field is overwritten if it is in the mask. If the
805
+ # user does not specify a mask, then all fields are overwritten.
806
+ # @!attribute [rw] authz_extension
807
+ # @return [::Google::Cloud::NetworkServices::V1::AuthzExtension]
808
+ # Required. `AuthzExtension` resource being updated.
809
+ # @!attribute [rw] request_id
810
+ # @return [::String]
811
+ # Optional. An optional request ID to identify requests. Specify a unique
812
+ # request ID so that if you must retry your request, the server can ignore
813
+ # the request if it has already been completed. The server guarantees
814
+ # that for 60 minutes since the first request.
815
+ #
816
+ # For example, consider a situation where you make an initial request and the
817
+ # request times out. If you make the request again with the same request
818
+ # ID, the server ignores the second request This prevents
819
+ # clients from accidentally creating duplicate commitments.
820
+ #
821
+ # The request ID must be a valid UUID with the exception that zero UUID is
822
+ # not supported (00000000-0000-0000-0000-000000000000).
823
+ class UpdateAuthzExtensionRequest
824
+ include ::Google::Protobuf::MessageExts
825
+ extend ::Google::Protobuf::MessageExts::ClassMethods
826
+ end
827
+
828
+ # Message for deleting a `AuthzExtension` resource.
829
+ # @!attribute [rw] name
830
+ # @return [::String]
831
+ # Required. The name of the `AuthzExtension` resource to delete. Must
832
+ # be in the format
833
+ # `projects/{project}/locations/{location}/authzExtensions/{authz_extension}`.
834
+ # @!attribute [rw] request_id
835
+ # @return [::String]
836
+ # Optional. An optional request ID to identify requests. Specify a unique
837
+ # request ID so that if you must retry your request, the server can ignore
838
+ # the request if it has already been completed. The server guarantees
839
+ # that for 60 minutes after the first request.
840
+ #
841
+ # For example, consider a situation where you make an initial request and the
842
+ # request times out. If you make the request again with the same request
843
+ # ID, the server ignores the second request This prevents
844
+ # clients from accidentally creating duplicate commitments.
845
+ #
846
+ # The request ID must be a valid UUID with the exception that zero UUID is
847
+ # not supported (00000000-0000-0000-0000-000000000000).
848
+ class DeleteAuthzExtensionRequest
849
+ include ::Google::Protobuf::MessageExts
850
+ extend ::Google::Protobuf::MessageExts::ClassMethods
851
+ end
852
+
542
853
  # The part of the request or response for which the extension is called.
543
854
  module EventType
544
855
  # Unspecified value. Do not use.
@@ -569,10 +880,10 @@ module Google
569
880
  RESPONSE_TRAILERS = 6
570
881
  end
571
882
 
572
- # Load balancing schemes supported by the `LbTrafficExtension` resource and
573
- # `LbRouteExtension` resource.
574
- # For more information, refer to [Choosing a load
575
- # balancer](https://cloud.google.com/load-balancing/docs/backend-service).
883
+ # Load balancing schemes supported by the `LbTrafficExtension`,
884
+ # `LbRouteExtension`, and `LbEdgeExtension` resources.
885
+ # For more information, refer to [Backend services
886
+ # overview](https://cloud.google.com/load-balancing/docs/backend-service).
576
887
  module LoadBalancingScheme
577
888
  # Default value. Do not use.
578
889
  LOAD_BALANCING_SCHEME_UNSPECIFIED = 0
@@ -584,6 +895,19 @@ module Google
584
895
  # Balancing.
585
896
  EXTERNAL_MANAGED = 2
586
897
  end
898
+
899
+ # The format of communication supported by the extension.
900
+ module WireFormat
901
+ # Not specified.
902
+ WIRE_FORMAT_UNSPECIFIED = 0
903
+
904
+ # The extension service uses ext_proc gRPC API over a gRPC stream. This is
905
+ # the default value if the wire format is not specified. The backend service
906
+ # for the extension must use HTTP2 or H2C as the protocol. All
907
+ # `supported_events` for a client request are sent as part of the same
908
+ # gRPC stream.
909
+ EXT_PROC_GRPC = 1
910
+ end
587
911
  end
588
912
  end
589
913
  end