google-apis-cloudkms_v1 0.46.0 → 0.48.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9818da712593d04125529d8f49a995f72b218855c8a1b2873de1d47868a20756
4
- data.tar.gz: 5ffa2e263d15edcb4d3205b3f673ea1a8b9b81dfc4efaea60721fa0483ee1550
3
+ metadata.gz: d9067deb1911d6d056190ec1c07489d2b4071b3254558caaaf58cfeb7b9179ea
4
+ data.tar.gz: 21fe58557acbd0baf8b1b49673aa69c5500a664dbdc54c0cae243d4afdf87ce0
5
5
  SHA512:
6
- metadata.gz: 00d1b7012dd711aad2794e414342ef1c6a0f8f436650e6546c0f86605e808a12e9b7bdfaa9fe476a061e859d75378f639cd45b3d99033b615daadee48c460688
7
- data.tar.gz: 6280b4411cb83d06bd3587d2e153a669fa47b18b6c79475c5e115137a83c37b74f060f24225c14c6c0ad3f06f37c6663745b97c4bafed22a1455c790cb97caeb
6
+ metadata.gz: b6bf13b5fae9626565f867aea535b3621321f8d557d2686b54f5ac135c6f7c8f0b6b3a14802ad21fd28902a4c43b6190831d4f310398a41a3bc6a419fc12b07f
7
+ data.tar.gz: e48ec8f18bcb9a14a4c6f4482bdc6bdfa4c08bdce09dbd1aec240624c7758fc7d366d985f4d289f4002d8d173296ca4abbe57a6b7720bf072f39000fac61f9d3
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Release history for google-apis-cloudkms_v1
2
2
 
3
+ ### v0.48.0 (2024-05-12)
4
+
5
+ * Regenerated from discovery document revision 20240502
6
+
7
+ ### v0.47.0 (2024-05-05)
8
+
9
+ * Regenerated from discovery document revision 20240425
10
+
3
11
  ### v0.46.0 (2024-03-31)
4
12
 
5
13
  * Regenerated from discovery document revision 20240314
@@ -319,6 +319,39 @@ module Google
319
319
  end
320
320
  end
321
321
 
322
+ # Cloud KMS Autokey configuration for a folder.
323
+ class AutokeyConfig
324
+ include Google::Apis::Core::Hashable
325
+
326
+ # Optional. Name of the key project, e.g. `projects/`PROJECT_ID`` or `projects/`
327
+ # PROJECT_NUMBER``, where Cloud KMS Autokey will provision a new CryptoKey when
328
+ # a KeyHandle is created. On UpdateAutokeyConfig, the caller will require `
329
+ # cloudkms.cryptoKeys.setIamPolicy` permission on this key project. Once
330
+ # configured, for Cloud KMS Autokey to function properly, this key project must
331
+ # have the Cloud KMS API activated and the Cloud KMS Service Agent for this key
332
+ # project must be granted the `cloudkms.admin` role (or pertinent permissions).
333
+ # A request with an empty key project field will clear the configuration.
334
+ # Corresponds to the JSON property `keyProject`
335
+ # @return [String]
336
+ attr_accessor :key_project
337
+
338
+ # Identifier. Name of the AutokeyConfig resource, e.g. `folders/`FOLDER_NUMBER`/
339
+ # autokeyConfig`.
340
+ # Corresponds to the JSON property `name`
341
+ # @return [String]
342
+ attr_accessor :name
343
+
344
+ def initialize(**args)
345
+ update!(**args)
346
+ end
347
+
348
+ # Update properties of this object
349
+ def update!(**args)
350
+ @key_project = args[:key_project] if args.key?(:key_project)
351
+ @name = args[:name] if args.key?(:name)
352
+ end
353
+ end
354
+
322
355
  # Associates `members`, or principals, with a `role`.
323
356
  class Binding
324
357
  include Google::Apis::Core::Hashable
@@ -1494,6 +1527,46 @@ module Google
1494
1527
  end
1495
1528
  end
1496
1529
 
