google-api-client 0.36.0 → 0.36.1

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.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +69 -0
  3. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  4. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -1
  5. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  6. data/generated/google/apis/androidmanagement_v1/classes.rb +7 -4
  7. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  8. data/generated/google/apis/androidpublisher_v3/classes.rb +32 -32
  9. data/generated/google/apis/androidpublisher_v3/representations.rb +17 -17
  10. data/generated/google/apis/bigquery_v2.rb +1 -1
  11. data/generated/google/apis/bigquery_v2/classes.rb +2 -1
  12. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  13. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +81 -41
  14. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +2 -0
  15. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +8 -8
  16. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  17. data/generated/google/apis/bigquerydatatransfer_v1/service.rb +60 -30
  18. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  19. data/generated/google/apis/bigtableadmin_v2/classes.rb +75 -40
  20. data/generated/google/apis/bigtableadmin_v2/service.rb +1 -1
  21. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  22. data/generated/google/apis/binaryauthorization_v1/classes.rb +75 -41
  23. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  24. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +75 -41
  25. data/generated/google/apis/chat_v1.rb +1 -1
  26. data/generated/google/apis/chat_v1/service.rb +5 -2
  27. data/generated/google/apis/cloudasset_v1.rb +1 -1
  28. data/generated/google/apis/cloudasset_v1/classes.rb +206 -0
  29. data/generated/google/apis/cloudasset_v1/representations.rb +101 -0
  30. data/generated/google/apis/cloudasset_v1/service.rb +174 -0
  31. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  32. data/generated/google/apis/cloudbilling_v1/classes.rb +59 -41
  33. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  34. data/generated/google/apis/cloudbuild_v1/classes.rb +9 -5
  35. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  36. data/generated/google/apis/cloudfunctions_v1/classes.rb +75 -41
  37. data/generated/google/apis/cloudiot_v1.rb +1 -1
  38. data/generated/google/apis/cloudiot_v1/classes.rb +75 -41
  39. data/generated/google/apis/cloudkms_v1.rb +1 -1
  40. data/generated/google/apis/cloudkms_v1/classes.rb +104 -41
  41. data/generated/google/apis/cloudkms_v1/representations.rb +15 -0
  42. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  43. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +75 -41
  44. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  45. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +75 -41
  46. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +1 -1
  47. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  48. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +75 -41
  49. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  50. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +75 -41
  51. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  52. data/generated/google/apis/cloudsearch_v1/classes.rb +3 -2
  53. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  54. data/generated/google/apis/cloudtasks_v2/classes.rb +81 -47
  55. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  56. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +75 -41
  57. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  58. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +81 -47
  59. data/generated/google/apis/cloudtrace_v2.rb +1 -1
  60. data/generated/google/apis/cloudtrace_v2/classes.rb +5 -3
  61. data/generated/google/apis/compute_alpha.rb +1 -1
  62. data/generated/google/apis/compute_alpha/classes.rb +68 -47
  63. data/generated/google/apis/compute_alpha/representations.rb +2 -1
  64. data/generated/google/apis/compute_alpha/service.rb +54 -0
  65. data/generated/google/apis/compute_beta.rb +1 -1
  66. data/generated/google/apis/compute_beta/classes.rb +597 -40
  67. data/generated/google/apis/compute_beta/representations.rb +164 -0
  68. data/generated/google/apis/compute_beta/service.rb +343 -1
  69. data/generated/google/apis/compute_v1.rb +1 -1
  70. data/generated/google/apis/compute_v1/classes.rb +54 -39
  71. data/generated/google/apis/compute_v1/representations.rb +1 -0
  72. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  73. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +75 -41
  74. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  75. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +77 -43
  76. data/generated/google/apis/containeranalysis_v1beta1/service.rb +26 -20
  77. data/generated/google/apis/content_v2.rb +1 -1
  78. data/generated/google/apis/content_v2/classes.rb +46 -42
  79. data/generated/google/apis/content_v2_1.rb +1 -1
  80. data/generated/google/apis/content_v2_1/classes.rb +46 -42
  81. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  82. data/generated/google/apis/datacatalog_v1beta1/classes.rb +75 -41
  83. data/generated/google/apis/datastore_v1.rb +1 -1
  84. data/generated/google/apis/datastore_v1/classes.rb +16 -22
  85. data/generated/google/apis/datastore_v1/service.rb +10 -10
  86. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  87. data/generated/google/apis/datastore_v1beta3/classes.rb +5 -4
  88. data/generated/google/apis/datastore_v1beta3/service.rb +8 -8
  89. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  90. data/generated/google/apis/dfareporting_v3_4/classes.rb +88 -88
  91. data/generated/google/apis/dfareporting_v3_4/representations.rb +39 -39
  92. data/generated/google/apis/dialogflow_v2.rb +1 -1
  93. data/generated/google/apis/dialogflow_v2/classes.rb +1 -1
  94. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  95. data/generated/google/apis/dialogflow_v2beta1/classes.rb +1 -1
  96. data/generated/google/apis/dlp_v2.rb +1 -1
  97. data/generated/google/apis/dlp_v2/classes.rb +77 -0
  98. data/generated/google/apis/dlp_v2/representations.rb +42 -0
  99. data/generated/google/apis/file_v1.rb +1 -1
  100. data/generated/google/apis/file_v1/classes.rb +59 -12
  101. data/generated/google/apis/file_v1/representations.rb +19 -2
  102. data/generated/google/apis/file_v1/service.rb +8 -4
  103. data/generated/google/apis/file_v1beta1.rb +1 -1
  104. data/generated/google/apis/file_v1beta1/classes.rb +59 -12
  105. data/generated/google/apis/file_v1beta1/representations.rb +19 -2
  106. data/generated/google/apis/file_v1beta1/service.rb +8 -4
  107. data/generated/google/apis/firebaserules_v1.rb +1 -1
  108. data/generated/google/apis/firebaserules_v1/classes.rb +75 -0
  109. data/generated/google/apis/firebaserules_v1/representations.rb +35 -0
  110. data/generated/google/apis/gmail_v1.rb +1 -1
  111. data/generated/google/apis/gmail_v1/classes.rb +6 -2
  112. data/generated/google/apis/iamcredentials_v1.rb +1 -1
  113. data/generated/google/apis/iamcredentials_v1/classes.rb +7 -4
  114. data/generated/google/apis/iamcredentials_v1/service.rb +4 -4
  115. data/generated/google/apis/iap_v1.rb +1 -1
  116. data/generated/google/apis/iap_v1/classes.rb +225 -40
  117. data/generated/google/apis/iap_v1/representations.rb +84 -0
  118. data/generated/google/apis/iap_v1/service.rb +292 -0
  119. data/generated/google/apis/iap_v1beta1.rb +1 -1
  120. data/generated/google/apis/iap_v1beta1/classes.rb +75 -40
  121. data/generated/google/apis/logging_v2.rb +1 -1
  122. data/generated/google/apis/logging_v2/classes.rb +29 -41
  123. data/generated/google/apis/ml_v1.rb +1 -1
  124. data/generated/google/apis/ml_v1/classes.rb +14 -21
  125. data/generated/google/apis/ml_v1/service.rb +15 -18
  126. data/generated/google/apis/monitoring_v1.rb +1 -1
  127. data/generated/google/apis/monitoring_v1/classes.rb +15 -11
  128. data/generated/google/apis/monitoring_v3.rb +1 -1
  129. data/generated/google/apis/monitoring_v3/classes.rb +6 -10
  130. data/generated/google/apis/monitoring_v3/representations.rb +0 -1
  131. data/generated/google/apis/{fusiontables_v1.rb → policytroubleshooter_v1.rb} +10 -13
  132. data/generated/google/apis/policytroubleshooter_v1/classes.rb +700 -0
  133. data/generated/google/apis/policytroubleshooter_v1/representations.rb +203 -0
  134. data/generated/google/apis/policytroubleshooter_v1/service.rb +90 -0
  135. data/generated/google/apis/pubsub_v1.rb +1 -1
  136. data/generated/google/apis/pubsub_v1/classes.rb +75 -41
  137. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  138. data/generated/google/apis/pubsub_v1beta2/classes.rb +75 -41
  139. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  140. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +1 -1
  141. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  142. data/generated/google/apis/remotebuildexecution_v2/classes.rb +1 -1
  143. data/generated/google/apis/run_v1.rb +1 -1
  144. data/generated/google/apis/run_v1/classes.rb +75 -41
  145. data/generated/google/apis/run_v1alpha1.rb +1 -1
  146. data/generated/google/apis/run_v1alpha1/classes.rb +82 -41
  147. data/generated/google/apis/run_v1alpha1/representations.rb +2 -0
  148. data/generated/google/apis/{fusiontables_v2.rb → secretmanager_v1beta1.rb} +11 -14
  149. data/generated/google/apis/secretmanager_v1beta1/classes.rb +936 -0
  150. data/generated/google/apis/secretmanager_v1beta1/representations.rb +388 -0
  151. data/generated/google/apis/secretmanager_v1beta1/service.rb +674 -0
  152. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  153. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +85 -1
  154. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +32 -0
  155. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  156. data/generated/google/apis/servicecontrol_v1/classes.rb +4 -3
  157. data/generated/google/apis/servicecontrol_v1/service.rb +2 -1
  158. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  159. data/generated/google/apis/servicenetworking_v1/classes.rb +38 -1
  160. data/generated/google/apis/servicenetworking_v1/representations.rb +14 -0
  161. data/generated/google/apis/servicenetworking_v1/service.rb +35 -0
  162. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  163. data/generated/google/apis/servicenetworking_v1beta/classes.rb +16 -1
  164. data/generated/google/apis/servicenetworking_v1beta/representations.rb +1 -0
  165. data/generated/google/apis/serviceusage_v1.rb +1 -1
  166. data/generated/google/apis/serviceusage_v1/classes.rb +16 -1
  167. data/generated/google/apis/serviceusage_v1/representations.rb +1 -0
  168. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  169. data/generated/google/apis/serviceusage_v1beta1/classes.rb +16 -1
  170. data/generated/google/apis/serviceusage_v1beta1/representations.rb +1 -0
  171. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  172. data/generated/google/apis/storagetransfer_v1/service.rb +4 -2
  173. data/generated/google/apis/testing_v1.rb +1 -1
  174. data/generated/google/apis/testing_v1/classes.rb +2 -2
  175. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  176. data/generated/google/apis/toolresults_v1beta3/classes.rb +374 -2
  177. data/generated/google/apis/toolresults_v1beta3/representations.rb +109 -0
  178. data/generated/google/apis/toolresults_v1beta3/service.rb +98 -0
  179. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  180. data/lib/google/apis/version.rb +1 -1
  181. metadata +11 -11
  182. data/generated/google/apis/fusiontables_v1/classes.rb +0 -977
  183. data/generated/google/apis/fusiontables_v1/representations.rb +0 -449
  184. data/generated/google/apis/fusiontables_v1/service.rb +0 -1307
  185. data/generated/google/apis/fusiontables_v2/classes.rb +0 -1049
  186. data/generated/google/apis/fusiontables_v2/representations.rb +0 -457
  187. data/generated/google/apis/fusiontables_v2/service.rb +0 -1431
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/kms/
27
27
  module CloudkmsV1
