google-cloud-iap-v1 0.4.0 → 0.6.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.
@@ -62,6 +62,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
62
62
  optional :cors_settings, :message, 2, "google.cloud.iap.v1.CorsSettings"
63
63
  optional :oauth_settings, :message, 3, "google.cloud.iap.v1.OAuthSettings"
64
64
  optional :reauth_settings, :message, 6, "google.cloud.iap.v1.ReauthSettings"
65
+ optional :allowed_domains_settings, :message, 7, "google.cloud.iap.v1.AllowedDomainsSettings"
65
66
  end
66
67
  add_message "google.cloud.iap.v1.GcipSettings" do
67
68
  repeated :tenant_ids, :string, 1
@@ -89,10 +90,15 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
89
90
  value :MINIMUM, 1
90
91
  value :DEFAULT, 2
91
92
  end
93
+ add_message "google.cloud.iap.v1.AllowedDomainsSettings" do
94
+ proto3_optional :enable, :bool, 1
95
+ repeated :domains, :string, 2
96
+ end
92
97
  add_message "google.cloud.iap.v1.ApplicationSettings" do
93
98
  optional :csm_settings, :message, 1, "google.cloud.iap.v1.CsmSettings"
94
99
  optional :access_denied_page_settings, :message, 2, "google.cloud.iap.v1.AccessDeniedPageSettings"
95
100
  optional :cookie_domain, :message, 3, "google.protobuf.StringValue"
101
+ optional :attribute_propagation_settings, :message, 4, "google.cloud.iap.v1.AttributePropagationSettings"
96
102
  end
97
103
  add_message "google.cloud.iap.v1.CsmSettings" do
98
104
  optional :rctoken_aud, :message, 1, "google.protobuf.StringValue"
@@ -100,6 +106,18 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
100
106
  add_message "google.cloud.iap.v1.AccessDeniedPageSettings" do
101
107
  optional :access_denied_page_uri, :message, 1, "google.protobuf.StringValue"
102
108
  optional :generate_troubleshooting_uri, :message, 2, "google.protobuf.BoolValue"
109
+ proto3_optional :remediation_token_generation_enabled, :message, 3, "google.protobuf.BoolValue"
110
+ end
111
+ add_message "google.cloud.iap.v1.AttributePropagationSettings" do
112
+ proto3_optional :expression, :string, 1
113
+ repeated :output_credentials, :enum, 2, "google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials"
114
+ proto3_optional :enable, :bool, 3
115
+ end
116
+ add_enum "google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials" do
117
+ value :OUTPUT_CREDENTIALS_UNSPECIFIED, 0
118
+ value :HEADER, 1
119
+ value :JWT, 2
120
+ value :RCTOKEN, 3
103
121
  end
104
122
  add_message "google.cloud.iap.v1.ListBrandsRequest" do
105
123
  optional :parent, :string, 1
@@ -171,9 +189,12 @@ module Google
171
189
  ReauthSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.ReauthSettings").msgclass
172
190
  ReauthSettings::Method = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.ReauthSettings.Method").enummodule
173
191
  ReauthSettings::PolicyType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.ReauthSettings.PolicyType").enummodule
192
+ AllowedDomainsSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.AllowedDomainsSettings").msgclass
174
193
  ApplicationSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.ApplicationSettings").msgclass
175
194
  CsmSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.CsmSettings").msgclass
176
195
  AccessDeniedPageSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.AccessDeniedPageSettings").msgclass
196
+ AttributePropagationSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.AttributePropagationSettings").msgclass
197
+ AttributePropagationSettings::OutputCredentials = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.AttributePropagationSettings.OutputCredentials").enummodule
177
198
  ListBrandsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.ListBrandsRequest").msgclass
178
199
  ListBrandsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.ListBrandsResponse").msgclass
179
200
  CreateBrandRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.iap.v1.CreateBrandRequest").msgclass
@@ -24,6 +24,8 @@ module Google
24
24
  module Iap
25
25
  module V1
26
26
  module IdentityAwareProxyAdminService
27
+ # The Cloud Identity-Aware Proxy API.
28
+ #
27
29
  # APIs for Identity-Aware Proxy Admin configurations.
