google-cloud-kms-v1 0.14.0 → 0.16.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: b97af8383dd8f5fe6af2b2c709d433be4f6fc494f3af192186ab3f175ef0dc01
4
- data.tar.gz: 82b337641b4c0f579971797f901b82db52ad268ca6f8429b3a66cf0aa3b92332
3
+ metadata.gz: 88ccb6ea1616c6e3d3e167aaf3d0e81795d897a8f07922ceb7fccfe0be5c1baa
4
+ data.tar.gz: 2d635e795aef36e90ff5fa04ab772fc982e6ec30d3855a8741d358edbee26809
5
5
  SHA512:
6
- metadata.gz: 54f4de5518f911b9c5b076c96297b5d1f9ca5884019d5209afabcaa6d40d5add4c5492b0a50578186514fe1b6e7b60521c2145bb9302339bc8ea379bc877a7cc
7
- data.tar.gz: a3ec3fdf9aadd418993c548d30527c7716b5e1e9e4adc9eff0e344448d93eeb4288c770bc7c1d73117e551cdba4dfae82d926a4c453c82b7c67b7e9082ef3a10
6
+ metadata.gz: ffcdda5aafc0cc3bef3e4b1dba6fea52819d282bf6af6a3d085802e2c447f5116c053d80fbc8978ee2540ed178ae5d9efbbf5316adf06f79ccfa641a30044e05
7
+ data.tar.gz: c16e58ed43dae8dbdafed46b687864cf1241dbc50ddec764406928cb9e702a30362d2862a63c6419f955f869bc28a8362fa1a1f51770acb79a6a075270927034
data/README.md CHANGED
@@ -46,7 +46,7 @@ for general usage information.
46
46
  ## Enabling Logging
47
47
 
48
48
  To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
49
- The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/stdlib/libdoc/logger/rdoc/Logger.html) as shown below,
49
+ The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/current/stdlibs/logger/Logger.html) as shown below,
50
50
  or a [`Google::Cloud::Logging::Logger`](https://googleapis.dev/ruby/google-cloud-logging/latest)
51
51
  that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
52
52
  and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
@@ -1522,7 +1522,7 @@ module Google
1522
1522
  # @param options [::Gapic::CallOptions, ::Hash]
1523
1523
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
1524
1524
  #
1525
- # @overload import_crypto_key_version(parent: nil, crypto_key_version: nil, algorithm: nil, import_job: nil, rsa_aes_wrapped_key: nil)
1525
+ # @overload import_crypto_key_version(parent: nil, crypto_key_version: nil, algorithm: nil, import_job: nil, wrapped_key: nil, rsa_aes_wrapped_key: nil)
1526
1526
  # Pass arguments to `import_crypto_key_version` via keyword arguments. Note that at
1527
1527
  # least one keyword argument is required. To specify no parameters, or to keep all
1528
1528
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -1564,32 +1564,52 @@ module Google
1564
1564
  # Required. The {::Google::Cloud::Kms::V1::ImportJob#name name} of the
1565
1565
  # {::Google::Cloud::Kms::V1::ImportJob ImportJob} that was used to wrap this key
1566
1566
  # material.
1567
- # @param rsa_aes_wrapped_key [::String]
1568
- # Wrapped key material produced with
1569
- # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA1_AES_256 RSA_OAEP_3072_SHA1_AES_256}
1567
+ # @param wrapped_key [::String]
1568
+ # Optional. The wrapped key material to import.
1569
+ #
1570
+ # Before wrapping, key material must be formatted. If importing symmetric key
1571
+ # material, the expected key material format is plain bytes. If importing
1572
+ # asymmetric key material, the expected key material format is PKCS#8-encoded
1573
+ # DER (the PrivateKeyInfo structure from RFC 5208).
1574
+ #
1575
+ # When wrapping with import methods
1576
+ # ({::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA1_AES_256 RSA_OAEP_3072_SHA1_AES_256}
1577
+ # or
1578
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA1_AES_256 RSA_OAEP_4096_SHA1_AES_256}
1579
+ # or
1580
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA256_AES_256 RSA_OAEP_3072_SHA256_AES_256}
1570
1581
  # or
1571
- # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA1_AES_256 RSA_OAEP_4096_SHA1_AES_256}.
1582
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA256_AES_256 RSA_OAEP_4096_SHA256_AES_256}),
1572
1583
  #
1573
- # This field contains the concatenation of two wrapped keys:
1584
+ # this field must contain the concatenation of:
1574
1585
  # <ol>
1575
1586
  # <li>An ephemeral AES-256 wrapping key wrapped with the
1576
1587
  # {::Google::Cloud::Kms::V1::ImportJob#public_key public_key} using