28
28
  VERSION = 'V1'
29
- REVISION = '20191118'
29
+ REVISION = '20191210'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -242,6 +242,23 @@ module Google
242
242
  # account. For example, `my-other-app@appspot.gserviceaccount.com`.
243
243
  # * `group:`emailid``: An email address that represents a Google group.
244
244
  # For example, `admins@example.com`.
245
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
246
+ # identifier) representing a user that has been recently deleted. For
247
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
248
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
249
+ # retains the role in the binding.
250
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
251
+ # unique identifier) representing a service account that has been recently
252
+ # deleted. For example,
253
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
254
+ # If the service account is undeleted, this value reverts to
255
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
256
+ # role in the binding.
257
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
258
+ # identifier) representing a Google group that has been recently
259
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
260
+ # the group is recovered, this value reverts to `group:`emailid`` and the
261
+ # recovered group retains the role in the binding.
245
262
  # * `domain:`domain``: The G Suite domain (primary) that represents all the
246
263
  # users of that domain. For example, `google.com` or `example.com`.
247
264
  # Corresponds to the JSON property `members`
@@ -400,6 +417,13 @@ module Google
400
417
  # @return [String]
401
418
  attr_accessor :destroy_time
402
419
 
420
+ # [ExternalProtectionLevelOptions] stores a group of additional fields for
421
+ # configuring a [CryptoKeyVersion] that are specific to the [EXTERNAL]
422
+ # protection level.
423
+ # Corresponds to the JSON property `externalProtectionLevelOptions`
424
+ # @return [Google::Apis::CloudkmsV1::ExternalProtectionLevelOptions]
425
+ attr_accessor :external_protection_level_options
426
+
403
427
  # Output only. The time this CryptoKeyVersion's key material was