28
30
  class Service
29
31
 
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Iap
23
23
  module V1
24
- VERSION = "0.4.0"
24
+ VERSION = "0.6.0"
25
25
  end
26
26
  end
27
27
  end
@@ -24,13 +24,18 @@ module Google
24
24
  module Cloud
25
25
  module Iap
26
26
  ##
27
- # To load this package, including all its services, and instantiate a client:
27
+ # API client module.
28
28
  #
29
- # @example
29
+ # @example Load this package, including all its services, and instantiate a gRPC client
30
30
  #
31
31
  # require "google/cloud/iap/v1"
32
32
  # client = ::Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Client.new
33
33
  #
34
+ # @example Load this package, including all its services, and instantiate a REST client
35
+ #
36
+ # require "google/cloud/iap/v1"
37
+ # client = ::Google::Cloud::Iap::V1::IdentityAwareProxyAdminService::Rest::Client.new
38
+ #
34
39
  module V1
35
40
  end
36
41
  end
@@ -0,0 +1,318 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # Required information for every language.
23
+ # @!attribute [rw] reference_docs_uri
24
+ # @return [::String]
25
+ # Link to automatically generated reference documentation. Example:
26
+ # https://cloud.google.com/nodejs/docs/reference/asset/latest
27
+ # @!attribute [rw] destinations
28
+ # @return [::Array<::Google::Api::ClientLibraryDestination>]
29
+ # The destination where API teams want this client library to be published.
30
+ class CommonLanguageSettings
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+
35
+ # Details about how and where to publish client libraries.
36
+ # @!attribute [rw] version
37
+ # @return [::String]
38
+ # Version of the API to apply these settings to.
39
+ # @!attribute [rw] launch_stage
40
+ # @return [::Google::Api::LaunchStage]
41
+ # Launch stage of this version of the API.
42
+ # @!attribute [rw] rest_numeric_enums
43
+ # @return [::Boolean]
44
+ # When using transport=rest, the client request will encode enums as
45
+ # numbers rather than strings.
46
+ # @!attribute [rw] java_settings
47
+ # @return [::Google::Api::JavaSettings]
48
+ # Settings for legacy Java features, supported in the Service YAML.
49
+ # @!attribute [rw] cpp_settings
50
+ # @return [::Google::Api::CppSettings]
51
+ # Settings for C++ client libraries.
52
+ # @!attribute [rw] php_settings
53
+ # @return [::Google::Api::PhpSettings]
54
+ # Settings for PHP client libraries.
55
+ # @!attribute [rw] python_settings
56
+ # @return [::Google::Api::PythonSettings]
57
+ # Settings for Python client libraries.
58
+ # @!attribute [rw] node_settings
59
+ # @return [::Google::Api::NodeSettings]
60
+ # Settings for Node client libraries.
61
+ # @!attribute [rw] dotnet_settings
62
+ # @return [::Google::Api::DotnetSettings]
63
+ # Settings for .NET client libraries.
64
+ # @!attribute [rw] ruby_settings
65
+ # @return [::Google::Api::RubySettings]
66
+ # Settings for Ruby client libraries.
67
+ # @!attribute [rw] go_settings
68
+ # @return [::Google::Api::GoSettings]
69
+ # Settings for Go client libraries.
70
+ class ClientLibrarySettings
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # This message configures the settings for publishing [Google Cloud Client
76
+ # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
77
+ # generated from the service config.
78
+ # @!attribute [rw] method_settings
79
+ # @return [::Array<::Google::Api::MethodSettings>]
80
+ # A list of API method settings, e.g. the behavior for methods that use the
81
+ # long-running operation pattern.
82
+ # @!attribute [rw] new_issue_uri
83
+ # @return [::String]
84
+ # Link to a place that API users can report issues. Example:
85
+ # https://issuetracker.google.com/issues/new?component=190865&template=1161103
86
+ # @!attribute [rw] documentation_uri
87
+ # @return [::String]
88
+ # Link to product home page. Example:
89
+ # https://cloud.google.com/asset-inventory/docs/overview
90
+ # @!attribute [rw] api_short_name
91
+ # @return [::String]
92
+ # Used as a tracking tag when collecting data about the APIs developer
93
+ # relations artifacts like docs, packages delivered to package managers,
94
+ # etc. Example: "speech".
95
+ # @!attribute [rw] github_label
96
+ # @return [::String]
97
+ # GitHub label to apply to issues and pull requests opened for this API.
98
+ # @!attribute [rw] codeowner_github_teams
99
+ # @return [::Array<::String>]
100
+ # GitHub teams to be added to CODEOWNERS in the directory in GitHub
101
+ # containing source code for the client libraries for this API.
102
+ # @!attribute [rw] doc_tag_prefix
103
+ # @return [::String]
104
+ # A prefix used in sample code when demarking regions to be included in
105
+ # documentation.
106
+ # @!attribute [rw] organization
107
+ # @return [::Google::Api::ClientLibraryOrganization]
108
+ # For whom the client library is being published.
109
+ # @!attribute [rw] library_settings
110
+ # @return [::Array<::Google::Api::ClientLibrarySettings>]
111
+ # Client library settings. If the same version string appears multiple
112
+ # times in this list, then the last one wins. Settings from earlier
113
+ # settings with the same version string are discarded.
114
+ class Publishing
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Settings for Java client libraries.
120
+ # @!attribute [rw] library_package
121
+ # @return [::String]
122
+ # The package name to use in Java. Clobbers the java_package option
123
+ # set in the protobuf. This should be used **only** by APIs
124
+ # who have already set the language_settings.java.package_name" field
125
+ # in gapic.yaml. API teams should use the protobuf java_package option
126
+ # where possible.
127
+ #
128
+ # Example of a YAML configuration::
129
+ #
130
+ # publishing:
131
+ # java_settings:
132
+ # library_package: com.google.cloud.pubsub.v1
133
+ # @!attribute [rw] service_class_names
134
+ # @return [::Google::Protobuf::Map{::String => ::String}]
135
+ # Configure the Java class name to use instead of the service's for its
136
+ # corresponding generated GAPIC client. Keys are fully-qualified
137
+ # service names as they appear in the protobuf (including the full
138
+ # the language_settings.java.interface_names" field in gapic.yaml. API
139
+ # teams should otherwise use the service name as it appears in the
140
+ # protobuf.
141
+ #
142
+ # Example of a YAML configuration::
143
+ #
144
+ # publishing:
145
+ # java_settings:
146
+ # service_class_names:
147
+ # - google.pubsub.v1.Publisher: TopicAdmin
148
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
149
+ # @!attribute [rw] common
150
+ # @return [::Google::Api::CommonLanguageSettings]
151
+ # Some settings.
152
+ class JavaSettings
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+
156
+ # @!attribute [rw] key
157
+ # @return [::String]
158
+ # @!attribute [rw] value
159
+ # @return [::String]
160
+ class ServiceClassNamesEntry
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+ end
165
+
166
+ # Settings for C++ client libraries.
167
+ # @!attribute [rw] common
168
+ # @return [::Google::Api::CommonLanguageSettings]
169
+ # Some settings.
170
+ class CppSettings
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # Settings for Php client libraries.
176
+ # @!attribute [rw] common
177
+ # @return [::Google::Api::CommonLanguageSettings]
178
+ # Some settings.
179
+ class PhpSettings
180
+ include ::Google::Protobuf::MessageExts
181
+ extend ::Google::Protobuf::MessageExts::ClassMethods
182
+ end
183
+
184
+ # Settings for Python client libraries.
185
+ # @!attribute [rw] common
186
+ # @return [::Google::Api::CommonLanguageSettings]
187
+ # Some settings.
188
+ class PythonSettings
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+
193
+ # Settings for Node client libraries.
194
+ # @!attribute [rw] common
195
+ # @return [::Google::Api::CommonLanguageSettings]
196
+ # Some settings.
197
+ class NodeSettings
198
+ include ::Google::Protobuf::MessageExts
199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
200
+ end
201
+
202
+ # Settings for Dotnet client libraries.
203
+ # @!attribute [rw] common
204
+ # @return [::Google::Api::CommonLanguageSettings]
205
+ # Some settings.
206
+ class DotnetSettings
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Settings for Ruby client libraries.
212
+ # @!attribute [rw] common
213
+ # @return [::Google::Api::CommonLanguageSettings]
214
+ # Some settings.
215
+ class RubySettings
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # Settings for Go client libraries.
221
+ # @!attribute [rw] common
222
+ # @return [::Google::Api::CommonLanguageSettings]
223
+ # Some settings.
224
+ class GoSettings
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
228
+
229
+ # Describes the generator configuration for a method.
230
+ # @!attribute [rw] selector
231
+ # @return [::String]
232
+ # The fully qualified name of the method, for which the options below apply.
233
+ # This is used to find the method to apply the options.
234
+ # @!attribute [rw] long_running
235
+ # @return [::Google::Api::MethodSettings::LongRunning]
236
+ # Describes settings to use for long-running operations when generating
237
+ # API methods for RPCs. Complements RPCs that use the annotations in
238
+ # google/longrunning/operations.proto.
239
+ #
240
+ # Example of a YAML configuration::
241
+ #
242
+ # publishing:
243
+ # method_behavior:
244
+ # - selector: CreateAdDomain
245
+ # long_running:
246
+ # initial_poll_delay:
247
+ # seconds: 60 # 1 minute
248
+ # poll_delay_multiplier: 1.5
249
+ # max_poll_delay:
250
+ # seconds: 360 # 6 minutes
251
+ # total_poll_timeout:
252
+ # seconds: 54000 # 90 minutes
253
+ class MethodSettings
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+
257
+ # Describes settings to use when generating API methods that use the
258
+ # long-running operation pattern.
259
+ # All default values below are from those used in the client library
260
+ # generators (e.g.
261
+ # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
262
+ # @!attribute [rw] initial_poll_delay
263
+ # @return [::Google::Protobuf::Duration]
264
+ # Initial delay after which the first poll request will be made.
265
+ # Default value: 5 seconds.
266
+ # @!attribute [rw] poll_delay_multiplier
267
+ # @return [::Float]
268
+ # Multiplier to gradually increase delay between subsequent polls until it
269
+ # reaches max_poll_delay.
270
+ # Default value: 1.5.
271
+ # @!attribute [rw] max_poll_delay
272
+ # @return [::Google::Protobuf::Duration]
273
+ # Maximum time between two subsequent poll requests.
274
+ # Default value: 45 seconds.
275
+ # @!attribute [rw] total_poll_timeout
276
+ # @return [::Google::Protobuf::Duration]
277
+ # Total polling timeout.
278
+ # Default value: 5 minutes.
279
+ class LongRunning
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+ end
284
+
285
+ # The organization for which the client libraries are being published.
286
+ # Affects the url where generated docs are published, etc.
287
+ module ClientLibraryOrganization
288
+ # Not useful.
289
+ CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
290
+
291
+ # Google Cloud Platform Org.
292
+ CLOUD = 1
293
+
294
+ # Ads (Advertising) Org.
295
+ ADS = 2
296
+
297
+ # Photos Org.
298
+ PHOTOS = 3
299
+
300
+ # Street View Org.
301
+ STREET_VIEW = 4
302
+ end
303
+
304
+ # To where should client libraries be published?
305
+ module ClientLibraryDestination
306
+ # Client libraries will neither be generated nor published to package
307
+ # managers.
308
+ CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
309
+
310
+ # Generate the client library in a repo under github.com/googleapis,
311
+ # but don't publish it to package managers.
312
+ GITHUB = 10
313
+
314
+ # Publish the library to package managers like nuget.org and npmjs.com.
315
+ PACKAGE_MANAGER = 20
316
+ end
317
+ end
318
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # The launch stage as defined by [Google Cloud Platform
23
+ # Launch Stages](https://cloud.google.com/terms/launch-stages).
24
+ module LaunchStage
25
+ # Do not use this default value.
26
+ LAUNCH_STAGE_UNSPECIFIED = 0
27
+
28
+ # The feature is not yet implemented. Users can not use it.
29
+ UNIMPLEMENTED = 6
30
+
31
+ # Prelaunch features are hidden from users and are only visible internally.
32
+ PRELAUNCH = 7
33
+
34
+ # Early Access features are limited to a closed group of testers. To use
35
+ # these features, you must sign up in advance and sign a Trusted Tester
36
+ # agreement (which includes confidentiality provisions). These features may
37
+ # be unstable, changed in backward-incompatible ways, and are not
38
+ # guaranteed to be released.
39
+ EARLY_ACCESS = 1
40
+
41
+ # Alpha is a limited availability test for releases before they are cleared
42
+ # for widespread use. By Alpha, all significant design issues are resolved
43
+ # and we are in the process of verifying functionality. Alpha customers
44
+ # need to apply for access, agree to applicable terms, and have their
45
+ # projects allowlisted. Alpha releases don't have to be feature complete,
46
+ # no SLAs are provided, and there are no technical support obligations, but
47
+ # they will be far enough along that customers can actually use them in
48
+ # test environments or for limited-use tests -- just like they would in
49
+ # normal production cases.
50
+ ALPHA = 2
51
+
52
+ # Beta is the point at which we are ready to open a release for any
53
+ # customer to use. There are no SLA or technical support obligations in a
54
+ # Beta release. Products will be complete from a feature perspective, but
55
+ # may have some open outstanding issues. Beta releases are suitable for
56
+ # limited production use cases.
57
+ BETA = 3
58
+
59
+ # GA features are open to all developers and are considered stable and
60
+ # fully qualified for production use.
61
+ GA = 4
62
+
63
+ # Deprecated features are scheduled to be shut down and removed. For more
64
+ # information, see the "Deprecation Policy" section of our [Terms of
65
+ # Service](https://cloud.google.com/terms/)
66
+ # and the [Google Cloud Platform Subject to the Deprecation
67
+ # Policy](https://cloud.google.com/terms/deprecation) documentation.
68
+ DEPRECATED = 5
69
+ end
70
+ end
71
+ end
@@ -71,11 +71,11 @@ module Google
71
71
  # Required. The TunnelDestGroup to create.