1577
- # RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an
1578
- # empty label.
1588
+ # RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an empty
1589
+ # label.
1579
1590
  # </li>
1580
- # <li>The key to be imported, wrapped with the ephemeral AES-256 key
1581
- # using AES-KWP (RFC 5649).
1591
+ # <li>The formatted key to be imported, wrapped with the ephemeral AES-256
1592
+ # key using AES-KWP (RFC 5649).
1582
1593
  # </li>
1583
1594
  # </ol>
1584
1595
  #
1585
- # If importing symmetric key material, it is expected that the unwrapped
1586
- # key contains plain bytes. If importing asymmetric key material, it is
1587
- # expected that the unwrapped key is in PKCS#8-encoded DER format (the
1588
- # PrivateKeyInfo structure from RFC 5208).
1589
- #
1590
1596
  # This format is the same as the format produced by PKCS#11 mechanism
1591
1597
  # CKM_RSA_AES_KEY_WRAP.
1592
1598
  #
1599
+ # When wrapping with import methods
1600
+ # ({::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA256 RSA_OAEP_3072_SHA256}
1601
+ # or
1602
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA256 RSA_OAEP_4096_SHA256}),
1603
+ #
1604
+ # this field must contain the formatted key to be imported, wrapped with the
1605
+ # {::Google::Cloud::Kms::V1::ImportJob#public_key public_key} using RSAES-OAEP
1606
+ # with SHA-256, MGF1 with SHA-256, and an empty label.
1607
+ # @param rsa_aes_wrapped_key [::String]
1608
+ # Optional. This field has the same meaning as
1609
+ # {::Google::Cloud::Kms::V1::ImportCryptoKeyVersionRequest#wrapped_key wrapped_key}.
1610
+ # Prefer to use that field in new work. Either that field or this field
1611
+ # (but not both) must be specified.
1612
+ #
1593
1613
  # @yield [response, operation] Access the result along with the RPC operation
1594
1614
  # @yieldparam response [::Google::Cloud::Kms::V1::CryptoKeyVersion]
1595
1615
  # @yieldparam operation [::GRPC::ActiveCall::Operation]
@@ -2265,7 +2285,9 @@ module Google
2265
2285
  #
2266
2286
  # The maximum size depends on the key version's
2267
2287
  # {::Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#protection_level protection_level}.
2268
- # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE} keys, the
2288
+ # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE},
2289
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL EXTERNAL}, and
2290
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL_VPC EXTERNAL_VPC} keys, the
2269
2291
  # plaintext must be no larger than 64KiB. For
2270
2292
  # {::Google::Cloud::Kms::V1::ProtectionLevel::HSM HSM} keys, the combined length of
2271
2293
  # the plaintext and additional_authenticated_data fields must be no larger
@@ -2277,8 +2299,10 @@ module Google
2277
2299
  #
2278
2300
  # The maximum size depends on the key version's
2279
2301
  # {::Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#protection_level protection_level}.
2280
- # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE} keys, the AAD
2281
- # must be no larger than 64KiB. For
2302
+ # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE},
2303
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL EXTERNAL}, and
2304
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL_VPC EXTERNAL_VPC} keys the
2305
+ # AAD must be no larger than 64KiB. For
2282
2306
  # {::Google::Cloud::Kms::V1::ProtectionLevel::HSM HSM} keys, the combined length of
2283
2307
  # the plaintext and additional_authenticated_data fields must be no larger
2284
2308
  # than 8KiB.
@@ -97,6 +97,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
97
97
  value :EC_SIGN_P384_SHA384, 13
98
98
  value :EC_SIGN_SECP256K1_SHA256, 31
99
99
  value :HMAC_SHA256, 32
100
+ value :HMAC_SHA1, 33
101
+ value :HMAC_SHA384, 34
102
+ value :HMAC_SHA512, 35
103
+ value :HMAC_SHA224, 36
100
104
  value :EXTERNAL_SYMMETRIC_ENCRYPTION, 18
101
105
  end
102
106
  add_enum "google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionState" do
@@ -139,6 +143,10 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
139
143
  value :IMPORT_METHOD_UNSPECIFIED, 0
140
144
  value :RSA_OAEP_3072_SHA1_AES_256, 1
141
145
  value :RSA_OAEP_4096_SHA1_AES_256, 2
146
+ value :RSA_OAEP_3072_SHA256_AES_256, 3
147
+ value :RSA_OAEP_4096_SHA256_AES_256, 4
148
+ value :RSA_OAEP_3072_SHA256, 5
149
+ value :RSA_OAEP_4096_SHA256, 6
142
150
  end
143
151
  add_enum "google.cloud.kms.v1.ImportJob.ImportJobState" do
144
152
  value :IMPORT_JOB_STATE_UNSPECIFIED, 0