404
428
  # generated.
405
429
  # Corresponds to the JSON property `generateTime`
@@ -454,6 +478,7 @@ module Google
454
478
  @create_time = args[:create_time] if args.key?(:create_time)
455
479
  @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time)
456
480
  @destroy_time = args[:destroy_time] if args.key?(:destroy_time)
481
+ @external_protection_level_options = args[:external_protection_level_options] if args.key?(:external_protection_level_options)
457
482
  @generate_time = args[:generate_time] if args.key?(:generate_time)
458
483
  @import_failure_reason = args[:import_failure_reason] if args.key?(:import_failure_reason)
459
484
  @import_job = args[:import_job] if args.key?(:import_job)
@@ -708,6 +733,27 @@ module Google
708
733
  end
709
734
  end
710
735
 
736
+ # [ExternalProtectionLevelOptions] stores a group of additional fields for
737
+ # configuring a [CryptoKeyVersion] that are specific to the [EXTERNAL]
738
+ # protection level.
739
+ class ExternalProtectionLevelOptions
740
+ include Google::Apis::Core::Hashable
741
+
742
+ # The URI for an external resource that this CryptoKeyVersion represents.
743
+ # Corresponds to the JSON property `externalKeyUri`
744
+ # @return [String]
745
+ attr_accessor :external_key_uri
746
+
747
+ def initialize(**args)
748
+ update!(**args)
749
+ end
750
+
751
+ # Update properties of this object
752
+ def update!(**args)
753
+ @external_key_uri = args[:external_key_uri] if args.key?(:external_key_uri)
754
+ end
755
+ end
756
+
711
757
  # Request message for KeyManagementService.ImportCryptoKeyVersion.
