google-apis-kmsinventory_v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,556 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module KmsinventoryV1
24
+
25
+ # Response message for KeyDashboardService.ListCryptoKeys.
26
+ class GoogleCloudKmsInventoryV1ListCryptoKeysResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The list of CryptoKeys.
30
+ # Corresponds to the JSON property `cryptoKeys`
31
+ # @return [Array<Google::Apis::KmsinventoryV1::GoogleCloudKmsV1CryptoKey>]
32
+ attr_accessor :crypto_keys
33
+
34
+ # The page token returned from the previous response if the next page is desired.
35
+ # Corresponds to the JSON property `nextPageToken`
36
+ # @return [String]
37
+ attr_accessor :next_page_token
38
+
39
+ def initialize(**args)
40
+ update!(**args)
41
+ end
42
+
43
+ # Update properties of this object
44
+ def update!(**args)
45
+ @crypto_keys = args[:crypto_keys] if args.key?(:crypto_keys)
46
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
47
+ end
48
+ end
49
+
50
+ # Metadata about a resource protected by a Cloud KMS key.
51
+ class GoogleCloudKmsInventoryV1ProtectedResource
52
+ include Google::Apis::Core::Hashable
53
+
54
+ # The Cloud product that owns the resource. Example: `compute`
55
+ # Corresponds to the JSON property `cloudProduct`
56
+ # @return [String]
57
+ attr_accessor :cloud_product
58
+
59
+ # Output only. The time at which this resource was created. The granularity is
60
+ # in seconds. Timestamp.nanos will always be 0.
61
+ # Corresponds to the JSON property `createTime`
62
+ # @return [String]
63
+ attr_accessor :create_time
64
+
65
+ # The name of the Cloud KMS [CryptoKeyVersion](https://cloud.google.com/kms/docs/
66
+ # reference/rest/v1/projects.locations.keyRings.cryptoKeys.cryptoKeyVersions?hl=
67
+ # en) used to protect this resource via CMEK. This field may be empty if the
68
+ # Cloud product owning the resource does not provide key version data to Asset
69
+ # Inventory.
70
+ # Corresponds to the JSON property `cryptoKeyVersion`
71
+ # @return [String]
72
+ attr_accessor :crypto_key_version
73
+
74
+ # A key-value pair of the resource's labels (v1) to their values.
75
+ # Corresponds to the JSON property `labels`
76
+ # @return [Hash<String,String>]
77
+ attr_accessor :labels
78
+
79
+ # Location can be `global`, regional like `us-east1`, or zonal like `us-west1-b`.
80
+ # Corresponds to the JSON property `location`
81
+ # @return [String]
82
+ attr_accessor :location
83
+
84
+ # The full resource name of the resource. Example: `//compute.googleapis.com/
85
+ # projects/my_project_123/zones/zone1/instances/instance1`.
86
+ # Corresponds to the JSON property `name`
87
+ # @return [String]
88
+ attr_accessor :name
89
+
90
+ # Format: `projects/`PROJECT_NUMBER``.
91
+ # Corresponds to the JSON property `project`
92
+ # @return [String]
93
+ attr_accessor :project
94
+
95
+ # The ID of the project that owns the resource.
96
+ # Corresponds to the JSON property `projectId`
97
+ # @return [String]
98
+ attr_accessor :project_id
99
+
100
+ # Example: `compute.googleapis.com/Disk`
101
+ # Corresponds to the JSON property `resourceType`
102
+ # @return [String]
103
+ attr_accessor :resource_type
104
+
105
+ def initialize(**args)
106
+ update!(**args)
107
+ end
108
+
109
+ # Update properties of this object
110
+ def update!(**args)
111
+ @cloud_product = args[:cloud_product] if args.key?(:cloud_product)
112
+ @create_time = args[:create_time] if args.key?(:create_time)
113
+ @crypto_key_version = args[:crypto_key_version] if args.key?(:crypto_key_version)
114
+ @labels = args[:labels] if args.key?(:labels)
115
+ @location = args[:location] if args.key?(:location)
116
+ @name = args[:name] if args.key?(:name)
117
+ @project = args[:project] if args.key?(:project)
118
+ @project_id = args[:project_id] if args.key?(:project_id)
119
+ @resource_type = args[:resource_type] if args.key?(:resource_type)
120
+ end
121
+ end
122
+
123
+ # Aggregate information about the resources protected by a Cloud KMS key in the
124
+ # same Cloud organization as the key.
125
+ class GoogleCloudKmsInventoryV1ProtectedResourcesSummary
126
+ include Google::Apis::Core::Hashable
127
+
128
+ # The number of resources protected by the key grouped by Cloud product.
129
+ # Corresponds to the JSON property `cloudProducts`
130
+ # @return [Hash<String,Fixnum>]
131
+ attr_accessor :cloud_products
132
+
133
+ # The number of resources protected by the key grouped by region.
134
+ # Corresponds to the JSON property `locations`
135
+ # @return [Hash<String,Fixnum>]
136
+ attr_accessor :locations
137
+
138
+ # The full name of the ProtectedResourcesSummary resource. Example: projects/
139
+ # test-project/locations/us/keyRings/test-keyring/cryptoKeys/test-key/
140
+ # protectedResourcesSummary
141
+ # Corresponds to the JSON property `name`
142
+ # @return [String]
143
+ attr_accessor :name
144
+
145
+ # The number of distinct Cloud projects in the same Cloud organization as the
146
+ # key that have resources protected by the key.
147
+ # Corresponds to the JSON property `projectCount`
148
+ # @return [Fixnum]
149
+ attr_accessor :project_count
150
+
151
+ # The total number of protected resources in the same Cloud organization as the
152
+ # key.
153
+ # Corresponds to the JSON property `resourceCount`
154
+ # @return [Fixnum]
155
+ attr_accessor :resource_count
156
+
157
+ # The number of resources protected by the key grouped by resource type.
158
+ # Corresponds to the JSON property `resourceTypes`
159
+ # @return [Hash<String,Fixnum>]
160
+ attr_accessor :resource_types
161
+
162
+ def initialize(**args)
163
+ update!(**args)
164
+ end
165
+
166
+ # Update properties of this object
167
+ def update!(**args)
168
+ @cloud_products = args[:cloud_products] if args.key?(:cloud_products)
169
+ @locations = args[:locations] if args.key?(:locations)
170
+ @name = args[:name] if args.key?(:name)
171
+ @project_count = args[:project_count] if args.key?(:project_count)
172
+ @resource_count = args[:resource_count] if args.key?(:resource_count)
173
+ @resource_types = args[:resource_types] if args.key?(:resource_types)
174
+ end
175
+ end
176
+
177
+ # Response message for KeyTrackingService.SearchProtectedResources.
178
+ class GoogleCloudKmsInventoryV1SearchProtectedResourcesResponse
179
+ include Google::Apis::Core::Hashable
180
+
181
+ # A token that can be sent as `page_token` to retrieve the next page. If this
182
+ # field is omitted, there are no subsequent pages.
183
+ # Corresponds to the JSON property `nextPageToken`
184
+ # @return [String]
185
+ attr_accessor :next_page_token
186
+
187
+ # Protected resources for this page.
188
+ # Corresponds to the JSON property `protectedResources`
189
+ # @return [Array<Google::Apis::KmsinventoryV1::GoogleCloudKmsInventoryV1ProtectedResource>]
190
+ attr_accessor :protected_resources
191
+
192
+ def initialize(**args)
193
+ update!(**args)
194
+ end
195
+
196
+ # Update properties of this object
197
+ def update!(**args)
198
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
199
+ @protected_resources = args[:protected_resources] if args.key?(:protected_resources)
200
+ end
201
+ end
202
+
203
+ # A CryptoKey represents a logical key that can be used for cryptographic
204
+ # operations. A CryptoKey is made up of zero or more versions, which represent
205
+ # the actual key material used in cryptographic operations.
206
+ class GoogleCloudKmsV1CryptoKey
207
+ include Google::Apis::Core::Hashable
208
+
209
+ # Output only. The time at which this CryptoKey was created.
210
+ # Corresponds to the JSON property `createTime`
211
+ # @return [String]
212
+ attr_accessor :create_time
213
+
214
+ # Immutable. The resource name of the backend environment where the key material
215
+ # for all CryptoKeyVersions associated with this CryptoKey reside and where all
216
+ # related cryptographic operations are performed. Only applicable if
217
+ # CryptoKeyVersions have a ProtectionLevel of EXTERNAL_VPC, with the resource
218
+ # name in the format `projects/*/locations/*/ekmConnections/*`. Note, this list
219
+ # is non-exhaustive and may apply to additional ProtectionLevels in the future.
220
+ # Corresponds to the JSON property `cryptoKeyBackend`
221
+ # @return [String]
222
+ attr_accessor :crypto_key_backend
223
+
224
+ # Immutable. The period of time that versions of this key spend in the
225
+ # DESTROY_SCHEDULED state before transitioning to DESTROYED. If not specified at
226
+ # creation time, the default duration is 24 hours.
227
+ # Corresponds to the JSON property `destroyScheduledDuration`
228
+ # @return [String]
229
+ attr_accessor :destroy_scheduled_duration
230
+
231
+ # Immutable. Whether this key may contain imported versions only.
232
+ # Corresponds to the JSON property `importOnly`
233
+ # @return [Boolean]
234
+ attr_accessor :import_only
235
+ alias_method :import_only?, :import_only
236
+
237
+ # Labels with user-defined metadata. For more information, see [Labeling Keys](
238
+ # https://cloud.google.com/kms/docs/labeling-keys).
239
+ # Corresponds to the JSON property `labels`
240
+ # @return [Hash<String,String>]
241
+ attr_accessor :labels
242
+
243
+ # Output only. The resource name for this CryptoKey in the format `projects/*/
244
+ # locations/*/keyRings/*/cryptoKeys/*`.
245
+ # Corresponds to the JSON property `name`
246
+ # @return [String]
247
+ attr_accessor :name
248
+
249
+ # At next_rotation_time, the Key Management Service will automatically: 1.
250
+ # Create a new version of this CryptoKey. 2. Mark the new version as primary.
251
+ # Key rotations performed manually via CreateCryptoKeyVersion and
252
+ # UpdateCryptoKeyPrimaryVersion do not affect next_rotation_time. Keys with
253
+ # purpose ENCRYPT_DECRYPT support automatic rotation. For other keys, this field
254
+ # must be omitted.
255
+ # Corresponds to the JSON property `nextRotationTime`
256
+ # @return [String]
257
+ attr_accessor :next_rotation_time
258
+
259
+ # A CryptoKeyVersion represents an individual cryptographic key, and the
260
+ # associated key material. An ENABLED version can be used for cryptographic
261
+ # operations. For security reasons, the raw cryptographic key material
262
+ # represented by a CryptoKeyVersion can never be viewed or exported. It can only
263
+ # be used to encrypt, decrypt, or sign data when an authorized user or
264
+ # application invokes Cloud KMS.
265
+ # Corresponds to the JSON property `primary`
266
+ # @return [Google::Apis::KmsinventoryV1::GoogleCloudKmsV1CryptoKeyVersion]
267
+ attr_accessor :primary
268
+
269
+ # Immutable. The immutable purpose of this CryptoKey.
270
+ # Corresponds to the JSON property `purpose`
271
+ # @return [String]
272
+ attr_accessor :purpose
273
+
274
+ # next_rotation_time will be advanced by this period when the service
275
+ # automatically rotates a key. Must be at least 24 hours and at most 876,000
276
+ # hours. If rotation_period is set, next_rotation_time must also be set. Keys
277
+ # with purpose ENCRYPT_DECRYPT support automatic rotation. For other keys, this
278
+ # field must be omitted.
279
+ # Corresponds to the JSON property `rotationPeriod`
280
+ # @return [String]
281
+ attr_accessor :rotation_period
282
+
283
+ # A CryptoKeyVersionTemplate specifies the properties to use when creating a new
284
+ # CryptoKeyVersion, either manually with CreateCryptoKeyVersion or automatically
285
+ # as a result of auto-rotation.
286
+ # Corresponds to the JSON property `versionTemplate`
287
+ # @return [Google::Apis::KmsinventoryV1::GoogleCloudKmsV1CryptoKeyVersionTemplate]
288
+ attr_accessor :version_template
289
+
290
+ def initialize(**args)
291
+ update!(**args)
292
+ end
293
+
294
+ # Update properties of this object
295
+ def update!(**args)
296
+ @create_time = args[:create_time] if args.key?(:create_time)
297
+ @crypto_key_backend = args[:crypto_key_backend] if args.key?(:crypto_key_backend)
298
+ @destroy_scheduled_duration = args[:destroy_scheduled_duration] if args.key?(:destroy_scheduled_duration)
299
+ @import_only = args[:import_only] if args.key?(:import_only)
300
+ @labels = args[:labels] if args.key?(:labels)
301
+ @name = args[:name] if args.key?(:name)
302
+ @next_rotation_time = args[:next_rotation_time] if args.key?(:next_rotation_time)
303
+ @primary = args[:primary] if args.key?(:primary)
304
+ @purpose = args[:purpose] if args.key?(:purpose)
305
+ @rotation_period = args[:rotation_period] if args.key?(:rotation_period)
306
+ @version_template = args[:version_template] if args.key?(:version_template)
307
+ end
308
+ end
309
+
310
+ # A CryptoKeyVersion represents an individual cryptographic key, and the
311
+ # associated key material. An ENABLED version can be used for cryptographic
312
+ # operations. For security reasons, the raw cryptographic key material
313
+ # represented by a CryptoKeyVersion can never be viewed or exported. It can only
314
+ # be used to encrypt, decrypt, or sign data when an authorized user or
315
+ # application invokes Cloud KMS.
316
+ class GoogleCloudKmsV1CryptoKeyVersion
317
+ include Google::Apis::Core::Hashable
318
+
319
+ # Output only. The CryptoKeyVersionAlgorithm that this CryptoKeyVersion supports.
320
+ # Corresponds to the JSON property `algorithm`
321
+ # @return [String]
322
+ attr_accessor :algorithm
323
+
324
+ # Contains an HSM-generated attestation about a key operation. For more
325
+ # information, see [Verifying attestations] (https://cloud.google.com/kms/docs/
326
+ # attest-key).
327
+ # Corresponds to the JSON property `attestation`
328
+ # @return [Google::Apis::KmsinventoryV1::GoogleCloudKmsV1KeyOperationAttestation]
329
+ attr_accessor :attestation
330
+
331
+ # Output only. The time at which this CryptoKeyVersion was created.
332
+ # Corresponds to the JSON property `createTime`
333
+ # @return [String]
334
+ attr_accessor :create_time
335
+
336
+ # Output only. The time this CryptoKeyVersion's key material was destroyed. Only
337
+ # present if state is DESTROYED.
338
+ # Corresponds to the JSON property `destroyEventTime`
339
+ # @return [String]
340
+ attr_accessor :destroy_event_time
341
+
342
+ # Output only. The time this CryptoKeyVersion's key material is scheduled for
343
+ # destruction. Only present if state is DESTROY_SCHEDULED.
344
+ # Corresponds to the JSON property `destroyTime`
345
+ # @return [String]
346
+ attr_accessor :destroy_time
347
+
348
+ # ExternalProtectionLevelOptions stores a group of additional fields for
349
+ # configuring a CryptoKeyVersion that are specific to the EXTERNAL protection
350
+ # level and EXTERNAL_VPC protection levels.
351
+ # Corresponds to the JSON property `externalProtectionLevelOptions`
352
+ # @return [Google::Apis::KmsinventoryV1::GoogleCloudKmsV1ExternalProtectionLevelOptions]
353
+ attr_accessor :external_protection_level_options
354
+
355
+ # Output only. The time this CryptoKeyVersion's key material was generated.
356
+ # Corresponds to the JSON property `generateTime`
357
+ # @return [String]
358
+ attr_accessor :generate_time
359
+
360
+ # Output only. The root cause of the most recent import failure. Only present if
361
+ # state is IMPORT_FAILED.
362
+ # Corresponds to the JSON property `importFailureReason`
363
+ # @return [String]
364
+ attr_accessor :import_failure_reason
365
+
366
+ # Output only. The name of the ImportJob used in the most recent import of this
367
+ # CryptoKeyVersion. Only present if the underlying key material was imported.
368
+ # Corresponds to the JSON property `importJob`
369
+ # @return [String]
370
+ attr_accessor :import_job
371
+
372
+ # Output only. The time at which this CryptoKeyVersion's key material was most
373
+ # recently imported.
374
+ # Corresponds to the JSON property `importTime`
375
+ # @return [String]
376
+ attr_accessor :import_time
377
+
378
+ # Output only. The resource name for this CryptoKeyVersion in the format `
379
+ # projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*`.
380
+ # Corresponds to the JSON property `name`
381
+ # @return [String]
382
+ attr_accessor :name
383
+
384
+ # Output only. The ProtectionLevel describing how crypto operations are
385
+ # performed with this CryptoKeyVersion.
386
+ # Corresponds to the JSON property `protectionLevel`
387
+ # @return [String]
388
+ attr_accessor :protection_level
389
+
390
+ # Output only. Whether or not this key version is eligible for reimport, by
391
+ # being specified as a target in ImportCryptoKeyVersionRequest.
392
+ # crypto_key_version.
393
+ # Corresponds to the JSON property `reimportEligible`
394
+ # @return [Boolean]
395
+ attr_accessor :reimport_eligible
396
+ alias_method :reimport_eligible?, :reimport_eligible
397
+
398
+ # The current state of the CryptoKeyVersion.
399
+ # Corresponds to the JSON property `state`
400
+ # @return [String]
401
+ attr_accessor :state
402
+
403
+ def initialize(**args)
404
+ update!(**args)
405
+ end
406
+
407
+ # Update properties of this object
408
+ def update!(**args)
409
+ @algorithm = args[:algorithm] if args.key?(:algorithm)
410
+ @attestation = args[:attestation] if args.key?(:attestation)
411
+ @create_time = args[:create_time] if args.key?(:create_time)
412
+ @destroy_event_time = args[:destroy_event_time] if args.key?(:destroy_event_time)
413
+ @destroy_time = args[:destroy_time] if args.key?(:destroy_time)
414
+ @external_protection_level_options = args[:external_protection_level_options] if args.key?(:external_protection_level_options)
415
+ @generate_time = args[:generate_time] if args.key?(:generate_time)
416
+ @import_failure_reason = args[:import_failure_reason] if args.key?(:import_failure_reason)
417
+ @import_job = args[:import_job] if args.key?(:import_job)
418
+ @import_time = args[:import_time] if args.key?(:import_time)
419
+ @name = args[:name] if args.key?(:name)
420
+ @protection_level = args[:protection_level] if args.key?(:protection_level)
421
+ @reimport_eligible = args[:reimport_eligible] if args.key?(:reimport_eligible)
422
+ @state = args[:state] if args.key?(:state)
423
+ end
424
+ end
425
+
426
+ # A CryptoKeyVersionTemplate specifies the properties to use when creating a new
427
+ # CryptoKeyVersion, either manually with CreateCryptoKeyVersion or automatically
428
+ # as a result of auto-rotation.
429
+ class GoogleCloudKmsV1CryptoKeyVersionTemplate
430
+ include Google::Apis::Core::Hashable
431
+
432
+ # Required. Algorithm to use when creating a CryptoKeyVersion based on this
433
+ # template. For backwards compatibility, GOOGLE_SYMMETRIC_ENCRYPTION is implied
434
+ # if both this field is omitted and CryptoKey.purpose is ENCRYPT_DECRYPT.
435
+ # Corresponds to the JSON property `algorithm`
436
+ # @return [String]
437
+ attr_accessor :algorithm
438
+
439
+ # ProtectionLevel to use when creating a CryptoKeyVersion based on this template.
440
+ # Immutable. Defaults to SOFTWARE.
441
+ # Corresponds to the JSON property `protectionLevel`
442
+ # @return [String]
443
+ attr_accessor :protection_level
444
+
445
+ def initialize(**args)
446
+ update!(**args)
447
+ end
448
+
449
+ # Update properties of this object
450
+ def update!(**args)
451
+ @algorithm = args[:algorithm] if args.key?(:algorithm)
452
+ @protection_level = args[:protection_level] if args.key?(:protection_level)
453
+ end
454
+ end
455
+
456
+ # ExternalProtectionLevelOptions stores a group of additional fields for
457
+ # configuring a CryptoKeyVersion that are specific to the EXTERNAL protection
458
+ # level and EXTERNAL_VPC protection levels.
459
+ class GoogleCloudKmsV1ExternalProtectionLevelOptions
460
+ include Google::Apis::Core::Hashable
461
+
462
+ # The path to the external key material on the EKM when using EkmConnection e.g.,
463
+ # "v0/my/key". Set this field instead of external_key_uri when using an
464
+ # EkmConnection.
465
+ # Corresponds to the JSON property `ekmConnectionKeyPath`
466
+ # @return [String]
467
+ attr_accessor :ekm_connection_key_path
468
+
469
+ # The URI for an external resource that this CryptoKeyVersion represents.
470
+ # Corresponds to the JSON property `externalKeyUri`
471
+ # @return [String]
472
+ attr_accessor :external_key_uri
473
+
474
+ def initialize(**args)
475
+ update!(**args)
476
+ end
477
+
478
+ # Update properties of this object
479
+ def update!(**args)
480
+ @ekm_connection_key_path = args[:ekm_connection_key_path] if args.key?(:ekm_connection_key_path)
481
+ @external_key_uri = args[:external_key_uri] if args.key?(:external_key_uri)
482
+ end
483
+ end
484
+
485
+ # Contains an HSM-generated attestation about a key operation. For more
486
+ # information, see [Verifying attestations] (https://cloud.google.com/kms/docs/
487
+ # attest-key).
488
+ class GoogleCloudKmsV1KeyOperationAttestation
489
+ include Google::Apis::Core::Hashable
490
+
491
+ # Certificate chains needed to verify the attestation. Certificates in chains
492
+ # are PEM-encoded and are ordered based on https://tools.ietf.org/html/rfc5246#
493
+ # section-7.4.2.
494
+ # Corresponds to the JSON property `certChains`
495
+ # @return [Google::Apis::KmsinventoryV1::GoogleCloudKmsV1KeyOperationAttestationCertificateChains]
496
+ attr_accessor :cert_chains
497
+
498
+ # Output only. The attestation data provided by the HSM when the key operation
499
+ # was performed.
500
+ # Corresponds to the JSON property `content`
501
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
502
+ # @return [String]
503
+ attr_accessor :content
504
+
505
+ # Output only. The format of the attestation data.
506
+ # Corresponds to the JSON property `format`
507
+ # @return [String]
508
+ attr_accessor :format
509
+
510
+ def initialize(**args)
511
+ update!(**args)
512
+ end
513
+
514
+ # Update properties of this object
515
+ def update!(**args)
516
+ @cert_chains = args[:cert_chains] if args.key?(:cert_chains)
517
+ @content = args[:content] if args.key?(:content)
518
+ @format = args[:format] if args.key?(:format)
519
+ end
520
+ end
521
+
522
+ # Certificate chains needed to verify the attestation. Certificates in chains
523
+ # are PEM-encoded and are ordered based on https://tools.ietf.org/html/rfc5246#
524
+ # section-7.4.2.
525
+ class GoogleCloudKmsV1KeyOperationAttestationCertificateChains
526
+ include Google::Apis::Core::Hashable
527
+
528
+ # Cavium certificate chain corresponding to the attestation.
529
+ # Corresponds to the JSON property `caviumCerts`
530
+ # @return [Array<String>]
531
+ attr_accessor :cavium_certs
532
+
533
+ # Google card certificate chain corresponding to the attestation.
534
+ # Corresponds to the JSON property `googleCardCerts`
535
+ # @return [Array<String>]
536
+ attr_accessor :google_card_certs
537
+
538
+ # Google partition certificate chain corresponding to the attestation.
539
+ # Corresponds to the JSON property `googlePartitionCerts`
540
+ # @return [Array<String>]
541
+ attr_accessor :google_partition_certs
542
+
543
+ def initialize(**args)
544
+ update!(**args)
545
+ end
546
+
547
+ # Update properties of this object
548
+ def update!(**args)
549
+ @cavium_certs = args[:cavium_certs] if args.key?(:cavium_certs)
550
+ @google_card_certs = args[:google_card_certs] if args.key?(:google_card_certs)
551
+ @google_partition_certs = args[:google_partition_certs] if args.key?(:google_partition_certs)
552
+ end
553
+ end
554
+ end
555
+ end
556
+ end
@@ -0,0 +1,28 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ module Google
16
+ module Apis
17
+ module KmsinventoryV1
18
+ # Version of the google-apis-kmsinventory_v1 gem
19
+ GEM_VERSION = "0.1.0"
20
+
21
+ # Version of the code generator used to generate this client
22
+ GENERATOR_VERSION = "0.11.1"
23
+
24
+ # Revision of the discovery document this client was generated from
25
+ REVISION = "20230115"
26
+ end
27
+ end
28
+ end