1530
+ # Resource-oriented representation of a request to Cloud KMS Autokey and the
1531
+ # resulting provisioning of a CryptoKey.
1532
+ class KeyHandle
1533
+ include Google::Apis::Core::Hashable
1534
+
1535
+ # Output only. Name of a CryptoKey that has been provisioned for Customer
1536
+ # Managed Encryption Key (CMEK) use in the KeyHandle project and location for
1537
+ # the requested resource type. The CryptoKey project will reflect the value
1538
+ # configured in the AutokeyConfig on the resource project's ancestor folder at
1539
+ # the time of the KeyHandle creation. If more than one ancestor folder has a
1540
+ # configured AutokeyConfig, the nearest of these configurations is used.
1541
+ # Corresponds to the JSON property `kmsKey`
1542
+ # @return [String]
1543
+ attr_accessor :kms_key
1544
+
1545
+ # Output only. Identifier. Name of the KeyHandle resource, e.g. `projects/`
1546
+ # PROJECT_ID`/locations/`LOCATION`/keyHandles/`KEY_HANDLE_ID``.
1547
+ # Corresponds to the JSON property `name`
1548
+ # @return [String]
1549
+ attr_accessor :name
1550
+
1551
+ # Required. Indicates the resource type that the resulting CryptoKey is meant to
1552
+ # protect, e.g. ``SERVICE`.googleapis.com/`TYPE``. See documentation for
1553
+ # supported resource types.
1554
+ # Corresponds to the JSON property `resourceTypeSelector`
1555
+ # @return [String]
1556
+ attr_accessor :resource_type_selector
1557
+
1558
+ def initialize(**args)
1559
+ update!(**args)
1560
+ end
1561
+
1562
+ # Update properties of this object
1563
+ def update!(**args)
1564
+ @kms_key = args[:kms_key] if args.key?(:kms_key)
1565
+ @name = args[:name] if args.key?(:name)
1566
+ @resource_type_selector = args[:resource_type_selector] if args.key?(:resource_type_selector)
1567
+ end
1568
+ end
1569
+
1497
1570
  # Contains an HSM-generated attestation about a key operation. For more
1498
1571
  # information, see [Verifying attestations] (https://cloud.google.com/kms/docs/
1499
1572
  # attest-key).
@@ -1685,6 +1758,25 @@ module Google
1685
1758
  end
1686
1759
  end
1687
1760
 
1761
+ # Response message for Autokey.ListKeyHandles.
1762
+ class ListKeyHandlesResponse
1763
+ include Google::Apis::Core::Hashable
1764
+
1765
+ # Resulting KeyHandles.
1766
+ # Corresponds to the JSON property `keyHandles`
1767
+ # @return [Array<Google::Apis::CloudkmsV1::KeyHandle>]
1768
+ attr_accessor :key_handles
1769
+
1770
+ def initialize(**args)
1771
+ update!(**args)
1772
+ end
1773
+
1774
+ # Update properties of this object
1775
+ def update!(**args)
1776
+ @key_handles = args[:key_handles] if args.key?(:key_handles)
1777
+ end
1778
+ end
1779
+
1688
1780
  # Response message for KeyManagementService.ListKeyRings.
1689
1781
  class ListKeyRingsResponse
1690
1782
  include Google::Apis::Core::Hashable
@@ -2044,6 +2136,68 @@ module Google
2044
2136
  end
2045
2137
  end
2046
2138
 