712
758
  class ImportCryptoKeyVersionRequest
713
759
  include Google::Apis::Core::Hashable
@@ -1148,16 +1194,18 @@ module Google
1148
1194
  end
1149
1195
  end
1150
1196
 
1151
- # Defines an Identity and Access Management (IAM) policy. It is used to
1152
- # specify access control policies for Cloud Platform resources.
1197
+ # An Identity and Access Management (IAM) policy, which specifies access
1198
+ # controls for Google Cloud resources.
1153
1199
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1154
1200
  # `members` to a single `role`. Members can be user accounts, service accounts,
1155
1201
  # Google groups, and domains (such as G Suite). A `role` is a named list of
1156
- # permissions (defined by IAM or configured by users). A `binding` can
1157
- # optionally specify a `condition`, which is a logic expression that further
1158
- # constrains the role binding based on attributes about the request and/or
1159
- # target resource.
1160
- # **JSON Example**
1202
+ # permissions; each `role` can be an IAM predefined role or a user-created
1203
+ # custom role.
1204
+ # Optionally, a `binding` can specify a `condition`, which is a logical
1205
+ # expression that allows access to a resource only if the expression evaluates
1206
+ # to `true`. A condition can add constraints based on attributes of the
1207
+ # request, the resource, or both.
1208
+ # **JSON example:**
1161
1209
  # `
1162
1210
  # "bindings": [
1163
1211
  # `
@@ -1175,13 +1223,15 @@ module Google
1175
1223
  # "condition": `
1176
1224
  # "title": "expirable access",
1177
1225
  # "description": "Does not grant access after Sep 2020",
1178
- # "expression": "request.time <
1179
- # timestamp('2020-10-01T00:00:00.000Z')",
1226
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1227
+ # ",
1180
1228
  # `
1181
1229
  # `
1182
- # ]
1230
+ # ],
1231
+ # "etag": "BwWWja0YfJA=",
1232
+ # "version": 3
1183
1233
  # `
1184
- # **YAML Example**
1234
+ # **YAML example:**
1185
1235
  # bindings:
1186
1236
  # - members:
1187
1237
  # - user:mike@example.com
@@ -1196,8 +1246,10 @@ module Google
1196
1246
  # title: expirable access