@@ -98,6 +98,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
98
98
  optional :crypto_key_version, :string, 6
99
99
  optional :algorithm, :enum, 2, "google.cloud.kms.v1.CryptoKeyVersion.CryptoKeyVersionAlgorithm"
100
100
  optional :import_job, :string, 4
101
+ optional :wrapped_key, :bytes, 8
101
102
  oneof :wrapped_key_material do
102
103
  optional :rsa_aes_wrapped_key, :bytes, 5
103
104
  end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Kms
23
23
  module V1
24
- VERSION = "0.14.0"
24
+ VERSION = "0.16.0"
25
25
  end
26
26
  end
27
27
  end
@@ -0,0 +1,318 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # Required information for every language.
23
+ # @!attribute [rw] reference_docs_uri
24
+ # @return [::String]
25
+ # Link to automatically generated reference documentation. Example:
26
+ # https://cloud.google.com/nodejs/docs/reference/asset/latest
27
+ # @!attribute [rw] destinations
28
+ # @return [::Array<::Google::Api::ClientLibraryDestination>]
29
+ # The destination where API teams want this client library to be published.
30
+ class CommonLanguageSettings
31
+ include ::Google::Protobuf::MessageExts
32
+ extend ::Google::Protobuf::MessageExts::ClassMethods
33
+ end
34
+
35
+ # Details about how and where to publish client libraries.
36
+ # @!attribute [rw] version
37
+ # @return [::String]
38
+ # Version of the API to apply these settings to.
39
+ # @!attribute [rw] launch_stage
40
+ # @return [::Google::Api::LaunchStage]
41
+ # Launch stage of this version of the API.
42
+ # @!attribute [rw] rest_numeric_enums
43
+ # @return [::Boolean]
44
+ # When using transport=rest, the client request will encode enums as
45
+ # numbers rather than strings.
46
+ # @!attribute [rw] java_settings
47
+ # @return [::Google::Api::JavaSettings]
48
+ # Settings for legacy Java features, supported in the Service YAML.
49
+ # @!attribute [rw] cpp_settings
50
+ # @return [::Google::Api::CppSettings]
51
+ # Settings for C++ client libraries.
52
+ # @!attribute [rw] php_settings
53
+ # @return [::Google::Api::PhpSettings]
54
+ # Settings for PHP client libraries.
55
+ # @!attribute [rw] python_settings
56
+ # @return [::Google::Api::PythonSettings]
57
+ # Settings for Python client libraries.
58
+ # @!attribute [rw] node_settings
59
+ # @return [::Google::Api::NodeSettings]
60
+ # Settings for Node client libraries.
61
+ # @!attribute [rw] dotnet_settings
62
+ # @return [::Google::Api::DotnetSettings]
63
+ # Settings for .NET client libraries.
64
+ # @!attribute [rw] ruby_settings
65
+ # @return [::Google::Api::RubySettings]
66
+ # Settings for Ruby client libraries.
67
+ # @!attribute [rw] go_settings
68
+ # @return [::Google::Api::GoSettings]
69
+ # Settings for Go client libraries.
70
+ class ClientLibrarySettings
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # This message configures the settings for publishing [Google Cloud Client
76
+ # libraries](https://cloud.google.com/apis/docs/cloud-client-libraries)
77
+ # generated from the service config.
78
+ # @!attribute [rw] method_settings
79
+ # @return [::Array<::Google::Api::MethodSettings>]
80
+ # A list of API method settings, e.g. the behavior for methods that use the
81
+ # long-running operation pattern.
82
+ # @!attribute [rw] new_issue_uri
83
+ # @return [::String]
84
+ # Link to a place that API users can report issues. Example:
85
+ # https://issuetracker.google.com/issues/new?component=190865&template=1161103
86
+ # @!attribute [rw] documentation_uri
87
+ # @return [::String]
88
+ # Link to product home page. Example:
89
+ # https://cloud.google.com/asset-inventory/docs/overview
90
+ # @!attribute [rw] api_short_name
91
+ # @return [::String]
92
+ # Used as a tracking tag when collecting data about the APIs developer
93
+ # relations artifacts like docs, packages delivered to package managers,
94
+ # etc. Example: "speech".
95
+ # @!attribute [rw] github_label
96
+ # @return [::String]
97
+ # GitHub label to apply to issues and pull requests opened for this API.
98
+ # @!attribute [rw] codeowner_github_teams
99
+ # @return [::Array<::String>]
100
+ # GitHub teams to be added to CODEOWNERS in the directory in GitHub
101
+ # containing source code for the client libraries for this API.
102
+ # @!attribute [rw] doc_tag_prefix
103
+ # @return [::String]
104
+ # A prefix used in sample code when demarking regions to be included in
105
+ # documentation.
106
+ # @!attribute [rw] organization
107
+ # @return [::Google::Api::ClientLibraryOrganization]
108
+ # For whom the client library is being published.
109
+ # @!attribute [rw] library_settings
110
+ # @return [::Array<::Google::Api::ClientLibrarySettings>]
111
+ # Client library settings. If the same version string appears multiple
112
+ # times in this list, then the last one wins. Settings from earlier
113
+ # settings with the same version string are discarded.
114
+ class Publishing
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Settings for Java client libraries.
120
+ # @!attribute [rw] library_package
121
+ # @return [::String]
122
+ # The package name to use in Java. Clobbers the java_package option
123
+ # set in the protobuf. This should be used **only** by APIs
124
+ # who have already set the language_settings.java.package_name" field
125
+ # in gapic.yaml. API teams should use the protobuf java_package option
126
+ # where possible.
127
+ #
128
+ # Example of a YAML configuration::
129
+ #
130
+ # publishing:
131
+ # java_settings:
132
+ # library_package: com.google.cloud.pubsub.v1
133
+ # @!attribute [rw] service_class_names
134
+ # @return [::Google::Protobuf::Map{::String => ::String}]
135
+ # Configure the Java class name to use instead of the service's for its
136
+ # corresponding generated GAPIC client. Keys are fully-qualified
137
+ # service names as they appear in the protobuf (including the full
138
+ # the language_settings.java.interface_names" field in gapic.yaml. API
139
+ # teams should otherwise use the service name as it appears in the
140
+ # protobuf.
141
+ #
142
+ # Example of a YAML configuration::
143
+ #
144
+ # publishing:
145
+ # java_settings:
146
+ # service_class_names:
147
+ # - google.pubsub.v1.Publisher: TopicAdmin
148
+ # - google.pubsub.v1.Subscriber: SubscriptionAdmin
149
+ # @!attribute [rw] common
150
+ # @return [::Google::Api::CommonLanguageSettings]
151
+ # Some settings.
152
+ class JavaSettings
153
+ include ::Google::Protobuf::MessageExts
154
+ extend ::Google::Protobuf::MessageExts::ClassMethods
155
+
156
+ # @!attribute [rw] key
157
+ # @return [::String]
158
+ # @!attribute [rw] value
159
+ # @return [::String]
160
+ class ServiceClassNamesEntry
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+ end
165
+
166
+ # Settings for C++ client libraries.
167
+ # @!attribute [rw] common
168
+ # @return [::Google::Api::CommonLanguageSettings]
169
+ # Some settings.
170
+ class CppSettings
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # Settings for Php client libraries.
176
+ # @!attribute [rw] common
177
+ # @return [::Google::Api::CommonLanguageSettings]
178
+ # Some settings.
179
+ class PhpSettings
180
+ include ::Google::Protobuf::MessageExts
181
+ extend ::Google::Protobuf::MessageExts::ClassMethods
182
+ end
183
+
184
+ # Settings for Python client libraries.
185
+ # @!attribute [rw] common
186
+ # @return [::Google::Api::CommonLanguageSettings]
187
+ # Some settings.
188
+ class PythonSettings
189
+ include ::Google::Protobuf::MessageExts
190
+ extend ::Google::Protobuf::MessageExts::ClassMethods
191
+ end
192
+
193
+ # Settings for Node client libraries.
194
+ # @!attribute [rw] common
195
+ # @return [::Google::Api::CommonLanguageSettings]
196
+ # Some settings.
197
+ class NodeSettings
198
+ include ::Google::Protobuf::MessageExts
199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
200
+ end
201
+
202
+ # Settings for Dotnet client libraries.
203
+ # @!attribute [rw] common
204
+ # @return [::Google::Api::CommonLanguageSettings]
205
+ # Some settings.
206
+ class DotnetSettings
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Settings for Ruby client libraries.
212
+ # @!attribute [rw] common
213
+ # @return [::Google::Api::CommonLanguageSettings]
214
+ # Some settings.
215
+ class RubySettings
216
+ include ::Google::Protobuf::MessageExts
217
+ extend ::Google::Protobuf::MessageExts::ClassMethods
218
+ end
219
+
220
+ # Settings for Go client libraries.
221
+ # @!attribute [rw] common
222
+ # @return [::Google::Api::CommonLanguageSettings]
223
+ # Some settings.
224
+ class GoSettings
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
228
+
229
+ # Describes the generator configuration for a method.
230
+ # @!attribute [rw] selector
231
+ # @return [::String]
232
+ # The fully qualified name of the method, for which the options below apply.
233
+ # This is used to find the method to apply the options.
234
+ # @!attribute [rw] long_running
235
+ # @return [::Google::Api::MethodSettings::LongRunning]
236
+ # Describes settings to use for long-running operations when generating
237
+ # API methods for RPCs. Complements RPCs that use the annotations in
238
+ # google/longrunning/operations.proto.
239
+ #
240
+ # Example of a YAML configuration::
241
+ #
242
+ # publishing:
243
+ # method_behavior:
244
+ # - selector: CreateAdDomain
245
+ # long_running:
246
+ # initial_poll_delay:
247
+ # seconds: 60 # 1 minute
248
+ # poll_delay_multiplier: 1.5
249
+ # max_poll_delay:
250
+ # seconds: 360 # 6 minutes
251
+ # total_poll_timeout:
252
+ # seconds: 54000 # 90 minutes
253
+ class MethodSettings
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+
257
+ # Describes settings to use when generating API methods that use the
258
+ # long-running operation pattern.
259
+ # All default values below are from those used in the client library
260
+ # generators (e.g.
261
+ # [Java](https://github.com/googleapis/gapic-generator-java/blob/04c2faa191a9b5a10b92392fe8482279c4404803/src/main/java/com/google/api/generator/gapic/composer/common/RetrySettingsComposer.java)).
262
+ # @!attribute [rw] initial_poll_delay
263
+ # @return [::Google::Protobuf::Duration]
264
+ # Initial delay after which the first poll request will be made.
265
+ # Default value: 5 seconds.
266
+ # @!attribute [rw] poll_delay_multiplier
267
+ # @return [::Float]
268
+ # Multiplier to gradually increase delay between subsequent polls until it
269
+ # reaches max_poll_delay.
270
+ # Default value: 1.5.
271
+ # @!attribute [rw] max_poll_delay
272
+ # @return [::Google::Protobuf::Duration]
273
+ # Maximum time between two subsequent poll requests.
274
+ # Default value: 45 seconds.
275
+ # @!attribute [rw] total_poll_timeout
276
+ # @return [::Google::Protobuf::Duration]
277
+ # Total polling timeout.
278
+ # Default value: 5 minutes.
279
+ class LongRunning
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+ end
284
+
285
+ # The organization for which the client libraries are being published.
286
+ # Affects the url where generated docs are published, etc.
287
+ module ClientLibraryOrganization
288
+ # Not useful.
289
+ CLIENT_LIBRARY_ORGANIZATION_UNSPECIFIED = 0
290
+
291
+ # Google Cloud Platform Org.
292
+ CLOUD = 1
293
+
294
+ # Ads (Advertising) Org.
295
+ ADS = 2
296
+
297
+ # Photos Org.
298
+ PHOTOS = 3
299
+
300
+ # Street View Org.
301
+ STREET_VIEW = 4
302
+ end
303
+
304
+ # To where should client libraries be published?
305
+ module ClientLibraryDestination
306
+ # Client libraries will neither be generated nor published to package
307
+ # managers.
308
+ CLIENT_LIBRARY_DESTINATION_UNSPECIFIED = 0
309
+
310
+ # Generate the client library in a repo under github.com/googleapis,
311
+ # but don't publish it to package managers.
312
+ GITHUB = 10
313
+
314
+ # Publish the library to package managers like nuget.org and npmjs.com.
315
+ PACKAGE_MANAGER = 20
316
+ end
317
+ end
318
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # The launch stage as defined by [Google Cloud Platform
23
+ # Launch Stages](https://cloud.google.com/terms/launch-stages).
24
+ module LaunchStage
25
+ # Do not use this default value.
26
+ LAUNCH_STAGE_UNSPECIFIED = 0
27
+
28
+ # The feature is not yet implemented. Users can not use it.
29
+ UNIMPLEMENTED = 6
30
+
31
+ # Prelaunch features are hidden from users and are only visible internally.
32
+ PRELAUNCH = 7
33
+
34
+ # Early Access features are limited to a closed group of testers. To use
35
+ # these features, you must sign up in advance and sign a Trusted Tester
36
+ # agreement (which includes confidentiality provisions). These features may
37
+ # be unstable, changed in backward-incompatible ways, and are not
38
+ # guaranteed to be released.
39
+ EARLY_ACCESS = 1
40
+
41
+ # Alpha is a limited availability test for releases before they are cleared
42
+ # for widespread use. By Alpha, all significant design issues are resolved
43
+ # and we are in the process of verifying functionality. Alpha customers
44
+ # need to apply for access, agree to applicable terms, and have their
45
+ # projects allowlisted. Alpha releases don't have to be feature complete,
46
+ # no SLAs are provided, and there are no technical support obligations, but
47
+ # they will be far enough along that customers can actually use them in
48
+ # test environments or for limited-use tests -- just like they would in
49
+ # normal production cases.
50
+ ALPHA = 2
51
+
52
+ # Beta is the point at which we are ready to open a release for any
53
+ # customer to use. There are no SLA or technical support obligations in a
54
+ # Beta release. Products will be complete from a feature perspective, but
55
+ # may have some open outstanding issues. Beta releases are suitable for
56
+ # limited production use cases.
57
+ BETA = 3
58
+
59
+ # GA features are open to all developers and are considered stable and
60
+ # fully qualified for production use.
61
+ GA = 4
62
+
63
+ # Deprecated features are scheduled to be shut down and removed. For more
64
+ # information, see the "Deprecation Policy" section of our [Terms of
65
+ # Service](https://cloud.google.com/terms/)
66
+ # and the [Google Cloud Platform Subject to the Deprecation
67
+ # Policy](https://cloud.google.com/terms/deprecation) documentation.
68
+ DEPRECATED = 5
69
+ end
70
+ end
71
+ end
@@ -21,7 +21,8 @@ module Google
21
21
  module Cloud