2139
+ # This resource represents a long-running operation that is the result of a
2140
+ # network API call.
2141
+ class Operation
2142
+ include Google::Apis::Core::Hashable
2143
+
2144
+ # If the value is `false`, it means the operation is still in progress. If `true`
2145
+ # , the operation is completed, and either `error` or `response` is available.
2146
+ # Corresponds to the JSON property `done`
2147
+ # @return [Boolean]
2148
+ attr_accessor :done
2149
+ alias_method :done?, :done
2150
+
2151
+ # The `Status` type defines a logical error model that is suitable for different
2152
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2153
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2154
+ # data: error code, error message, and error details. You can find out more
2155
+ # about this error model and how to work with it in the [API Design Guide](https:
2156
+ # //cloud.google.com/apis/design/errors).
2157
+ # Corresponds to the JSON property `error`
2158
+ # @return [Google::Apis::CloudkmsV1::Status]
2159
+ attr_accessor :error
2160
+
2161
+ # Service-specific metadata associated with the operation. It typically contains
2162
+ # progress information and common metadata such as create time. Some services
2163
+ # might not provide such metadata. Any method that returns a long-running
2164
+ # operation should document the metadata type, if any.
2165
+ # Corresponds to the JSON property `metadata`
2166
+ # @return [Hash<String,Object>]
2167
+ attr_accessor :metadata
2168
+
2169
+ # The server-assigned name, which is only unique within the same service that
2170
+ # originally returns it. If you use the default HTTP mapping, the `name` should
2171
+ # be a resource name ending with `operations/`unique_id``.
2172
+ # Corresponds to the JSON property `name`
2173
+ # @return [String]
2174
+ attr_accessor :name
2175
+
2176
+ # The normal, successful response of the operation. If the original method
2177
+ # returns no data on success, such as `Delete`, the response is `google.protobuf.
2178
+ # Empty`. If the original method is standard `Get`/`Create`/`Update`, the
2179
+ # response should be the resource. For other methods, the response should have
2180
+ # the type `XxxResponse`, where `Xxx` is the original method name. For example,
2181
+ # if the original method name is `TakeSnapshot()`, the inferred response type is
2182
+ # `TakeSnapshotResponse`.
2183
+ # Corresponds to the JSON property `response`
2184
+ # @return [Hash<String,Object>]
2185
+ attr_accessor :response
2186
+
2187
+ def initialize(**args)
2188
+ update!(**args)
2189
+ end
2190
+
2191
+ # Update properties of this object
2192
+ def update!(**args)
2193
+ @done = args[:done] if args.key?(:done)
2194
+ @error = args[:error] if args.key?(:error)
2195
+ @metadata = args[:metadata] if args.key?(:metadata)
2196
+ @name = args[:name] if args.key?(:name)
2197
+ @response = args[:response] if args.key?(:response)
2198
+ end
2199
+ end
2200
+
2047
2201
  # An Identity and Access Management (IAM) policy, which specifies access
2048
2202
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
2049
2203
  # A `binding` binds one or more `members`, or principals, to a single `role`.
@@ -2694,6 +2848,64 @@ module Google
2694
2848
  end
2695
2849
  end
2696
2850
 
2851
+ # Response message for ShowEffectiveAutokeyConfig.
2852
+ class ShowEffectiveAutokeyConfigResponse
2853
+ include Google::Apis::Core::Hashable
2854
+
2855
+ # Name of the key project configured in the resource project's folder ancestry.
2856
+ # Corresponds to the JSON property `keyProject`
2857
+ # @return [String]
2858
+ attr_accessor :key_project
2859
+
2860
+ def initialize(**args)
2861
+ update!(**args)
2862
+ end
2863
+
2864
+ # Update properties of this object
2865
+ def update!(**args)
2866
+ @key_project = args[:key_project] if args.key?(:key_project)
2867
+ end
2868
+ end
2869
+
2870
+ # The `Status` type defines a logical error model that is suitable for different
2871
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2872
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2873
+ # data: error code, error message, and error details. You can find out more
2874
+ # about this error model and how to work with it in the [API Design Guide](https:
2875
+ # //cloud.google.com/apis/design/errors).
2876
+ class Status
2877
+ include Google::Apis::Core::Hashable
2878
+
2879
+ # The status code, which should be an enum value of google.rpc.Code.
2880
+ # Corresponds to the JSON property `code`
2881
+ # @return [Fixnum]
2882
+ attr_accessor :code
2883
+
2884
+ # A list of messages that carry the error details. There is a common set of
2885
+ # message types for APIs to use.
2886
+ # Corresponds to the JSON property `details`
2887
+ # @return [Array<Hash<String,Object>>]
2888
+ attr_accessor :details
2889
+
2890
+ # A developer-facing error message, which should be in English. Any user-facing
2891
+ # error message should be localized and sent in the google.rpc.Status.details
2892
+ # field, or localized by the client.
2893
+ # Corresponds to the JSON property `message`
2894
+ # @return [String]
2895
+ attr_accessor :message
2896
+
2897
+ def initialize(**args)
2898
+ update!(**args)
2899
+ end
2900
+
2901
+ # Update properties of this object
2902
+ def update!(**args)
2903
+ @code = args[:code] if args.key?(:code)
2904
+ @details = args[:details] if args.key?(:details)
2905
+ @message = args[:message] if args.key?(:message)
2906
+ end
2907
+ end
2908
+
2697
2909
  # Request message for `TestIamPermissions` method.