1197
1247
  # description: Does not grant access after Sep 2020
1198
1248
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1249
+ # - etag: BwWWja0YfJA=
1250
+ # - version: 3
1199
1251
  # For a description of IAM and its features, see the
1200
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
1252
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
1201
1253
  class Policy
1202
1254
  include Google::Apis::Core::Hashable
1203
1255
 
@@ -1206,9 +1258,9 @@ module Google
1206
1258
  # @return [Array<Google::Apis::CloudkmsV1::AuditConfig>]
1207
1259
  attr_accessor :audit_configs
1208
1260
 
1209
- # Associates a list of `members` to a `role`. Optionally may specify a
1210
- # `condition` that determines when binding is in effect.
1211
- # `bindings` with no members will result in an error.
1261
+ # Associates a list of `members` to a `role`. Optionally, may specify a
1262
+ # `condition` that determines how and when the `bindings` are applied. Each
1263
+ # of the `bindings` must contain at least one member.
1212
1264
  # Corresponds to the JSON property `bindings`
1213
1265
  # @return [Array<Google::Apis::CloudkmsV1::Binding>]
1214
1266
  attr_accessor :bindings
@@ -1220,26 +1272,31 @@ module Google
1220
1272
  # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1221
1273
  # systems are expected to put that etag in the request to `setIamPolicy` to
1222
1274
  # ensure that their change will be applied to the same version of the policy.
1223
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1224
- # policy is overwritten. Due to blind-set semantics of an etag-less policy,
1225
- # 'setIamPolicy' will not fail even if the incoming policy version does not
1226
- # meet the requirements for modifying the stored policy.
1275
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1276
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1277
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1278
+ # the conditions in the version `3` policy are lost.
1227
1279
  # Corresponds to the JSON property `etag`
1228
1280
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
1229
1281
  # @return [String]
1230
1282
  attr_accessor :etag
1231
1283
 
1232
1284
  # Specifies the format of the policy.
1233
- # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1234
- # rejected.
1235
- # Operations affecting conditional bindings must specify version 3. This can
1236
- # be either setting a conditional policy, modifying a conditional binding,
1237
- # or removing a binding (conditional or unconditional) from the stored
1238
- # conditional policy.
1239
- # Operations on non-conditional policies may specify any valid value or
1240
- # leave the field unset.
1241
- # If no etag is provided in the call to `setIamPolicy`, version compliance
1242
- # checks against the stored policy is skipped.
1285
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1286
+ # are rejected.
1287
+ # Any operation that affects conditional role bindings must specify version
1288
+ # `3`. This requirement applies to the following operations:
1289
+ # * Getting a policy that includes a conditional role binding
1290
+ # * Adding a conditional role binding to a policy
1291
+ # * Changing a conditional role binding in a policy
1292
+ # * Removing any role binding, with or without a condition, from a policy
1293
+ # that includes conditions
1294
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1295
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1296
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1297
+ # the conditions in the version `3` policy are lost.
1298
+ # If a policy does not include any conditions, operations on that policy may
1299
+ # specify any valid version or leave the field unset.
1243
1300
  # Corresponds to the JSON property `version`
1244
1301
  # @return [Fixnum]
1245
1302
  attr_accessor :version
@@ -1305,16 +1362,18 @@ module Google
1305
1362
  class SetIamPolicyRequest
1306
1363
  include Google::Apis::Core::Hashable
1307
1364
 
1308
- # Defines an Identity and Access Management (IAM) policy. It is used to
1309
- # specify access control policies for Cloud Platform resources.
1365
+ # An Identity and Access Management (IAM) policy, which specifies access
1366
+ # controls for Google Cloud resources.
1310
1367
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1311
1368
  # `members` to a single `role`. Members can be user accounts, service accounts,
1312
1369
  # Google groups, and domains (such as G Suite). A `role` is a named list of
1313
- # permissions (defined by IAM or configured by users). A `binding` can
1314
- # optionally specify a `condition`, which is a logic expression that further
1315
- # constrains the role binding based on attributes about the request and/or
1316
- # target resource.
1317
- # **JSON Example**
1370
+ # permissions; each `role` can be an IAM predefined role or a user-created
1371
+ # custom role.
1372
+ # Optionally, a `binding` can specify a `condition`, which is a logical
1373
+ # expression that allows access to a resource only if the expression evaluates
1374
+ # to `true`. A condition can add constraints based on attributes of the
1375
+ # request, the resource, or both.
1376
+ # **JSON example:**
1318
1377
  # `