72
72
  # @!attribute [rw] tunnel_dest_group_id
73
73
  # @return [::String]
74
- # Required. The ID to use for the TunnelDestGroup, which becomes the final component of
75
- # the resource name.
74
+ # Required. The ID to use for the TunnelDestGroup, which becomes the final
75
+ # component of the resource name.
76
76
  #
77
77
  # This value must be 4-63 characters, and valid characters
78
- # are `[a-z][0-9]-`.
78
+ # are `[a-z]-`.
79
79
  class CreateTunnelDestGroupRequest
80
80
  include ::Google::Protobuf::MessageExts
81
81
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -120,14 +120,15 @@ module Google
120
120
  # A TunnelDestGroup.
121
121
  # @!attribute [rw] name
122
122
  # @return [::String]
123
- # Required. Immutable. Identifier for the TunnelDestGroup. Must be unique within the
124
- # project.
123
+ # Required. Immutable. Identifier for the TunnelDestGroup. Must be unique
124
+ # within the project and contain only lower case letters (a-z) and dashes
125
+ # (-).
125
126
  # @!attribute [rw] cidrs
126
127
  # @return [::Array<::String>]
127
- # null List of CIDRs that this group applies to.
128
+ # Unordered list. List of CIDRs that this group applies to.
128
129
  # @!attribute [rw] fqdns