2698
2910
  class TestIamPermissionsRequest
2699
2911
  include Google::Apis::Core::Hashable
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module CloudkmsV1
18
18
  # Version of the google-apis-cloudkms_v1 gem
19
- GEM_VERSION = "0.46.0"
19
+ GEM_VERSION = "0.48.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
22
  GENERATOR_VERSION = "0.14.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20240314"
25
+ REVISION = "20240502"
26
26
  end
27
27
  end
28
28
  end
@@ -58,6 +58,12 @@ module Google
58
58
  include Google::Apis::Core::JsonObjectSupport
59
59
  end
60
60
 
61
+ class AutokeyConfig
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
61
67
  class Binding
62
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
63
69
 
@@ -178,6 +184,12 @@ module Google
178
184
  include Google::Apis::Core::JsonObjectSupport
179
185
  end
180
186
 
187
+ class KeyHandle
188
+ class Representation < Google::Apis::Core::JsonRepresentation; end
189
+
190
+ include Google::Apis::Core::JsonObjectSupport
191
+ end
192
+
181
193
  class KeyOperationAttestation
182
194
  class Representation < Google::Apis::Core::JsonRepresentation; end
183
195
 
@@ -214,6 +226,12 @@ module Google
214
226
  include Google::Apis::Core::JsonObjectSupport
215
227
  end
216
228
 
229
+ class ListKeyHandlesResponse
230
+ class Representation < Google::Apis::Core::JsonRepresentation; end
231
+
232
+ include Google::Apis::Core::JsonObjectSupport
233
+ end
234
+
217
235
  class ListKeyRingsResponse
218
236
  class Representation < Google::Apis::Core::JsonRepresentation; end
219
237
 
@@ -262,6 +280,12 @@ module Google
262
280
  include Google::Apis::Core::JsonObjectSupport
263
281
  end
264
282
 
283
+ class Operation
284
+ class Representation < Google::Apis::Core::JsonRepresentation; end
285
+
286
+ include Google::Apis::Core::JsonObjectSupport
287
+ end
288
+
265
289
  class Policy
266
290
  class Representation < Google::Apis::Core::JsonRepresentation; end
267
291
 
@@ -316,6 +340,18 @@ module Google
316
340
  include Google::Apis::Core::JsonObjectSupport
317
341
  end
318
342
 
343
+ class ShowEffectiveAutokeyConfigResponse
344
+ class Representation < Google::Apis::Core::JsonRepresentation; end
345
+
346
+ include Google::Apis::Core::JsonObjectSupport
347
+ end
348
+
349
+ class Status
350
+ class Representation < Google::Apis::Core::JsonRepresentation; end
351
+
352
+ include Google::Apis::Core::JsonObjectSupport
353
+ end
354
+
319
355
  class TestIamPermissionsRequest
320
356
  class Representation < Google::Apis::Core::JsonRepresentation; end
321
357
 
@@ -404,6 +440,14 @@ module Google
404
440
  end
405
441
  end
406
442
 
443
+ class AutokeyConfig
444
+ # @private
445
+ class Representation < Google::Apis::Core::JsonRepresentation
446
+ property :key_project, as: 'keyProject'
447
+ property :name, as: 'name'
448
+ end
449
+ end
450
+
407
451
  class Binding