1319
1378
  # "bindings": [
1320
1379
  # `
@@ -1332,13 +1391,15 @@ module Google
1332
1391
  # "condition": `
1333
1392
  # "title": "expirable access",
1334
1393
  # "description": "Does not grant access after Sep 2020",
1335
- # "expression": "request.time <
1336
- # timestamp('2020-10-01T00:00:00.000Z')",
1394
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1395
+ # ",
1337
1396
  # `
1338
1397
  # `
1339
- # ]
1398
+ # ],
1399
+ # "etag": "BwWWja0YfJA=",
1400
+ # "version": 3
1340
1401
  # `
1341
- # **YAML Example**
1402
+ # **YAML example:**
1342
1403
  # bindings:
1343
1404
  # - members:
1344
1405
  # - user:mike@example.com
@@ -1353,8 +1414,10 @@ module Google
1353
1414
  # title: expirable access
1354
1415
  # description: Does not grant access after Sep 2020
1355
1416
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1417
+ # - etag: BwWWja0YfJA=
1418
+ # - version: 3
1356
1419
  # For a description of IAM and its features, see the
1357
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
1420
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
1358
1421
  # Corresponds to the JSON property `policy`
1359
1422
  # @return [Google::Apis::CloudkmsV1::Policy]
1360
1423
  attr_accessor :policy
@@ -124,6 +124,12 @@ module Google
124
124
  include Google::Apis::Core::JsonObjectSupport
125
125
  end
126
126
 
127
+ class ExternalProtectionLevelOptions
128
+ class Representation < Google::Apis::Core::JsonRepresentation; end
129
+
130
+ include Google::Apis::Core::JsonObjectSupport
131
+ end
132
+
127
133
  class ImportCryptoKeyVersionRequest
128
134
  class Representation < Google::Apis::Core::JsonRepresentation; end
129
135
 
@@ -319,6 +325,8 @@ module Google
319
325
  property :create_time, as: 'createTime'
320
326
  property :destroy_event_time, as: 'destroyEventTime'
321
327
  property :destroy_time, as: 'destroyTime'
328
+ property :external_protection_level_options, as: 'externalProtectionLevelOptions', class: Google::Apis::CloudkmsV1::ExternalProtectionLevelOptions, decorator: Google::Apis::CloudkmsV1::ExternalProtectionLevelOptions::Representation
329
+
322
330
  property :generate_time, as: 'generateTime'
323
331
  property :import_failure_reason, as: 'importFailureReason'
324
332
  property :import_job, as: 'importJob'
@@ -393,6 +401,13 @@ module Google
393
401
  end
394
402
  end
395
403
 
404
+ class ExternalProtectionLevelOptions
405
+ # @private
406
+ class Representation < Google::Apis::Core::JsonRepresentation
407
+ property :external_key_uri, as: 'externalKeyUri'
408
+ end
409
+ end
410
+
396
411
  class ImportCryptoKeyVersionRequest
397
412
  # @private
398
413
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/resource-manager
27
27
  module CloudresourcemanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20191115'
29
+ REVISION = '20191206'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -184,6 +184,23 @@ module Google
184
184
  # account. For example, `my-other-app@appspot.gserviceaccount.com`.
185
185
  # * `group:`emailid``: An email address that represents a Google group.
186
186
  # For example, `admins@example.com`.
187
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
188
+ # identifier) representing a user that has been recently deleted. For
189
+ # example, `alice@example.com?uid=123456789012345678901`. If the user is
190
+ # recovered, this value reverts to `user:`emailid`` and the recovered user
191
+ # retains the role in the binding.
192
+ # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus
193
+ # unique identifier) representing a service account that has been recently
194
+ # deleted. For example,
195
+ # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
196
+ # If the service account is undeleted, this value reverts to
197
+ # `serviceAccount:`emailid`` and the undeleted service account retains the
198
+ # role in the binding.
199
+ # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
200
+ # identifier) representing a Google group that has been recently
201
+ # deleted. For example, `admins@example.com?uid=123456789012345678901`. If
202
+ # the group is recovered, this value reverts to `group:`emailid`` and the
203
+ # recovered group retains the role in the binding.
187
204
  # * `domain:`domain``: The G Suite domain (primary) that represents all the