22
22
  module Kms
23
23
  module V1
24
- # Request message for [KeyManagementService.ListEkmConnections][].
24
+ # Request message for
25
+ # {::Google::Cloud::Kms::V1::EkmService::Client#list_ekm_connections EkmService.ListEkmConnections}.
25
26
  # @!attribute [rw] parent
26
27
  # @return [::String]
27
28
  # Required. The resource name of the location associated with the
@@ -57,7 +58,8 @@ module Google
57
58
  extend ::Google::Protobuf::MessageExts::ClassMethods
58
59
  end
59
60
 
60
- # Response message for [KeyManagementService.ListEkmConnections][].
61
+ # Response message for
62
+ # {::Google::Cloud::Kms::V1::EkmService::Client#list_ekm_connections EkmService.ListEkmConnections}.
61
63
  # @!attribute [rw] ekm_connections
62
64
  # @return [::Array<::Google::Cloud::Kms::V1::EkmConnection>]
63
65
  # The list of {::Google::Cloud::Kms::V1::EkmConnection EkmConnections}.
@@ -75,7 +77,8 @@ module Google
75
77
  extend ::Google::Protobuf::MessageExts::ClassMethods
76
78
  end
77
79
 
78
- # Request message for [KeyManagementService.GetEkmConnection][].
80
+ # Request message for
81
+ # {::Google::Cloud::Kms::V1::EkmService::Client#get_ekm_connection EkmService.GetEkmConnection}.
79
82
  # @!attribute [rw] name