129
130
  # @return [::Array<::String>]
130
- # null List of FQDNs that this group applies to.
131
+ # Unordered list. List of FQDNs that this group applies to.
131
132
  class TunnelDestGroup
132
133
  include ::Google::Protobuf::MessageExts
133
134
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -188,6 +189,9 @@ module Google
188
189
  # @!attribute [rw] reauth_settings
189
190
  # @return [::Google::Cloud::Iap::V1::ReauthSettings]
190
191
  # Settings to configure reauthentication policies in IAP.
192
+ # @!attribute [rw] allowed_domains_settings
193
+ # @return [::Google::Cloud::Iap::V1::AllowedDomainsSettings]
194
+ # Settings to configure and enable allowed domains.
191
195
  class AccessSettings
192
196
  include ::Google::Protobuf::MessageExts
193
197
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -240,7 +244,7 @@ module Google
240
244
  # Configuration for IAP reauthentication policies.
241
245
  # @!attribute [rw] method
242
246
  # @return [::Google::Cloud::Iap::V1::ReauthSettings::Method]
243
- # Reauth method required by the policy.
247
+ # Reauth method requested.
244
248
  # @!attribute [rw] max_age
245
249
  # @return [::Google::Protobuf::Duration]
246
250
  # Reauth session lifetime, how long before a user has to reauthenticate