188
205
  # users of that domain. For example, `google.com` or `example.com`.
189
206
  # Corresponds to the JSON property `members`
@@ -1289,16 +1306,18 @@ module Google
1289
1306
  end
1290
1307
  end
1291
1308
 
1292
- # Defines an Identity and Access Management (IAM) policy. It is used to
1293
- # specify access control policies for Cloud Platform resources.
1309
+ # An Identity and Access Management (IAM) policy, which specifies access
1310
+ # controls for Google Cloud resources.
1294
1311
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1295
1312
  # `members` to a single `role`. Members can be user accounts, service accounts,
1296
1313
  # Google groups, and domains (such as G Suite). A `role` is a named list of
1297
- # permissions (defined by IAM or configured by users). A `binding` can
1298
- # optionally specify a `condition`, which is a logic expression that further
1299
- # constrains the role binding based on attributes about the request and/or
1300
- # target resource.
1301
- # **JSON Example**
1314
+ # permissions; each `role` can be an IAM predefined role or a user-created
1315
+ # custom role.
1316
+ # Optionally, a `binding` can specify a `condition`, which is a logical
1317
+ # expression that allows access to a resource only if the expression evaluates
1318
+ # to `true`. A condition can add constraints based on attributes of the
1319
+ # request, the resource, or both.
1320
+ # **JSON example:**
1302
1321
  # `
1303
1322
  # "bindings": [
1304
1323
  # `
@@ -1316,13 +1335,15 @@ module Google
1316
1335
  # "condition": `
1317
1336
  # "title": "expirable access",
1318
1337
  # "description": "Does not grant access after Sep 2020",
1319
- # "expression": "request.time <
1320
- # timestamp('2020-10-01T00:00:00.000Z')",
1338
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1339
+ # ",
1321
1340
  # `
1322
1341
  # `
1323
- # ]
1342
+ # ],
1343
+ # "etag": "BwWWja0YfJA=",
1344
+ # "version": 3
1324
1345
  # `
1325
- # **YAML Example**
1346
+ # **YAML example:**
1326
1347
  # bindings:
1327
1348
  # - members:
1328
1349
  # - user:mike@example.com
@@ -1337,8 +1358,10 @@ module Google
1337
1358
  # title: expirable access
1338
1359
  # description: Does not grant access after Sep 2020
1339
1360
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1361
+ # - etag: BwWWja0YfJA=
1362
+ # - version: 3
1340
1363
  # For a description of IAM and its features, see the
1341
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
1364
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
1342
1365
  class Policy
1343
1366
  include Google::Apis::Core::Hashable
1344
1367
 
@@ -1347,9 +1370,9 @@ module Google
1347
1370
  # @return [Array<Google::Apis::CloudresourcemanagerV1::AuditConfig>]
1348
1371
  attr_accessor :audit_configs
1349
1372
 
1350
- # Associates a list of `members` to a `role`. Optionally may specify a
1351
- # `condition` that determines when binding is in effect.
1352
- # `bindings` with no members will result in an error.
1373
+ # Associates a list of `members` to a `role`. Optionally, may specify a
1374
+ # `condition` that determines how and when the `bindings` are applied. Each
1375
+ # of the `bindings` must contain at least one member.
1353
1376
  # Corresponds to the JSON property `bindings`
1354
1377
  # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
1355
1378
  attr_accessor :bindings
@@ -1361,26 +1384,31 @@ module Google
1361
1384
  # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1362
1385
  # systems are expected to put that etag in the request to `setIamPolicy` to
1363
1386
  # ensure that their change will be applied to the same version of the policy.
1364
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1365
- # policy is overwritten. Due to blind-set semantics of an etag-less policy,
1366
- # 'setIamPolicy' will not fail even if the incoming policy version does not
1367
- # meet the requirements for modifying the stored policy.
1387
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1388
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1389
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1390
+ # the conditions in the version `3` policy are lost.
1368
1391
  # Corresponds to the JSON property `etag`
1369
1392
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
1370
1393
  # @return [String]
1371
1394
  attr_accessor :etag
1372
1395
 
1373
1396
  # Specifies the format of the policy.
