googleapis-common-protos-types 1.7.0 → 1.8.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +7 -0
- data/lib/google/api/annotations_pb.rb +60 -2
- data/lib/google/api/auth_pb.rb +264 -34
- data/lib/google/api/backend_pb.rb +212 -23
- data/lib/google/api/billing_pb.rb +104 -8
- data/lib/google/api/client_pb.rb +422 -86
- data/lib/google/api/config_change_pb.rb +111 -17
- data/lib/google/api/consumer_pb.rb +109 -16
- data/lib/google/api/context_pb.rb +117 -11
- data/lib/google/api/control_pb.rb +71 -4
- data/lib/google/api/distribution_pb.rb +242 -39
- data/lib/google/api/documentation_pb.rb +195 -19
- data/lib/google/api/endpoint_pb.rb +100 -7
- data/lib/google/api/error_reason_pb.rb +597 -33
- data/lib/google/api/field_behavior_pb.rb +117 -11
- data/lib/google/api/http_pb.rb +406 -23
- data/lib/google/api/httpbody_pb.rb +109 -6
- data/lib/google/api/label_pb.rb +75 -11
- data/lib/google/api/launch_stage_pb.rb +99 -11
- data/lib/google/api/log_pb.rb +82 -7
- data/lib/google/api/logging_pb.rb +108 -9
- data/lib/google/api/metric_pb.rb +297 -38
- data/lib/google/api/monitored_resource_pb.rb +159 -17
- data/lib/google/api/monitoring_pb.rb +134 -9
- data/lib/google/api/policy_pb.rb +129 -0
- data/lib/google/api/quota_pb.rb +211 -21
- data/lib/google/api/resource_pb.rb +265 -23
- data/lib/google/api/routing_pb.rb +488 -8
- data/lib/google/api/service_pb.rb +239 -29
- data/lib/google/api/source_info_pb.rb +59 -4
- data/lib/google/api/system_parameter_pb.rb +123 -13
- data/lib/google/api/usage_pb.rb +123 -11
- data/lib/google/api/visibility_pb.rb +140 -8
- data/lib/google/logging/type/http_request_pb.rb +123 -18
- data/lib/google/logging/type/log_severity_pb.rb +98 -12
- data/lib/google/longrunning/operations_pb.rb +277 -37
- data/lib/google/rpc/code_pb.rb +213 -20
- data/lib/google/rpc/context/attribute_context_pb.rb +375 -66
- data/lib/google/rpc/context/audit_context_pb.rb +77 -8
- data/lib/google/rpc/error_details_pb.rb +313 -56
- data/lib/google/rpc/http_pb.rb +91 -17
- data/lib/google/rpc/status_pb.rb +77 -6
- data/lib/google/type/calendar_period_pb.rb +83 -11
- data/lib/google/type/color_pb.rb +202 -7
- data/lib/google/type/date_pb.rb +79 -6
- data/lib/google/type/datetime_pb.rb +132 -18
- data/lib/google/type/dayofweek_pb.rb +77 -11
- data/lib/google/type/decimal_pb.rb +122 -4
- data/lib/google/type/expr_pb.rb +100 -7
- data/lib/google/type/fraction_pb.rb +60 -5
- data/lib/google/type/interval_pb.rb +74 -5
- data/lib/google/type/latlng_pb.rb +64 -5
- data/lib/google/type/localized_text_pb.rb +63 -5
- data/lib/google/type/money_pb.rb +69 -6
- data/lib/google/type/month_pb.rb +92 -16
- data/lib/google/type/phone_number_pb.rb +140 -12
- data/lib/google/type/postal_address_pb.rb +161 -14
- data/lib/google/type/quaternion_pb.rb +121 -7
- data/lib/google/type/timeofday_pb.rb +71 -7
- data/lib/googleapis/common/protos/types/version.rb +1 -1
- metadata +5 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a674dd9ee526c7673bb2d6218b99e2f3c68d554dab8ac3d262c0ac6857132c02
|
4
|
+
data.tar.gz: f7547fee864ad786fddfad84652d199e7d467be17ca76f8b03dd757859213728
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bb32348a310992d10d738b22ff78fc62605c8eac67119e6916d7d0902631ae7d4d9b55ec4c84225597eba546eab72c431f2ef149b263c4333788358138df4ddf
|
7
|
+
data.tar.gz: 3e6e8196f86a317960602da14ee4c585e6715e2c00c40e27f940981b19791a3bc90c18026063eeac4088d6610b6afdd3d64500acc1d8fb4f8bcf0a5441ad8621
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,12 @@
|
|
1
1
|
# Release History
|
2
2
|
|
3
|
+
### 1.8.0 (2023-08-07)
|
4
|
+
|
5
|
+
#### Features
|
6
|
+
|
7
|
+
* Support for API method policies ([#175](https://github.com/googleapis/common-protos-ruby/issues/175))
|
8
|
+
* Updated generated protobuf output to use binary descriptors for better future compatibility ([#165](https://github.com/googleapis/common-protos-ruby/issues/165))
|
9
|
+
|
3
10
|
### 1.7.0 (2023-07-16)
|
4
11
|
|
5
12
|
#### Features
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/api/annotations.proto
|
3
4
|
|
@@ -6,12 +7,69 @@ require 'google/protobuf'
|
|
6
7
|
require 'google/api/http_pb'
|
7
8
|
require 'google/protobuf/descriptor_pb'
|
8
9
|
|
9
|
-
|
10
|
-
|
10
|
+
|
11
|
+
descriptor_data = "\n\x1cgoogle/api/annotations.proto\x12\ngoogle.api\x1a\x15google/api/http.proto\x1a google/protobuf/descriptor.proto:E\n\x04http\x12\x1e.google.protobuf.MethodOptions\x18\xb0\xca\xbc\" \x01(\x0b\x32\x14.google.api.HttpRuleBn\n\x0e\x63om.google.apiB\x10\x41nnotationsProtoP\x01ZAgoogle.golang.org/genproto/googleapis/api/annotations;annotations\xa2\x02\x04GAPIb\x06proto3"
|
12
|
+
|
13
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
14
|
+
|
15
|
+
begin
|
16
|
+
pool.add_serialized_file(descriptor_data)
|
17
|
+
rescue TypeError => e
|
18
|
+
# Compatibility code: will be removed in the next major version.
|
19
|
+
require 'google/protobuf/descriptor_pb'
|
20
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
21
|
+
parsed.clear_dependency
|
22
|
+
serialized = parsed.class.encode(parsed)
|
23
|
+
file = pool.add_serialized_file(serialized)
|
24
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
25
|
+
imports = [
|
26
|
+
["google.api.HttpRule", "google/api/http.proto"],
|
27
|
+
]
|
28
|
+
imports.each do |type_name, expected_filename|
|
29
|
+
import_file = pool.lookup(type_name).file_descriptor
|
30
|
+
if import_file.name != expected_filename
|
31
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
32
|
+
end
|
11
33
|
end
|
34
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
35
|
+
warn "This will become an error in the next major version."
|
12
36
|
end
|
13
37
|
|
14
38
|
module Google
|
15
39
|
module Api
|
16
40
|
end
|
17
41
|
end
|
42
|
+
|
43
|
+
#### Source proto file: google/api/annotations.proto ####
|
44
|
+
#
|
45
|
+
# // Copyright 2015 Google LLC
|
46
|
+
# //
|
47
|
+
# // Licensed under the Apache License, Version 2.0 (the "License");
|
48
|
+
# // you may not use this file except in compliance with the License.
|
49
|
+
# // You may obtain a copy of the License at
|
50
|
+
# //
|
51
|
+
# // http://www.apache.org/licenses/LICENSE-2.0
|
52
|
+
# //
|
53
|
+
# // Unless required by applicable law or agreed to in writing, software
|
54
|
+
# // distributed under the License is distributed on an "AS IS" BASIS,
|
55
|
+
# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
56
|
+
# // See the License for the specific language governing permissions and
|
57
|
+
# // limitations under the License.
|
58
|
+
#
|
59
|
+
# syntax = "proto3";
|
60
|
+
#
|
61
|
+
# package google.api;
|
62
|
+
#
|
63
|
+
# import "google/api/http.proto";
|
64
|
+
# import "google/protobuf/descriptor.proto";
|
65
|
+
#
|
66
|
+
# option go_package = "google.golang.org/genproto/googleapis/api/annotations;annotations";
|
67
|
+
# option java_multiple_files = true;
|
68
|
+
# option java_outer_classname = "AnnotationsProto";
|
69
|
+
# option java_package = "com.google.api";
|
70
|
+
# option objc_class_prefix = "GAPI";
|
71
|
+
#
|
72
|
+
# extend google.protobuf.MethodOptions {
|
73
|
+
# // See `HttpRule`.
|
74
|
+
# HttpRule http = 72295728;
|
75
|
+
# }
|
data/lib/google/api/auth_pb.rb
CHANGED
@@ -1,44 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/api/auth.proto
|
3
4
|
|
4
5
|
require 'google/protobuf'
|
5
6
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
optional :id, :string, 1
|
28
|
-
optional :issuer, :string, 2
|
29
|
-
optional :jwks_uri, :string, 3
|
30
|
-
optional :audiences, :string, 4
|
31
|
-
optional :authorization_url, :string, 5
|
32
|
-
repeated :jwt_locations, :message, 6, "google.api.JwtLocation"
|
33
|
-
end
|
34
|
-
add_message "google.api.OAuthRequirements" do
|
35
|
-
optional :canonical_scopes, :string, 1
|
36
|
-
end
|
37
|
-
add_message "google.api.AuthRequirement" do
|
38
|
-
optional :provider_id, :string, 1
|
39
|
-
optional :audiences, :string, 2
|
7
|
+
|
8
|
+
descriptor_data = "\n\x15google/api/auth.proto\x12\ngoogle.api\"l\n\x0e\x41uthentication\x12-\n\x05rules\x18\x03 \x03(\x0b\x32\x1e.google.api.AuthenticationRule\x12+\n\tproviders\x18\x04 \x03(\x0b\x32\x18.google.api.AuthProvider\"\xa9\x01\n\x12\x41uthenticationRule\x12\x10\n\x08selector\x18\x01 \x01(\t\x12,\n\x05oauth\x18\x02 \x01(\x0b\x32\x1d.google.api.OAuthRequirements\x12 \n\x18\x61llow_without_credential\x18\x05 \x01(\x08\x12\x31\n\x0crequirements\x18\x07 \x03(\x0b\x32\x1b.google.api.AuthRequirement\"^\n\x0bJwtLocation\x12\x10\n\x06header\x18\x01 \x01(\tH\x00\x12\x0f\n\x05query\x18\x02 \x01(\tH\x00\x12\x10\n\x06\x63ookie\x18\x04 \x01(\tH\x00\x12\x14\n\x0cvalue_prefix\x18\x03 \x01(\tB\x04\n\x02in\"\x9a\x01\n\x0c\x41uthProvider\x12\n\n\x02id\x18\x01 \x01(\t\x12\x0e\n\x06issuer\x18\x02 \x01(\t\x12\x10\n\x08jwks_uri\x18\x03 \x01(\t\x12\x11\n\taudiences\x18\x04 \x01(\t\x12\x19\n\x11\x61uthorization_url\x18\x05 \x01(\t\x12.\n\rjwt_locations\x18\x06 \x03(\x0b\x32\x17.google.api.JwtLocation\"-\n\x11OAuthRequirements\x12\x18\n\x10\x63\x61nonical_scopes\x18\x01 \x01(\t\"9\n\x0f\x41uthRequirement\x12\x13\n\x0bprovider_id\x18\x01 \x01(\t\x12\x11\n\taudiences\x18\x02 \x01(\tBk\n\x0e\x63om.google.apiB\tAuthProtoP\x01ZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig\xa2\x02\x04GAPIb\x06proto3"
|
9
|
+
|
10
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
11
|
+
|
12
|
+
begin
|
13
|
+
pool.add_serialized_file(descriptor_data)
|
14
|
+
rescue TypeError => e
|
15
|
+
# Compatibility code: will be removed in the next major version.
|
16
|
+
require 'google/protobuf/descriptor_pb'
|
17
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
18
|
+
parsed.clear_dependency
|
19
|
+
serialized = parsed.class.encode(parsed)
|
20
|
+
file = pool.add_serialized_file(serialized)
|
21
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
22
|
+
imports = [
|
23
|
+
]
|
24
|
+
imports.each do |type_name, expected_filename|
|
25
|
+
import_file = pool.lookup(type_name).file_descriptor
|
26
|
+
if import_file.name != expected_filename
|
27
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
40
28
|
end
|
41
29
|
end
|
30
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
31
|
+
warn "This will become an error in the next major version."
|
42
32
|
end
|
43
33
|
|
44
34
|
module Google
|
@@ -51,3 +41,243 @@ module Google
|
|
51
41
|
AuthRequirement = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.AuthRequirement").msgclass
|
52
42
|
end
|
53
43
|
end
|
44
|
+
|
45
|
+
#### Source proto file: google/api/auth.proto ####
|
46
|
+
#
|
47
|
+
# // Copyright 2023 Google LLC
|
48
|
+
# //
|
49
|
+
# // Licensed under the Apache License, Version 2.0 (the "License");
|
50
|
+
# // you may not use this file except in compliance with the License.
|
51
|
+
# // You may obtain a copy of the License at
|
52
|
+
# //
|
53
|
+
# // http://www.apache.org/licenses/LICENSE-2.0
|
54
|
+
# //
|
55
|
+
# // Unless required by applicable law or agreed to in writing, software
|
56
|
+
# // distributed under the License is distributed on an "AS IS" BASIS,
|
57
|
+
# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
58
|
+
# // See the License for the specific language governing permissions and
|
59
|
+
# // limitations under the License.
|
60
|
+
#
|
61
|
+
# syntax = "proto3";
|
62
|
+
#
|
63
|
+
# package google.api;
|
64
|
+
#
|
65
|
+
# option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig";
|
66
|
+
# option java_multiple_files = true;
|
67
|
+
# option java_outer_classname = "AuthProto";
|
68
|
+
# option java_package = "com.google.api";
|
69
|
+
# option objc_class_prefix = "GAPI";
|
70
|
+
#
|
71
|
+
# // `Authentication` defines the authentication configuration for API methods
|
72
|
+
# // provided by an API service.
|
73
|
+
# //
|
74
|
+
# // Example:
|
75
|
+
# //
|
76
|
+
# // name: calendar.googleapis.com
|
77
|
+
# // authentication:
|
78
|
+
# // providers:
|
79
|
+
# // - id: google_calendar_auth
|
80
|
+
# // jwks_uri: https://www.googleapis.com/oauth2/v1/certs
|
81
|
+
# // issuer: https://securetoken.google.com
|
82
|
+
# // rules:
|
83
|
+
# // - selector: "*"
|
84
|
+
# // requirements:
|
85
|
+
# // provider_id: google_calendar_auth
|
86
|
+
# // - selector: google.calendar.Delegate
|
87
|
+
# // oauth:
|
88
|
+
# // canonical_scopes: https://www.googleapis.com/auth/calendar.read
|
89
|
+
# message Authentication {
|
90
|
+
# // A list of authentication rules that apply to individual API methods.
|
91
|
+
# //
|
92
|
+
# // **NOTE:** All service configuration rules follow "last one wins" order.
|
93
|
+
# repeated AuthenticationRule rules = 3;
|
94
|
+
#
|
95
|
+
# // Defines a set of authentication providers that a service supports.
|
96
|
+
# repeated AuthProvider providers = 4;
|
97
|
+
# }
|
98
|
+
#
|
99
|
+
# // Authentication rules for the service.
|
100
|
+
# //
|
101
|
+
# // By default, if a method has any authentication requirements, every request
|
102
|
+
# // must include a valid credential matching one of the requirements.
|
103
|
+
# // It's an error to include more than one kind of credential in a single
|
104
|
+
# // request.
|
105
|
+
# //
|
106
|
+
# // If a method doesn't have any auth requirements, request credentials will be
|
107
|
+
# // ignored.
|
108
|
+
# message AuthenticationRule {
|
109
|
+
# // Selects the methods to which this rule applies.
|
110
|
+
# //
|
111
|
+
# // Refer to [selector][google.api.DocumentationRule.selector] for syntax
|
112
|
+
# // details.
|
113
|
+
# string selector = 1;
|
114
|
+
#
|
115
|
+
# // The requirements for OAuth credentials.
|
116
|
+
# OAuthRequirements oauth = 2;
|
117
|
+
#
|
118
|
+
# // If true, the service accepts API keys without any other credential.
|
119
|
+
# // This flag only applies to HTTP and gRPC requests.
|
120
|
+
# bool allow_without_credential = 5;
|
121
|
+
#
|
122
|
+
# // Requirements for additional authentication providers.
|
123
|
+
# repeated AuthRequirement requirements = 7;
|
124
|
+
# }
|
125
|
+
#
|
126
|
+
# // Specifies a location to extract JWT from an API request.
|
127
|
+
# message JwtLocation {
|
128
|
+
# oneof in {
|
129
|
+
# // Specifies HTTP header name to extract JWT token.
|
130
|
+
# string header = 1;
|
131
|
+
#
|
132
|
+
# // Specifies URL query parameter name to extract JWT token.
|
133
|
+
# string query = 2;
|
134
|
+
#
|
135
|
+
# // Specifies cookie name to extract JWT token.
|
136
|
+
# string cookie = 4;
|
137
|
+
# }
|
138
|
+
#
|
139
|
+
# // The value prefix. The value format is "value_prefix{token}"
|
140
|
+
# // Only applies to "in" header type. Must be empty for "in" query type.
|
141
|
+
# // If not empty, the header value has to match (case sensitive) this prefix.
|
142
|
+
# // If not matched, JWT will not be extracted. If matched, JWT will be
|
143
|
+
# // extracted after the prefix is removed.
|
144
|
+
# //
|
145
|
+
# // For example, for "Authorization: Bearer {JWT}",
|
146
|
+
# // value_prefix="Bearer " with a space at the end.
|
147
|
+
# string value_prefix = 3;
|
148
|
+
# }
|
149
|
+
#
|
150
|
+
# // Configuration for an authentication provider, including support for
|
151
|
+
# // [JSON Web Token
|
152
|
+
# // (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).
|
153
|
+
# message AuthProvider {
|
154
|
+
# // The unique identifier of the auth provider. It will be referred to by
|
155
|
+
# // `AuthRequirement.provider_id`.
|
156
|
+
# //
|
157
|
+
# // Example: "bookstore_auth".
|
158
|
+
# string id = 1;
|
159
|
+
#
|
160
|
+
# // Identifies the principal that issued the JWT. See
|
161
|
+
# // https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1
|
162
|
+
# // Usually a URL or an email address.
|
163
|
+
# //
|
164
|
+
# // Example: https://securetoken.google.com
|
165
|
+
# // Example: 1234567-compute@developer.gserviceaccount.com
|
166
|
+
# string issuer = 2;
|
167
|
+
#
|
168
|
+
# // URL of the provider's public key set to validate signature of the JWT. See
|
169
|
+
# // [OpenID
|
170
|
+
# // Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata).
|
171
|
+
# // Optional if the key set document:
|
172
|
+
# // - can be retrieved from
|
173
|
+
# // [OpenID
|
174
|
+
# // Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html)
|
175
|
+
# // of the issuer.
|
176
|
+
# // - can be inferred from the email domain of the issuer (e.g. a Google
|
177
|
+
# // service account).
|
178
|
+
# //
|
179
|
+
# // Example: https://www.googleapis.com/oauth2/v1/certs
|
180
|
+
# string jwks_uri = 3;
|
181
|
+
#
|
182
|
+
# // The list of JWT
|
183
|
+
# // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).
|
184
|
+
# // that are allowed to access. A JWT containing any of these audiences will
|
185
|
+
# // be accepted. When this setting is absent, JWTs with audiences:
|
186
|
+
# // - "https://[service.name]/[google.protobuf.Api.name]"
|
187
|
+
# // - "https://[service.name]/"
|
188
|
+
# // will be accepted.
|
189
|
+
# // For example, if no audiences are in the setting, LibraryService API will
|
190
|
+
# // accept JWTs with the following audiences:
|
191
|
+
# // -
|
192
|
+
# // https://library-example.googleapis.com/google.example.library.v1.LibraryService
|
193
|
+
# // - https://library-example.googleapis.com/
|
194
|
+
# //
|
195
|
+
# // Example:
|
196
|
+
# //
|
197
|
+
# // audiences: bookstore_android.apps.googleusercontent.com,
|
198
|
+
# // bookstore_web.apps.googleusercontent.com
|
199
|
+
# string audiences = 4;
|
200
|
+
#
|
201
|
+
# // Redirect URL if JWT token is required but not present or is expired.
|
202
|
+
# // Implement authorizationUrl of securityDefinitions in OpenAPI spec.
|
203
|
+
# string authorization_url = 5;
|
204
|
+
#
|
205
|
+
# // Defines the locations to extract the JWT. For now it is only used by the
|
206
|
+
# // Cloud Endpoints to store the OpenAPI extension [x-google-jwt-locations]
|
207
|
+
# // (https://cloud.google.com/endpoints/docs/openapi/openapi-extensions#x-google-jwt-locations)
|
208
|
+
# //
|
209
|
+
# // JWT locations can be one of HTTP headers, URL query parameters or
|
210
|
+
# // cookies. The rule is that the first match wins.
|
211
|
+
# //
|
212
|
+
# // If not specified, default to use following 3 locations:
|
213
|
+
# // 1) Authorization: Bearer
|
214
|
+
# // 2) x-goog-iap-jwt-assertion
|
215
|
+
# // 3) access_token query parameter
|
216
|
+
# //
|
217
|
+
# // Default locations can be specified as followings:
|
218
|
+
# // jwt_locations:
|
219
|
+
# // - header: Authorization
|
220
|
+
# // value_prefix: "Bearer "
|
221
|
+
# // - header: x-goog-iap-jwt-assertion
|
222
|
+
# // - query: access_token
|
223
|
+
# repeated JwtLocation jwt_locations = 6;
|
224
|
+
# }
|
225
|
+
#
|
226
|
+
# // OAuth scopes are a way to define data and permissions on data. For example,
|
227
|
+
# // there are scopes defined for "Read-only access to Google Calendar" and
|
228
|
+
# // "Access to Cloud Platform". Users can consent to a scope for an application,
|
229
|
+
# // giving it permission to access that data on their behalf.
|
230
|
+
# //
|
231
|
+
# // OAuth scope specifications should be fairly coarse grained; a user will need
|
232
|
+
# // to see and understand the text description of what your scope means.
|
233
|
+
# //
|
234
|
+
# // In most cases: use one or at most two OAuth scopes for an entire family of
|
235
|
+
# // products. If your product has multiple APIs, you should probably be sharing
|
236
|
+
# // the OAuth scope across all of those APIs.
|
237
|
+
# //
|
238
|
+
# // When you need finer grained OAuth consent screens: talk with your product
|
239
|
+
# // management about how developers will use them in practice.
|
240
|
+
# //
|
241
|
+
# // Please note that even though each of the canonical scopes is enough for a
|
242
|
+
# // request to be accepted and passed to the backend, a request can still fail
|
243
|
+
# // due to the backend requiring additional scopes or permissions.
|
244
|
+
# message OAuthRequirements {
|
245
|
+
# // The list of publicly documented OAuth scopes that are allowed access. An
|
246
|
+
# // OAuth token containing any of these scopes will be accepted.
|
247
|
+
# //
|
248
|
+
# // Example:
|
249
|
+
# //
|
250
|
+
# // canonical_scopes: https://www.googleapis.com/auth/calendar,
|
251
|
+
# // https://www.googleapis.com/auth/calendar.read
|
252
|
+
# string canonical_scopes = 1;
|
253
|
+
# }
|
254
|
+
#
|
255
|
+
# // User-defined authentication requirements, including support for
|
256
|
+
# // [JSON Web Token
|
257
|
+
# // (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).
|
258
|
+
# message AuthRequirement {
|
259
|
+
# // [id][google.api.AuthProvider.id] from authentication provider.
|
260
|
+
# //
|
261
|
+
# // Example:
|
262
|
+
# //
|
263
|
+
# // provider_id: bookstore_auth
|
264
|
+
# string provider_id = 1;
|
265
|
+
#
|
266
|
+
# // NOTE: This will be deprecated soon, once AuthProvider.audiences is
|
267
|
+
# // implemented and accepted in all the runtime components.
|
268
|
+
# //
|
269
|
+
# // The list of JWT
|
270
|
+
# // [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3).
|
271
|
+
# // that are allowed to access. A JWT containing any of these audiences will
|
272
|
+
# // be accepted. When this setting is absent, only JWTs with audience
|
273
|
+
# // "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]"
|
274
|
+
# // will be accepted. For example, if no audiences are in the setting,
|
275
|
+
# // LibraryService API will only accept JWTs with the following audience
|
276
|
+
# // "https://library-example.googleapis.com/google.example.library.v1.LibraryService".
|
277
|
+
# //
|
278
|
+
# // Example:
|
279
|
+
# //
|
280
|
+
# // audiences: bookstore_android.apps.googleusercontent.com,
|
281
|
+
# // bookstore_web.apps.googleusercontent.com
|
282
|
+
# string audiences = 2;
|
283
|
+
# }
|
@@ -1,33 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/api/backend.proto
|
3
4
|
|
4
5
|
require 'google/protobuf'
|
5
6
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
value :CONSTANT_ADDRESS, 1
|
28
|
-
value :APPEND_PATH_TO_ADDRESS, 2
|
7
|
+
|
8
|
+
descriptor_data = "\n\x18google/api/backend.proto\x12\ngoogle.api\"1\n\x07\x42\x61\x63kend\x12&\n\x05rules\x18\x01 \x03(\x0b\x32\x17.google.api.BackendRule\"\xb2\x04\n\x0b\x42\x61\x63kendRule\x12\x10\n\x08selector\x18\x01 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\t\x12\x10\n\x08\x64\x65\x61\x64line\x18\x03 \x01(\x01\x12\x18\n\x0cmin_deadline\x18\x04 \x01(\x01\x42\x02\x18\x01\x12\x1a\n\x12operation_deadline\x18\x05 \x01(\x01\x12\x41\n\x10path_translation\x18\x06 \x01(\x0e\x32\'.google.api.BackendRule.PathTranslation\x12\x16\n\x0cjwt_audience\x18\x07 \x01(\tH\x00\x12\x16\n\x0c\x64isable_auth\x18\x08 \x01(\x08H\x00\x12\x10\n\x08protocol\x18\t \x01(\t\x12^\n\x1doverrides_by_request_protocol\x18\n \x03(\x0b\x32\x37.google.api.BackendRule.OverridesByRequestProtocolEntry\x1aZ\n\x1fOverridesByRequestProtocolEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12&\n\x05value\x18\x02 \x01(\x0b\x32\x17.google.api.BackendRule:\x02\x38\x01\"e\n\x0fPathTranslation\x12 \n\x1cPATH_TRANSLATION_UNSPECIFIED\x10\x00\x12\x14\n\x10\x43ONSTANT_ADDRESS\x10\x01\x12\x1a\n\x16\x41PPEND_PATH_TO_ADDRESS\x10\x02\x42\x10\n\x0e\x61uthenticationBn\n\x0e\x63om.google.apiB\x0c\x42\x61\x63kendProtoP\x01ZEgoogle.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig\xa2\x02\x04GAPIb\x06proto3"
|
9
|
+
|
10
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
11
|
+
|
12
|
+
begin
|
13
|
+
pool.add_serialized_file(descriptor_data)
|
14
|
+
rescue TypeError => e
|
15
|
+
# Compatibility code: will be removed in the next major version.
|
16
|
+
require 'google/protobuf/descriptor_pb'
|
17
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
18
|
+
parsed.clear_dependency
|
19
|
+
serialized = parsed.class.encode(parsed)
|
20
|
+
file = pool.add_serialized_file(serialized)
|
21
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
22
|
+
imports = [
|
23
|
+
]
|
24
|
+
imports.each do |type_name, expected_filename|
|
25
|
+
import_file = pool.lookup(type_name).file_descriptor
|
26
|
+
if import_file.name != expected_filename
|
27
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
29
28
|
end
|
30
29
|
end
|
30
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
31
|
+
warn "This will become an error in the next major version."
|
31
32
|
end
|
32
33
|
|
33
34
|
module Google
|
@@ -37,3 +38,191 @@ module Google
|
|
37
38
|
BackendRule::PathTranslation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.api.BackendRule.PathTranslation").enummodule
|
38
39
|
end
|
39
40
|
end
|
41
|
+
|
42
|
+
#### Source proto file: google/api/backend.proto ####
|
43
|
+
#
|
44
|
+
# // Copyright 2023 Google LLC
|
45
|
+
# //
|
46
|
+
# // Licensed under the Apache License, Version 2.0 (the "License");
|
47
|
+
# // you may not use this file except in compliance with the License.
|
48
|
+
# // You may obtain a copy of the License at
|
49
|
+
# //
|
50
|
+
# // http://www.apache.org/licenses/LICENSE-2.0
|
51
|
+
# //
|
52
|
+
# // Unless required by applicable law or agreed to in writing, software
|
53
|
+
# // distributed under the License is distributed on an "AS IS" BASIS,
|
54
|
+
# // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
55
|
+
# // See the License for the specific language governing permissions and
|
56
|
+
# // limitations under the License.
|
57
|
+
#
|
58
|
+
# syntax = "proto3";
|
59
|
+
#
|
60
|
+
# package google.api;
|
61
|
+
#
|
62
|
+
# option go_package = "google.golang.org/genproto/googleapis/api/serviceconfig;serviceconfig";
|
63
|
+
# option java_multiple_files = true;
|
64
|
+
# option java_outer_classname = "BackendProto";
|
65
|
+
# option java_package = "com.google.api";
|
66
|
+
# option objc_class_prefix = "GAPI";
|
67
|
+
#
|
68
|
+
# // `Backend` defines the backend configuration for a service.
|
69
|
+
# message Backend {
|
70
|
+
# // A list of API backend rules that apply to individual API methods.
|
71
|
+
# //
|
72
|
+
# // **NOTE:** All service configuration rules follow "last one wins" order.
|
73
|
+
# repeated BackendRule rules = 1;
|
74
|
+
# }
|
75
|
+
#
|
76
|
+
# // A backend rule provides configuration for an individual API element.
|
77
|
+
# message BackendRule {
|
78
|
+
# // Path Translation specifies how to combine the backend address with the
|
79
|
+
# // request path in order to produce the appropriate forwarding URL for the
|
80
|
+
# // request.
|
81
|
+
# //
|
82
|
+
# // Path Translation is applicable only to HTTP-based backends. Backends which
|
83
|
+
# // do not accept requests over HTTP/HTTPS should leave `path_translation`
|
84
|
+
# // unspecified.
|
85
|
+
# enum PathTranslation {
|
86
|
+
# PATH_TRANSLATION_UNSPECIFIED = 0;
|
87
|
+
#
|
88
|
+
# // Use the backend address as-is, with no modification to the path. If the
|
89
|
+
# // URL pattern contains variables, the variable names and values will be
|
90
|
+
# // appended to the query string. If a query string parameter and a URL
|
91
|
+
# // pattern variable have the same name, this may result in duplicate keys in
|
92
|
+
# // the query string.
|
93
|
+
# //
|
94
|
+
# // # Examples
|
95
|
+
# //
|
96
|
+
# // Given the following operation config:
|
97
|
+
# //
|
98
|
+
# // Method path: /api/company/{cid}/user/{uid}
|
99
|
+
# // Backend address: https://example.cloudfunctions.net/getUser
|
100
|
+
# //
|
101
|
+
# // Requests to the following request paths will call the backend at the
|
102
|
+
# // translated path:
|
103
|
+
# //
|
104
|
+
# // Request path: /api/company/widgetworks/user/johndoe
|
105
|
+
# // Translated:
|
106
|
+
# // https://example.cloudfunctions.net/getUser?cid=widgetworks&uid=johndoe
|
107
|
+
# //
|
108
|
+
# // Request path: /api/company/widgetworks/user/johndoe?timezone=EST
|
109
|
+
# // Translated:
|
110
|
+
# // https://example.cloudfunctions.net/getUser?timezone=EST&cid=widgetworks&uid=johndoe
|
111
|
+
# CONSTANT_ADDRESS = 1;
|
112
|
+
#
|
113
|
+
# // The request path will be appended to the backend address.
|
114
|
+
# //
|
115
|
+
# // # Examples
|
116
|
+
# //
|
117
|
+
# // Given the following operation config:
|
118
|
+
# //
|
119
|
+
# // Method path: /api/company/{cid}/user/{uid}
|
120
|
+
# // Backend address: https://example.appspot.com
|
121
|
+
# //
|
122
|
+
# // Requests to the following request paths will call the backend at the
|
123
|
+
# // translated path:
|
124
|
+
# //
|
125
|
+
# // Request path: /api/company/widgetworks/user/johndoe
|
126
|
+
# // Translated:
|
127
|
+
# // https://example.appspot.com/api/company/widgetworks/user/johndoe
|
128
|
+
# //
|
129
|
+
# // Request path: /api/company/widgetworks/user/johndoe?timezone=EST
|
130
|
+
# // Translated:
|
131
|
+
# // https://example.appspot.com/api/company/widgetworks/user/johndoe?timezone=EST
|
132
|
+
# APPEND_PATH_TO_ADDRESS = 2;
|
133
|
+
# }
|
134
|
+
#
|
135
|
+
# // Selects the methods to which this rule applies.
|
136
|
+
# //
|
137
|
+
# // Refer to [selector][google.api.DocumentationRule.selector] for syntax
|
138
|
+
# // details.
|
139
|
+
# string selector = 1;
|
140
|
+
#
|
141
|
+
# // The address of the API backend.
|
142
|
+
# //
|
143
|
+
# // The scheme is used to determine the backend protocol and security.
|
144
|
+
# // The following schemes are accepted:
|
145
|
+
# //
|
146
|
+
# // SCHEME PROTOCOL SECURITY
|
147
|
+
# // http:// HTTP None
|
148
|
+
# // https:// HTTP TLS
|
149
|
+
# // grpc:// gRPC None
|
150
|
+
# // grpcs:// gRPC TLS
|
151
|
+
# //
|
152
|
+
# // It is recommended to explicitly include a scheme. Leaving out the scheme
|
153
|
+
# // may cause constrasting behaviors across platforms.
|
154
|
+
# //
|
155
|
+
# // If the port is unspecified, the default is:
|
156
|
+
# // - 80 for schemes without TLS
|
157
|
+
# // - 443 for schemes with TLS
|
158
|
+
# //
|
159
|
+
# // For HTTP backends, use [protocol][google.api.BackendRule.protocol]
|
160
|
+
# // to specify the protocol version.
|
161
|
+
# string address = 2;
|
162
|
+
#
|
163
|
+
# // The number of seconds to wait for a response from a request. The default
|
164
|
+
# // varies based on the request protocol and deployment environment.
|
165
|
+
# double deadline = 3;
|
166
|
+
#
|
167
|
+
# // Deprecated, do not use.
|
168
|
+
# double min_deadline = 4 [deprecated = true];
|
169
|
+
#
|
170
|
+
# // The number of seconds to wait for the completion of a long running
|
171
|
+
# // operation. The default is no deadline.
|
172
|
+
# double operation_deadline = 5;
|
173
|
+
#
|
174
|
+
# PathTranslation path_translation = 6;
|
175
|
+
#
|
176
|
+
# // Authentication settings used by the backend.
|
177
|
+
# //
|
178
|
+
# // These are typically used to provide service management functionality to
|
179
|
+
# // a backend served on a publicly-routable URL. The `authentication`
|
180
|
+
# // details should match the authentication behavior used by the backend.
|
181
|
+
# //
|
182
|
+
# // For example, specifying `jwt_audience` implies that the backend expects
|
183
|
+
# // authentication via a JWT.
|
184
|
+
# //
|
185
|
+
# // When authentication is unspecified, the resulting behavior is the same
|
186
|
+
# // as `disable_auth` set to `true`.
|
187
|
+
# //
|
188
|
+
# // Refer to https://developers.google.com/identity/protocols/OpenIDConnect for
|
189
|
+
# // JWT ID token.
|
190
|
+
# oneof authentication {
|
191
|
+
# // The JWT audience is used when generating a JWT ID token for the backend.
|
192
|
+
# // This ID token will be added in the HTTP "authorization" header, and sent
|
193
|
+
# // to the backend.
|
194
|
+
# string jwt_audience = 7;
|
195
|
+
#
|
196
|
+
# // When disable_auth is true, a JWT ID token won't be generated and the
|
197
|
+
# // original "Authorization" HTTP header will be preserved. If the header is
|
198
|
+
# // used to carry the original token and is expected by the backend, this
|
199
|
+
# // field must be set to true to preserve the header.
|
200
|
+
# bool disable_auth = 8;
|
201
|
+
# }
|
202
|
+
#
|
203
|
+
# // The protocol used for sending a request to the backend.
|
204
|
+
# // The supported values are "http/1.1" and "h2".
|
205
|
+
# //
|
206
|
+
# // The default value is inferred from the scheme in the
|
207
|
+
# // [address][google.api.BackendRule.address] field:
|
208
|
+
# //
|
209
|
+
# // SCHEME PROTOCOL
|
210
|
+
# // http:// http/1.1
|
211
|
+
# // https:// http/1.1
|
212
|
+
# // grpc:// h2
|
213
|
+
# // grpcs:// h2
|
214
|
+
# //
|
215
|
+
# // For secure HTTP backends (https://) that support HTTP/2, set this field
|
216
|
+
# // to "h2" for improved performance.
|
217
|
+
# //
|
218
|
+
# // Configuring this field to non-default values is only supported for secure
|
219
|
+
# // HTTP backends. This field will be ignored for all other backends.
|
220
|
+
# //
|
221
|
+
# // See
|
222
|
+
# // https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids
|
223
|
+
# // for more details on the supported values.
|
224
|
+
# string protocol = 9;
|
225
|
+
#
|
226
|
+
# // The map between request protocol and the backend address.
|
227
|
+
# map<string, BackendRule> overrides_by_request_protocol = 10;
|
228
|
+
# }
|