80
83
  # @return [::String]
81
84
  # Required. The {::Google::Cloud::Kms::V1::EkmConnection#name name} of the
@@ -85,7 +88,8 @@ module Google
85
88
  extend ::Google::Protobuf::MessageExts::ClassMethods
86
89
  end
87
90
 
88
- # Request message for [KeyManagementService.CreateEkmConnection][].
91
+ # Request message for
92
+ # {::Google::Cloud::Kms::V1::EkmService::Client#create_ekm_connection EkmService.CreateEkmConnection}.
89
93
  # @!attribute [rw] parent
90
94
  # @return [::String]
91
95
  # Required. The resource name of the location associated with the
@@ -104,7 +108,8 @@ module Google
104
108
  extend ::Google::Protobuf::MessageExts::ClassMethods
105
109
  end
106
110
 
107
- # Request message for [KeyManagementService.UpdateEkmConnection][].
111
+ # Request message for
112
+ # {::Google::Cloud::Kms::V1::EkmService::Client#update_ekm_connection EkmService.UpdateEkmConnection}.
108
113
  # @!attribute [rw] ekm_connection
109
114
  # @return [::Google::Cloud::Kms::V1::EkmConnection]
110
115
  # Required. {::Google::Cloud::Kms::V1::EkmConnection EkmConnection} with updated