408
452
  # @private
409
453
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -630,6 +674,15 @@ module Google
630
674
  end
631
675
  end
632
676
 
677
+ class KeyHandle
678
+ # @private
679
+ class Representation < Google::Apis::Core::JsonRepresentation
680
+ property :kms_key, as: 'kmsKey'
681
+ property :name, as: 'name'
682
+ property :resource_type_selector, as: 'resourceTypeSelector'
683
+ end
684
+ end
685
+
633
686
  class KeyOperationAttestation
634
687
  # @private
635
688
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -688,6 +741,14 @@ module Google
688
741
  end
689
742
  end
690
743
 
744
+ class ListKeyHandlesResponse
745
+ # @private
746
+ class Representation < Google::Apis::Core::JsonRepresentation
747
+ collection :key_handles, as: 'keyHandles', class: Google::Apis::CloudkmsV1::KeyHandle, decorator: Google::Apis::CloudkmsV1::KeyHandle::Representation
748
+
749
+ end
750
+ end
751
+
691
752
  class ListKeyRingsResponse
692
753
  # @private
693
754
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -767,6 +828,18 @@ module Google
767
828
  end
768
829
  end
769
830
 
831
+ class Operation
832
+ # @private
833
+ class Representation < Google::Apis::Core::JsonRepresentation
834
+ property :done, as: 'done'
835
+ property :error, as: 'error', class: Google::Apis::CloudkmsV1::Status, decorator: Google::Apis::CloudkmsV1::Status::Representation
836
+
837
+ hash :metadata, as: 'metadata'
838
+ property :name, as: 'name'
839
+ hash :response, as: 'response'
840
+ end
841
+ end
842
+
770
843
  class Policy
771
844
  # @private
772
845
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -869,6 +942,22 @@ module Google
869
942
  end
870
943
  end
871
944
 
945
+ class ShowEffectiveAutokeyConfigResponse
946
+ # @private
947
+ class Representation < Google::Apis::Core::JsonRepresentation
948
+ property :key_project, as: 'keyProject'
949
+ end
950
+ end
951
+
952
+ class Status
953
+ # @private
954
+ class Representation < Google::Apis::Core::JsonRepresentation
955
+ property :code, as: 'code'
956
+ collection :details, as: 'details'
957
+ property :message, as: 'message'
958
+ end
959
+ end
960
+
872
961
  class TestIamPermissionsRequest
873
962
  # @private
874
963
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -52,6 +52,110 @@ module Google
52
52
  @batch_path = 'batch'
53
53
  end
54
54
 