@@ -258,14 +262,10 @@ module Google
258
262
  # Reauthentication disabled.
259
263
  METHOD_UNSPECIFIED = 0
260
264
 
261
- # Mimics the behavior as if the user had logged out and tried to log in
262
- # again. Users with 2SV (2-step verification) enabled see their 2SV
263
- # challenges if they did not opt to have their second factor responses
264
- # saved. Apps Core (GSuites) admins can configure settings to disable 2SV
265
- # cookies and require 2SV for all Apps Core users in their domains.
265
+ # Prompts the user to log in again.
266
266
  LOGIN = 1
267
267
 
268
- # User must type their password.
268
+ # Deprecated, no longer accepted by IAP APIs.
269
269
  PASSWORD = 2
270
270
 
271
271
  # User must use their secure key 2nd factor device.
@@ -286,10 +286,23 @@ module Google
286
286
  end
287
287
  end
288
288
 
289
+ # Configuration for IAP allowed domains. Lets you to restrict access to an app
290
+ # and allow access to only the domains that you list.
291
+ # @!attribute [rw] enable
292
+ # @return [::Boolean]
293
+ # Configuration for customers to opt in for the feature.
294
+ # @!attribute [rw] domains
295
+ # @return [::Array<::String>]
296
+ # List of trusted domains.
297
+ class AllowedDomainsSettings
298
+ include ::Google::Protobuf::MessageExts
299
+ extend ::Google::Protobuf::MessageExts::ClassMethods
300
+ end
301
+
289
302
  # Wrapper over application specific settings for IAP.