@@ -185,9 +190,8 @@ module Google
185
190
  # supported.
186
191
  # @!attribute [rw] etag
187
192
  # @return [::String]
188
- # This checksum is computed by the server based on the value of other fields,
189
- # and may be sent on update requests to ensure the client has an up-to-date
190
- # value before proceeding.
193
+ # Optional. Etag of the currently stored
194
+ # {::Google::Cloud::Kms::V1::EkmConnection EkmConnection}.
191
195
  class EkmConnection
192
196
  include ::Google::Protobuf::MessageExts
193
197
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -214,7 +218,8 @@ module Google
214
218
  # @!attribute [rw] server_certificates
215
219
  # @return [::Array<::Google::Cloud::Kms::V1::Certificate>]
216
220
  # Required. A list of leaf server certificates used to authenticate HTTPS
217
- # connections to the EKM replica.
221
+ # connections to the EKM replica. Currently, a maximum of 10
222
+ # {::Google::Cloud::Kms::V1::Certificate Certificate} is supported.
218
223
  class ServiceResolver
219
224
  include ::Google::Protobuf::MessageExts
220
225
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -254,6 +254,9 @@ module Google
254
254
 
255
255
  # Cavium HSM attestation compressed with gzip. Note that this format is
256
256
  # defined by Cavium and subject to change at any time.