55
+ # Returns the AutokeyConfig for a folder.
56
+ # @param [String] name
57
+ # Required. Name of the AutokeyConfig resource, e.g. `folders/`FOLDER_NUMBER`/
58
+ # autokeyConfig`.
59
+ # @param [String] fields
60
+ # Selector specifying which fields to include in a partial response.
61
+ # @param [String] quota_user
62
+ # Available to use for quota purposes for server-side applications. Can be any
63
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
64
+ # @param [Google::Apis::RequestOptions] options
65
+ # Request-specific options
66
+ #
67
+ # @yield [result, err] Result & error if block supplied
68
+ # @yieldparam result [Google::Apis::CloudkmsV1::AutokeyConfig] parsed result object
69
+ # @yieldparam err [StandardError] error object if request failed
70
+ #
71
+ # @return [Google::Apis::CloudkmsV1::AutokeyConfig]
72
+ #
73
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
74
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
75
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
76
+ def get_folder_autokey_config(name, fields: nil, quota_user: nil, options: nil, &block)
77
+ command = make_simple_command(:get, 'v1/{+name}', options)
78
+ command.response_representation = Google::Apis::CloudkmsV1::AutokeyConfig::Representation
79
+ command.response_class = Google::Apis::CloudkmsV1::AutokeyConfig
80
+ command.params['name'] = name unless name.nil?
81
+ command.query['fields'] = fields unless fields.nil?
82
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
83
+ execute_or_queue_command(command, &block)
84
+ end
85
+
86
+ # Updates the AutokeyConfig for a folder. The caller must have both `cloudkms.
87
+ # autokeyConfigs.update` permission on the parent folder and `cloudkms.
88
+ # cryptoKeys.setIamPolicy` permission on the provided key project. A KeyHandle
89
+ # creation in the folder's descendant projects will use this configuration to
90
+ # determine where to create the resulting CryptoKey.
91
+ # @param [String] name
92
+ # Identifier. Name of the AutokeyConfig resource, e.g. `folders/`FOLDER_NUMBER`/
93
+ # autokeyConfig`.
94
+ # @param [Google::Apis::CloudkmsV1::AutokeyConfig] autokey_config_object
95
+ # @param [String] update_mask
96
+ # Required. Masks which fields of the AutokeyConfig to update, e.g. `keyProject`.
97
+ # @param [String] fields
98
+ # Selector specifying which fields to include in a partial response.
99
+ # @param [String] quota_user
100
+ # Available to use for quota purposes for server-side applications. Can be any
101
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
102
+ # @param [Google::Apis::RequestOptions] options
103
+ # Request-specific options
104
+ #
105
+ # @yield [result, err] Result & error if block supplied
106
+ # @yieldparam result [Google::Apis::CloudkmsV1::AutokeyConfig] parsed result object
107
+ # @yieldparam err [StandardError] error object if request failed
108
+ #
109
+ # @return [Google::Apis::CloudkmsV1::AutokeyConfig]
110
+ #
111
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
112
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
113
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
114
+ def update_folder_autokey_config(name, autokey_config_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
115
+ command = make_simple_command(:patch, 'v1/{+name}', options)
116
+ command.request_representation = Google::Apis::CloudkmsV1::AutokeyConfig::Representation
117
+ command.request_object = autokey_config_object
118
+ command.response_representation = Google::Apis::CloudkmsV1::AutokeyConfig::Representation
119
+ command.response_class = Google::Apis::CloudkmsV1::AutokeyConfig
120
+ command.params['name'] = name unless name.nil?
121
+ command.query['updateMask'] = update_mask unless update_mask.nil?
122
+ command.query['fields'] = fields unless fields.nil?
123
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
124
+ execute_or_queue_command(command, &block)
125
+ end
126
+
127
+ # Returns the effective Cloud KMS Autokey configuration for a given project.
128
+ # @param [String] parent
129
+ # Required. Name of the resource project to the show effective Cloud KMS Autokey
130
+ # configuration for. This may be helpful for interrogating the effect of nested
131
+ # folder configurations on a given resource project.
132
+ # @param [String] fields
133
+ # Selector specifying which fields to include in a partial response.
134
+ # @param [String] quota_user
135
+ # Available to use for quota purposes for server-side applications. Can be any
136
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
137
+ # @param [Google::Apis::RequestOptions] options
138
+ # Request-specific options
139
+ #
140
+ # @yield [result, err] Result & error if block supplied
141
+ # @yieldparam result [Google::Apis::CloudkmsV1::ShowEffectiveAutokeyConfigResponse] parsed result object
142
+ # @yieldparam err [StandardError] error object if request failed
143
+ #
144
+ # @return [Google::Apis::CloudkmsV1::ShowEffectiveAutokeyConfigResponse]
145
+ #
146
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
147
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
148
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
149
+ def show_project_effective_autokey_config(parent, fields: nil, quota_user: nil, options: nil, &block)
150
+ command = make_simple_command(:get, 'v1/{+parent}:showEffectiveAutokeyConfig', options)
151
+ command.response_representation = Google::Apis::CloudkmsV1::ShowEffectiveAutokeyConfigResponse::Representation
152
+ command.response_class = Google::Apis::CloudkmsV1::ShowEffectiveAutokeyConfigResponse
153
+ command.params['parent'] = parent unless parent.nil?
154
+ command.query['fields'] = fields unless fields.nil?
155
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
156
+ execute_or_queue_command(command, &block)
157
+ end
158
+
55
159
  # Generate random bytes using the Cloud KMS randomness source in the provided
56
160
  # location.
57
161
  # @param [String] location
@@ -660,6 +764,113 @@ module Google
660
764
  execute_or_queue_command(command, &block)
661
765
  end
662
766
 
767
+ # Creates a new KeyHandle, triggering the provisioning of a new CryptoKey for
768
+ # CMEK use with the given resource type in the configured key project and the
769
+ # same location. GetOperation should be used to resolve the resulting long-
770
+ # running operation and get the resulting KeyHandle and CryptoKey.
771
+ # @param [String] parent
772
+ # Required. Name of the resource project and location to create the KeyHandle in,
773
+ # e.g. `projects/`PROJECT_ID`/locations/`LOCATION``.
774
+ # @param [Google::Apis::CloudkmsV1::KeyHandle] key_handle_object
775
+ # @param [String] key_handle_id
776
+ # Optional. Id of the KeyHandle. Must be unique to the resource project and
777
+ # location. If not provided by the caller, a new UUID is used.
778
+ # @param [String] fields
779
+ # Selector specifying which fields to include in a partial response.
780
+ # @param [String] quota_user
781
+ # Available to use for quota purposes for server-side applications. Can be any
782
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
783
+ # @param [Google::Apis::RequestOptions] options
784
+ # Request-specific options
785
+ #
786
+ # @yield [result, err] Result & error if block supplied
787
+ # @yieldparam result [Google::Apis::CloudkmsV1::Operation] parsed result object
788
+ # @yieldparam err [StandardError] error object if request failed
789
+ #
790
+ # @return [Google::Apis::CloudkmsV1::Operation]
791
+ #
792
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
793
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
794
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
795
+ def create_project_location_key_handle(parent, key_handle_object = nil, key_handle_id: nil, fields: nil, quota_user: nil, options: nil, &block)
796
+ command = make_simple_command(:post, 'v1/{+parent}/keyHandles', options)
797
+ command.request_representation = Google::Apis::CloudkmsV1::KeyHandle::Representation
798
+ command.request_object = key_handle_object
799
+ command.response_representation = Google::Apis::CloudkmsV1::Operation::Representation
800
+ command.response_class = Google::Apis::CloudkmsV1::Operation
801
+ command.params['parent'] = parent unless parent.nil?
802
+ command.query['keyHandleId'] = key_handle_id unless key_handle_id.nil?
803
+ command.query['fields'] = fields unless fields.nil?
804
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
805
+ execute_or_queue_command(command, &block)
806
+ end
807
+
808
+ # Returns the KeyHandle.
809
+ # @param [String] name
810
+ # Required. Name of the KeyHandle resource, e.g. `projects/`PROJECT_ID`/
811
+ # locations/`LOCATION`/keyHandles/`KEY_HANDLE_ID``.
812
+ # @param [String] fields
813
+ # Selector specifying which fields to include in a partial response.
814
+ # @param [String] quota_user
815
+ # Available to use for quota purposes for server-side applications. Can be any
816
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
817
+ # @param [Google::Apis::RequestOptions] options
818
+ # Request-specific options
819
+ #
820
+ # @yield [result, err] Result & error if block supplied
821
+ # @yieldparam result [Google::Apis::CloudkmsV1::KeyHandle] parsed result object
822
+ # @yieldparam err [StandardError] error object if request failed
823
+ #
824
+ # @return [Google::Apis::CloudkmsV1::KeyHandle]
825
+ #
826
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
827
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
828
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
829
+ def get_project_location_key_handle(name, fields: nil, quota_user: nil, options: nil, &block)
830
+ command = make_simple_command(:get, 'v1/{+name}', options)
831
+ command.response_representation = Google::Apis::CloudkmsV1::KeyHandle::Representation
832
+ command.response_class = Google::Apis::CloudkmsV1::KeyHandle
833
+ command.params['name'] = name unless name.nil?
834
+ command.query['fields'] = fields unless fields.nil?
835
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
836
+ execute_or_queue_command(command, &block)
837
+ end
838
+
839
+ # Lists KeyHandles.
840
+ # @param [String] parent
841
+ # Required. Name of the resource project and location from which to list
842
+ # KeyHandles, e.g. `projects/`PROJECT_ID`/locations/`LOCATION``.
843
+ # @param [String] filter
844
+ # Optional. Filter to apply when listing KeyHandles, e.g. `
845
+ # resource_type_selector="`SERVICE`.googleapis.com/`TYPE`"`.
846
+ # @param [String] fields
847
+ # Selector specifying which fields to include in a partial response.
848
+ # @param [String] quota_user
849
+ # Available to use for quota purposes for server-side applications. Can be any
850
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
851
+ # @param [Google::Apis::RequestOptions] options
852
+ # Request-specific options
853
+ #
854
+ # @yield [result, err] Result & error if block supplied
855
+ # @yieldparam result [Google::Apis::CloudkmsV1::ListKeyHandlesResponse] parsed result object
856
+ # @yieldparam err [StandardError] error object if request failed
857
+ #
858
+ # @return [Google::Apis::CloudkmsV1::ListKeyHandlesResponse]
859
+ #
860
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
861
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
862
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
863
+ def list_project_location_key_handles(parent, filter: nil, fields: nil, quota_user: nil, options: nil, &block)
864
+ command = make_simple_command(:get, 'v1/{+parent}/keyHandles', options)
865
+ command.response_representation = Google::Apis::CloudkmsV1::ListKeyHandlesResponse::Representation
866
+ command.response_class = Google::Apis::CloudkmsV1::ListKeyHandlesResponse
867
+ command.params['parent'] = parent unless parent.nil?
868
+ command.query['filter'] = filter unless filter.nil?
869
+ command.query['fields'] = fields unless fields.nil?
870
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
871
+ execute_or_queue_command(command, &block)
872
+ end
873
+
663
874
  # Create a new KeyRing in a given Project and Location.
664
875
  # @param [String] parent
665
876
  # Required. The resource name of the location associated with the KeyRings, in
@@ -2039,6 +2250,37 @@ module Google
2039
2250
  command.query['quotaUser'] = quota_user unless quota_user.nil?
2040
2251
  execute_or_queue_command(command, &block)
2041
2252
  end
2253
+
2254
+ # Gets the latest state of a long-running operation. Clients can use this method
2255
+ # to poll the operation result at intervals as recommended by the API service.
2256
+ # @param [String] name
2257
+ # The name of the operation resource.
2258
+ # @param [String] fields
2259
+ # Selector specifying which fields to include in a partial response.
2260
+ # @param [String] quota_user
2261
+ # Available to use for quota purposes for server-side applications. Can be any
2262
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
2263
+ # @param [Google::Apis::RequestOptions] options
2264
+ # Request-specific options
2265
+ #
2266
+ # @yield [result, err] Result & error if block supplied
2267
+ # @yieldparam result [Google::Apis::CloudkmsV1::Operation] parsed result object
2268
+ # @yieldparam err [StandardError] error object if request failed
2269
+ #
2270
+ # @return [Google::Apis::CloudkmsV1::Operation]
2271
+ #
2272
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
2273
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
2274
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
2275
+ def get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
2276
+ command = make_simple_command(:get, 'v1/{+name}', options)
2277
+ command.response_representation = Google::Apis::CloudkmsV1::Operation::Representation
2278
+ command.response_class = Google::Apis::CloudkmsV1::Operation
2279
+ command.params['name'] = name unless name.nil?
2280
+ command.query['fields'] = fields unless fields.nil?
2281
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
2282
+ execute_or_queue_command(command, &block)
2283
+ end
2042
2284
 
2043
2285
  protected
2044
2286
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-cloudkms_v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.46.0
4
+ version: 0.48.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-03-31 00:00:00.000000000 Z
11
+ date: 2024-05-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudkms_v1/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-cloudkms_v1/v0.46.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-cloudkms_v1/v0.48.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudkms_v1
63
63
  post_install_message:
64
64
  rdoc_options: []