290
303
  # @!attribute [rw] csm_settings
291
304
  # @return [::Google::Cloud::Iap::V1::CsmSettings]
292
- # Settings to configure IAP's behavior for a CSM mesh.
305
+ # Settings to configure IAP's behavior for a service mesh.
293
306
  # @!attribute [rw] access_denied_page_settings
294
307
  # @return [::Google::Cloud::Iap::V1::AccessDeniedPageSettings]
295
308
  # Customization for Access Denied page.
@@ -297,15 +310,18 @@ module Google
297
310
  # @return [::Google::Protobuf::StringValue]
298
311
  # The Domain value to set for cookies generated by IAP. This value is not
299
312
  # validated by the API, but will be ignored at runtime if invalid.
313
+ # @!attribute [rw] attribute_propagation_settings
314
+ # @return [::Google::Cloud::Iap::V1::AttributePropagationSettings]
315
+ # Settings to configure attribute propagation.
300
316
  class ApplicationSettings
301
317
  include ::Google::Protobuf::MessageExts
302
318
  extend ::Google::Protobuf::MessageExts::ClassMethods
303
319
  end
304
320
 
305
- # Configuration for RCTokens generated for CSM workloads protected by IAP.
306
- # RCTokens are IAP generated JWTs that can be verified at the application. The
307
- # RCToken is primarily used for ISTIO deployments, and can be scoped to a
308
- # single mesh by configuring the audience field accordingly
321
+ # Configuration for RCToken generated for service mesh workloads protected by
322
+ # IAP. RCToken are IAP generated JWTs that can be verified at the application.
323
+ # The RCToken is primarily used for service mesh deployments, and can be scoped
324
+ # to a single mesh by configuring the audience field accordingly.
309
325
  # @!attribute [rw] rctoken_aud
310
326
  # @return [::Google::Protobuf::StringValue]
311
327
  # Audience claim set in the generated RCToken. This value is not validated by