257
+ #
258
+ # See
259
+ # https://www.marvell.com/products/security-solutions/nitrox-hs-adapters/software-key-attestation.html.
257
260
  CAVIUM_V1_COMPRESSED = 3
258
261
 
259
262
  # Cavium HSM attestation V2 compressed with gzip. This is a new format
@@ -474,6 +477,18 @@ module Google
474
477
  # HMAC-SHA256 signing with a 256 bit key.
475
478
  HMAC_SHA256 = 32
476
479
 
480
+ # HMAC-SHA1 signing with a 160 bit key.
481
+ HMAC_SHA1 = 33
482
+
483
+ # HMAC-SHA384 signing with a 384 bit key.
484
+ HMAC_SHA384 = 34
485
+
486
+ # HMAC-SHA512 signing with a 512 bit key.
487
+ HMAC_SHA512 = 35
488
+
489
+ # HMAC-SHA224 signing with a 224 bit key.
490
+ HMAC_SHA224 = 36
491
+
477
492
  # Algorithm representing symmetric encryption by an external key manager.
478
493
  EXTERNAL_SYMMETRIC_ENCRYPTION = 18
479
494
  end
@@ -724,6 +739,34 @@ module Google
724
739
  # [RSA AES key wrap
725
740
  # mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908).
726
741
  RSA_OAEP_4096_SHA1_AES_256 = 2
742
+
743
+ # This ImportMethod represents the CKM_RSA_AES_KEY_WRAP key wrapping
744
+ # scheme defined in the PKCS #11 standard. In summary, this involves
745
+ # wrapping the raw key with an ephemeral AES key, and wrapping the
746
+ # ephemeral AES key with a 3072 bit RSA key. For more details, see
747
+ # [RSA AES key wrap
748
+ # mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908).
749
+ RSA_OAEP_3072_SHA256_AES_256 = 3
750
+
751
+ # This ImportMethod represents the CKM_RSA_AES_KEY_WRAP key wrapping
752
+ # scheme defined in the PKCS #11 standard. In summary, this involves
753
+ # wrapping the raw key with an ephemeral AES key, and wrapping the
754
+ # ephemeral AES key with a 4096 bit RSA key. For more details, see
755
+ # [RSA AES key wrap
756
+ # mechanism](http://docs.oasis-open.org/pkcs11/pkcs11-curr/v2.40/cos01/pkcs11-curr-v2.40-cos01.html#_Toc408226908).
757
+ RSA_OAEP_4096_SHA256_AES_256 = 4
758
+
759
+ # This ImportMethod represents RSAES-OAEP with a 3072 bit RSA key. The
760
+ # key material to be imported is wrapped directly with the RSA key. Due
761
+ # to technical limitations of RSA wrapping, this method cannot be used to
762
+ # wrap RSA keys for import.
763
+ RSA_OAEP_3072_SHA256 = 5
764
+
765
+ # This ImportMethod represents RSAES-OAEP with a 4096 bit RSA key. The
766
+ # key material to be imported is wrapped directly with the RSA key. Due
767
+ # to technical limitations of RSA wrapping, this method cannot be used to
768
+ # wrap RSA keys for import.
769
+ RSA_OAEP_4096_SHA256 = 6
727
770
  end
728
771
 
729
772
  # The state of the {::Google::Cloud::Kms::V1::ImportJob ImportJob}, indicating if
@@ -413,32 +413,53 @@ module Google
413
413
  # Required. The {::Google::Cloud::Kms::V1::ImportJob#name name} of the
414
414
  # {::Google::Cloud::Kms::V1::ImportJob ImportJob} that was used to wrap this key
415
415
  # material.
416
- # @!attribute [rw] rsa_aes_wrapped_key
416
+ # @!attribute [rw] wrapped_key
417
417
  # @return [::String]
418
- # Wrapped key material produced with
419
- # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA1_AES_256 RSA_OAEP_3072_SHA1_AES_256}
418
+ # Optional. The wrapped key material to import.
419
+ #
420
+ # Before wrapping, key material must be formatted. If importing symmetric key
421
+ # material, the expected key material format is plain bytes. If importing
422
+ # asymmetric key material, the expected key material format is PKCS#8-encoded
423
+ # DER (the PrivateKeyInfo structure from RFC 5208).
424
+ #
425
+ # When wrapping with import methods
426
+ # ({::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA1_AES_256 RSA_OAEP_3072_SHA1_AES_256}
420
427
  # or