1374
- # Valid values are 0, 1, and 3. Requests specifying an invalid value will be
1375
- # rejected.
1376
- # Operations affecting conditional bindings must specify version 3. This can
1377
- # be either setting a conditional policy, modifying a conditional binding,
1378
- # or removing a binding (conditional or unconditional) from the stored
1379
- # conditional policy.
1380
- # Operations on non-conditional policies may specify any valid value or
1381
- # leave the field unset.
1382
- # If no etag is provided in the call to `setIamPolicy`, version compliance
1383
- # checks against the stored policy is skipped.
1397
+ # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value
1398
+ # are rejected.
1399
+ # Any operation that affects conditional role bindings must specify version
1400
+ # `3`. This requirement applies to the following operations:
1401
+ # * Getting a policy that includes a conditional role binding
1402
+ # * Adding a conditional role binding to a policy
1403
+ # * Changing a conditional role binding in a policy
1404
+ # * Removing any role binding, with or without a condition, from a policy
1405
+ # that includes conditions
1406
+ # **Important:** If you use IAM Conditions, you must include the `etag` field
1407
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows
1408
+ # you to overwrite a version `3` policy with a version `1` policy, and all of
1409
+ # the conditions in the version `3` policy are lost.
1410
+ # If a policy does not include any conditions, operations on that policy may
1411
+ # specify any valid version or leave the field unset.
1384
1412
  # Corresponds to the JSON property `version`
1385
1413
  # @return [Fixnum]
1386
1414
  attr_accessor :version
@@ -1648,16 +1676,18 @@ module Google
1648
1676
  class SetIamPolicyRequest
1649
1677
  include Google::Apis::Core::Hashable
1650
1678
 
1651
- # Defines an Identity and Access Management (IAM) policy. It is used to
1652
- # specify access control policies for Cloud Platform resources.
1679
+ # An Identity and Access Management (IAM) policy, which specifies access
1680
+ # controls for Google Cloud resources.
1653
1681
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
1654
1682
  # `members` to a single `role`. Members can be user accounts, service accounts,
1655
1683
  # Google groups, and domains (such as G Suite). A `role` is a named list of
1656
- # permissions (defined by IAM or configured by users). A `binding` can
1657
- # optionally specify a `condition`, which is a logic expression that further
1658
- # constrains the role binding based on attributes about the request and/or
1659
- # target resource.
1660
- # **JSON Example**
1684
+ # permissions; each `role` can be an IAM predefined role or a user-created
1685
+ # custom role.
1686
+ # Optionally, a `binding` can specify a `condition`, which is a logical
1687
+ # expression that allows access to a resource only if the expression evaluates
1688
+ # to `true`. A condition can add constraints based on attributes of the
1689
+ # request, the resource, or both.
1690
+ # **JSON example:**
1661
1691
  # `
1662
1692
  # "bindings": [
1663
1693
  # `
@@ -1675,13 +1705,15 @@ module Google
1675
1705
  # "condition": `
1676
1706
  # "title": "expirable access",
1677
1707
  # "description": "Does not grant access after Sep 2020",
1678
- # "expression": "request.time <
1679
- # timestamp('2020-10-01T00:00:00.000Z')",
1708
+ # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')
1709
+ # ",
1680
1710
  # `
1681
1711
  # `
1682
- # ]
1712
+ # ],
1713
+ # "etag": "BwWWja0YfJA=",
1714
+ # "version": 3
1683
1715
  # `
1684
- # **YAML Example**
1716
+ # **YAML example:**
1685
1717
  # bindings:
1686
1718
  # - members:
1687
1719
  # - user:mike@example.com
@@ -1696,8 +1728,10 @@ module Google
1696
1728
  # title: expirable access
1697
1729
  # description: Does not grant access after Sep 2020
1698
1730
  # expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
1731
+ # - etag: BwWWja0YfJA=
1732
+ # - version: 3
1699
1733
  # For a description of IAM and its features, see the
1700
- # [IAM developer's guide](https://cloud.google.com/iam/docs).
1734
+ # [IAM documentation](https://cloud.google.com/iam/docs/).
1701
1735
  # Corresponds to the JSON property `policy`
1702
1736
  # @return [Google::Apis::CloudresourcemanagerV1::Policy]
1703
1737
  attr_accessor :policy