@@ -326,11 +342,75 @@ module Google
326
342
  # @return [::Google::Protobuf::BoolValue]
327
343
  # Whether to generate a troubleshooting URL on access denied events to this
328
344
  # application.
345
+ # @!attribute [rw] remediation_token_generation_enabled
346
+ # @return [::Google::Protobuf::BoolValue]
347
+ # Whether to generate remediation token on access denied events to this
348
+ # application.
329
349
  class AccessDeniedPageSettings
330
350
  include ::Google::Protobuf::MessageExts
331
351
  extend ::Google::Protobuf::MessageExts::ClassMethods
332
352
  end
333
353
 
354
+ # Configuration for propagating attributes to applications protected
355
+ # by IAP.
356
+ # @!attribute [rw] expression
357
+ # @return [::String]
358
+ # Raw string CEL expression. Must return a list of attributes. Maximum of 45
359
+ # attributes can be selected. Expressions can select different attribute
360
+ # types from `attributes`: `attributes.saml_attributes`,
361
+ # `attributes.iap_attributes`. Limited functions are supported:
362
+ # - `filter: <list>.filter(<iter_var>, <predicate>)` -> returns a subset of
363
+ # `<list>` where `<predicate>` is true for every item.
364
+ # - `in: <var> in <list>` -> returns true if `<list>` contains `<var>`
365
+ # - `selectByName: <list>.selectByName(<string>)` -> returns the attribute
366
+ # in
367
+ # `<list>` with the given `<string>` name, otherwise returns empty.
368
+ # - `emitAs: <attribute>.emitAs(<string>)` -> sets the `<attribute>` name
369
+ # field to the given `<string>` for propagation in selected output
370
+ # credentials.
371
+ # - `strict: <attribute>.strict()` -> ignore the `x-goog-iap-attr-` prefix
372
+ # for the provided `<attribute>` when propagating via the `HEADER` output
373
+ # credential, i.e. request headers.
374
+ # - `append: <target_list>.append(<attribute>)` OR
375
+ # `<target_list>.append(<list>)` -> append the provided `<attribute>` or
376
+ # `<list>` onto the end of `<target_list>`.
377
+ #
378
+ # Example expression: `attributes.saml_attributes.filter(x, x.name in
379
+ # ['test']).append(attributes.iap_attributes.selectByName('exact').emitAs('custom').strict())`
380
+ # @!attribute [rw] output_credentials
381
+ # @return [::Array<::Google::Cloud::Iap::V1::AttributePropagationSettings::OutputCredentials>]
382
+ # Which output credentials attributes selected by the CEL expression should
383
+ # be propagated in. All attributes will be fully duplicated in each selected
384
+ # output credential.
385
+ # @!attribute [rw] enable
386
+ # @return [::Boolean]
387
+ # Whether the provided attribute propagation settings should be evaluated on
388
+ # user requests. If set to true, attributes returned from the expression will
389
+ # be propagated in the set output credentials.
390
+ class AttributePropagationSettings
391
+ include ::Google::Protobuf::MessageExts
392
+ extend ::Google::Protobuf::MessageExts::ClassMethods
393
+
394
+ # Supported output credentials for attribute propagation. Each output
395
+ # credential maps to a "field" in the response. For example, selecting JWT
396
+ # will propagate all attributes in the IAP JWT, header in the headers, etc.
397
+ module OutputCredentials
398
+ # No output credential. This is an unsupported default.
399
+ OUTPUT_CREDENTIALS_UNSPECIFIED = 0
400
+
401
+ # Propagate attributes in the headers with "x-goog-iap-attr-" prefix.
402
+ HEADER = 1
403
+
404
+ # Propagate attributes in the JWT of the form: `"additional_claims": {
405
+ # "my_attribute": ["value1", "value2"] }`
406
+ JWT = 2
407
+
408
+ # Propagate attributes in the RCToken of the form: `"additional_claims": {
409
+ # "my_attribute": ["value1", "value2"] }`
410
+ RCTOKEN = 3
411
+ end
412
+ end
413
+
334
414
  # The request sent to ListBrands.
335
415
  # @!attribute [rw] parent
336
416
  # @return [::String]