421
- # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA1_AES_256 RSA_OAEP_4096_SHA1_AES_256}.
428
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA1_AES_256 RSA_OAEP_4096_SHA1_AES_256}
429
+ # or
430
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA256_AES_256 RSA_OAEP_3072_SHA256_AES_256}
431
+ # or
432
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA256_AES_256 RSA_OAEP_4096_SHA256_AES_256}),
422
433
  #
423
- # This field contains the concatenation of two wrapped keys:
434
+ # this field must contain the concatenation of:
424
435
  # <ol>
425
436
  # <li>An ephemeral AES-256 wrapping key wrapped with the
426
437
  # {::Google::Cloud::Kms::V1::ImportJob#public_key public_key} using
427
- # RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an
428
- # empty label.
438
+ # RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an empty
439
+ # label.
429
440
  # </li>
430
- # <li>The key to be imported, wrapped with the ephemeral AES-256 key
431
- # using AES-KWP (RFC 5649).
441
+ # <li>The formatted key to be imported, wrapped with the ephemeral AES-256
442
+ # key using AES-KWP (RFC 5649).
432
443
  # </li>
433
444
  # </ol>
434
445
  #
435
- # If importing symmetric key material, it is expected that the unwrapped
436
- # key contains plain bytes. If importing asymmetric key material, it is
437
- # expected that the unwrapped key is in PKCS#8-encoded DER format (the
438
- # PrivateKeyInfo structure from RFC 5208).
439
- #
440
446
  # This format is the same as the format produced by PKCS#11 mechanism
441
447
  # CKM_RSA_AES_KEY_WRAP.
448
+ #
449
+ # When wrapping with import methods
450
+ # ({::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA256 RSA_OAEP_3072_SHA256}
451
+ # or
452
+ # {::Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA256 RSA_OAEP_4096_SHA256}),
453
+ #
454
+ # this field must contain the formatted key to be imported, wrapped with the
455
+ # {::Google::Cloud::Kms::V1::ImportJob#public_key public_key} using RSAES-OAEP
456
+ # with SHA-256, MGF1 with SHA-256, and an empty label.
457
+ # @!attribute [rw] rsa_aes_wrapped_key
458
+ # @return [::String]
459
+ # Optional. This field has the same meaning as
460
+ # {::Google::Cloud::Kms::V1::ImportCryptoKeyVersionRequest#wrapped_key wrapped_key}.
461
+ # Prefer to use that field in new work. Either that field or this field
462
+ # (but not both) must be specified.
442
463
  class ImportCryptoKeyVersionRequest
443
464
  include ::Google::Protobuf::MessageExts
444
465
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -545,7 +566,9 @@ module Google
545
566
  #
546
567
  # The maximum size depends on the key version's
547
568
  # {::Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#protection_level protection_level}.
548
- # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE} keys, the
569
+ # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE},
570
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL EXTERNAL}, and
571
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL_VPC EXTERNAL_VPC} keys, the
549
572
  # plaintext must be no larger than 64KiB. For
550
573
  # {::Google::Cloud::Kms::V1::ProtectionLevel::HSM HSM} keys, the combined length of
551
574
  # the plaintext and additional_authenticated_data fields must be no larger
@@ -558,8 +581,10 @@ module Google
558
581
  #
559
582
  # The maximum size depends on the key version's
560
583
  # {::Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#protection_level protection_level}.
561
- # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE} keys, the AAD
562
- # must be no larger than 64KiB. For
584
+ # For {::Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE},
585
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL EXTERNAL}, and
586
+ # {::Google::Cloud::Kms::V1::ProtectionLevel::EXTERNAL_VPC EXTERNAL_VPC} keys the
587
+ # AAD must be no larger than 64KiB. For
563
588
  # {::Google::Cloud::Kms::V1::ProtectionLevel::HSM HSM} keys, the combined length of
564
589
  # the plaintext and additional_authenticated_data fields must be no larger
565
590
  # than 8KiB.
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-kms-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.14.0
4
+ version: 0.16.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: 2022-10-21 00:00:00.000000000 Z
11
+ date: 2022-12-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -230,7 +230,9 @@ files:
230
230
  - lib/google/cloud/kms/v1/service_services_pb.rb
231
231
  - lib/google/cloud/kms/v1/version.rb
232
232
  - proto_docs/README.md
233
+ - proto_docs/google/api/client.rb
233
234
  - proto_docs/google/api/field_behavior.rb
235
+ - proto_docs/google/api/launch_stage.rb
234
236
  - proto_docs/google/api/resource.rb
235
237
  - proto_docs/google/cloud/kms/v1/ekm_service.rb
236
238
  - proto_docs/google/cloud/kms/v1/resources.rb