google-cloud-kms-v1 1.10.0 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/kms/v1/autokey_admin/client.rb +15 -12
  3. data/lib/google/cloud/kms/v1/autokey_admin/paths.rb +24 -5
  4. data/lib/google/cloud/kms/v1/autokey_admin/rest/client.rb +15 -12
  5. data/lib/google/cloud/kms/v1/autokey_admin/rest/service_stub.rb +15 -0
  6. data/lib/google/cloud/kms/v1/autokey_admin/rest.rb +9 -7
  7. data/lib/google/cloud/kms/v1/autokey_admin.rb +9 -7
  8. data/lib/google/cloud/kms/v1/autokey_admin_pb.rb +4 -25
  9. data/lib/google/cloud/kms/v1/autokey_admin_services_pb.rb +13 -11
  10. data/lib/google/cloud/kms/v1/autokey_pb.rb +2 -23
  11. data/lib/google/cloud/kms/v1/ekm_service_pb.rb +2 -25
  12. data/lib/google/cloud/kms/v1/hsm_management_pb.rb +2 -25
  13. data/lib/google/cloud/kms/v1/key_management_service/client.rb +462 -0
  14. data/lib/google/cloud/kms/v1/key_management_service/operations.rb +841 -0
  15. data/lib/google/cloud/kms/v1/key_management_service/paths.rb +19 -0
  16. data/lib/google/cloud/kms/v1/key_management_service/rest/client.rb +434 -0
  17. data/lib/google/cloud/kms/v1/key_management_service/rest/operations.rb +925 -0
  18. data/lib/google/cloud/kms/v1/key_management_service/rest/service_stub.rb +244 -0
  19. data/lib/google/cloud/kms/v1/key_management_service/rest.rb +1 -0
  20. data/lib/google/cloud/kms/v1/key_management_service.rb +1 -0
  21. data/lib/google/cloud/kms/v1/resources_pb.rb +4 -27
  22. data/lib/google/cloud/kms/v1/service_pb.rb +12 -27
  23. data/lib/google/cloud/kms/v1/service_services_pb.rb +27 -0
  24. data/lib/google/cloud/kms/v1/version.rb +1 -1
  25. data/proto_docs/google/cloud/kms/v1/autokey_admin.rb +43 -2
  26. data/proto_docs/google/cloud/kms/v1/resources.rb +54 -2
  27. data/proto_docs/google/cloud/kms/v1/service.rb +100 -0
  28. data/proto_docs/google/protobuf/wrappers.rb +27 -0
  29. metadata +4 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0fab0ca4c950c13da360c0ae3048441cb86fff9d5b86dc1dd2142a875d139641
4
- data.tar.gz: 5fed81404057d40ca92f4ec8826aa22277c4041b43d8bcebb05e6ee1dbbd12c1
3
+ metadata.gz: a6e8be6ce0ba2932486b141b473a4a66d85501790b492dbcfa4e0219f15ff1fd
4
+ data.tar.gz: 507dfc458c2175cd58468471150d435675bac2d3e9f4dce57df788c536890549
5
5
  SHA512:
6
- metadata.gz: fa8ee04d9b6b2b1926d59b0564add0f4c1ed8007795916a341ff207f56f621fb7a1e7c5812b31e992d333070062816fcdb1996788deee5468f6a763097ba970b
7
- data.tar.gz: 1763a838c1231613cf1c317a169b3f8bfdd6baa4c673353045845f6bbd0abb78c5d66c72dc252b295f1992844808579879d87ab5a7942bf5b0791795dd126b06
6
+ metadata.gz: b477637312c0c25e277b2c2ec94dbde22092963d144657b068146415b9ecf4a4c8de0be01b70f6e64ddc410b4ffef2fbc5de04ed43534c2673a694d8c7b81956
7
+ data.tar.gz: fb8ae9bc43ad4cbfaa2e8b557aa969fd57632ebb48265fe15ad516746ba7a79d1f7de5670851d2118828b4c05c38cda65d2a1e7522a01b78b193c6bf648be8f9
@@ -30,13 +30,15 @@ module Google
30
30
  # Client for the AutokeyAdmin service.
31
31
  #
32
32
  # Provides interfaces for managing [Cloud KMS
33
- # Autokey](https://cloud.google.com/kms/help/autokey) folder-level
34
- # configurations. A configuration is inherited by all descendent projects. A
35
- # configuration at one folder overrides any other configurations in its
36
- # ancestry. Setting a configuration on a folder is a prerequisite for Cloud KMS
37
- # Autokey, so that users working in a descendant project can request
38
- # provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys}, ready for Customer
39
- # Managed Encryption Key (CMEK) use, on-demand.
33
+ # Autokey](https://cloud.google.com/kms/help/autokey) folder-level or
34
+ # project-level configurations. A configuration is inherited by all descendent
35
+ # folders and projects. A configuration at a folder or project overrides any
36
+ # other configurations in its ancestry. Setting a configuration on a folder is
37
+ # a prerequisite for Cloud KMS Autokey, so that users working in a descendant
38
+ # project can request provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys},
39
+ # ready for Customer Managed Encryption Key (CMEK) use, on-demand when using
40
+ # the dedicated key project mode. This is not required when using the delegated
41
+ # key management mode for same-project keys.
40
42
  #
41
43
  class Client
42
44
  # @private
@@ -238,8 +240,8 @@ module Google
238
240
  # Service calls
239
241
 
240
242
  ##
241
- # Updates the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a
242
- # folder. The caller must have both `cloudkms.autokeyConfigs.update`
243
+ # Updates the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a folder
244
+ # or a project. The caller must have both `cloudkms.autokeyConfigs.update`
243
245
  # permission on the parent folder and `cloudkms.cryptoKeys.setIamPolicy`
244
246
  # permission on the provided key project. A
245
247
  # {::Google::Cloud::Kms::V1::KeyHandle KeyHandle} creation in the folder's
@@ -334,8 +336,8 @@ module Google
334
336
  end
335
337
 
336
338
  ##
337
- # Returns the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a
338
- # folder.
339
+ # Returns the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a folder
340
+ # or project.
339
341
  #
340
342
  # @overload get_autokey_config(request, options = nil)
341
343
  # Pass arguments to `get_autokey_config` via a request object, either of type
@@ -354,7 +356,8 @@ module Google
354
356
  #
355
357
  # @param name [::String]
356
358
  # Required. Name of the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig}
357
- # resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`.
359
+ # resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or
360
+ # `projects/{PROJECT_NUMBER}/autokeyConfig`.
358
361
  #
359
362
  # @yield [response, operation] Access the result along with the RPC operation
360
363
  # @yieldparam response [::Google::Cloud::Kms::V1::AutokeyConfig]
@@ -27,15 +27,34 @@ module Google
27
27
  ##
28
28
  # Create a fully-qualified AutokeyConfig resource string.
29
29
  #
30
- # The resource will be in the following format:
30
+ # @overload autokey_config_path(folder:)
31
+ # The resource will be in the following format:
32
+ #
33
+ # `folders/{folder}/autokeyConfig`
34
+ #
35
+ # @param folder [String]
31
36
  #
32
- # `folders/{folder}/autokeyConfig`
37
+ # @overload autokey_config_path(project:)
38
+ # The resource will be in the following format:
33
39
  #
34
- # @param folder [String]
40
+ # `projects/{project}/autokeyConfig`
41
+ #
42
+ # @param project [String]
35
43
  #
36
44
  # @return [::String]
37
- def autokey_config_path folder:
38
- "folders/#{folder}/autokeyConfig"
45
+ def autokey_config_path **args
46
+ resources = {
47
+ "folder" => (proc do |folder:|
48
+ "folders/#{folder}/autokeyConfig"
49
+ end),
50
+ "project" => (proc do |project:|
51
+ "projects/#{project}/autokeyConfig"
52
+ end)
53
+ }
54
+
55
+ resource = resources[args.keys.sort.join(":")]
56
+ raise ::ArgumentError, "no resource found for values #{args.keys}" if resource.nil?
57
+ resource.call(**args)
39
58
  end
40
59
 
41
60
  ##
@@ -32,13 +32,15 @@ module Google
32
32
  # REST client for the AutokeyAdmin service.
33
33
  #
34
34
  # Provides interfaces for managing [Cloud KMS
35
- # Autokey](https://cloud.google.com/kms/help/autokey) folder-level
36
- # configurations. A configuration is inherited by all descendent projects. A
37
- # configuration at one folder overrides any other configurations in its
38
- # ancestry. Setting a configuration on a folder is a prerequisite for Cloud KMS
39
- # Autokey, so that users working in a descendant project can request
40
- # provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys}, ready for Customer
41
- # Managed Encryption Key (CMEK) use, on-demand.
35
+ # Autokey](https://cloud.google.com/kms/help/autokey) folder-level or
36
+ # project-level configurations. A configuration is inherited by all descendent
37
+ # folders and projects. A configuration at a folder or project overrides any
38
+ # other configurations in its ancestry. Setting a configuration on a folder is
39
+ # a prerequisite for Cloud KMS Autokey, so that users working in a descendant
40
+ # project can request provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys},
41
+ # ready for Customer Managed Encryption Key (CMEK) use, on-demand when using
42
+ # the dedicated key project mode. This is not required when using the delegated
43
+ # key management mode for same-project keys.
42
44
  #
43
45
  class Client
44
46
  # @private
@@ -233,8 +235,8 @@ module Google
233
235
  # Service calls
234
236
 
235
237
  ##
236
- # Updates the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a
237
- # folder. The caller must have both `cloudkms.autokeyConfigs.update`
238
+ # Updates the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a folder
239
+ # or a project. The caller must have both `cloudkms.autokeyConfigs.update`
238
240
  # permission on the parent folder and `cloudkms.cryptoKeys.setIamPolicy`
239
241
  # permission on the provided key project. A
240
242
  # {::Google::Cloud::Kms::V1::KeyHandle KeyHandle} creation in the folder's
@@ -322,8 +324,8 @@ module Google
322
324
  end
323
325
 
324
326
  ##
325
- # Returns the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a
326
- # folder.
327
+ # Returns the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig} for a folder
328
+ # or project.
327
329
  #
328
330
  # @overload get_autokey_config(request, options = nil)
329
331
  # Pass arguments to `get_autokey_config` via a request object, either of type
@@ -342,7 +344,8 @@ module Google
342
344
  #
343
345
  # @param name [::String]
344
346
  # Required. Name of the {::Google::Cloud::Kms::V1::AutokeyConfig AutokeyConfig}
345
- # resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`.
347
+ # resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig` or
348
+ # `projects/{PROJECT_NUMBER}/autokeyConfig`.
346
349
  # @yield [result, operation] Access the result along with the TransportOperation object
347
350
  # @yieldparam result [::Google::Cloud::Kms::V1::AutokeyConfig]
348
351
  # @yieldparam operation [::Gapic::Rest::TransportOperation]
@@ -212,6 +212,14 @@ module Google
212
212
  ["autokey_config.name", %r{^folders/[^/]+/autokeyConfig/?$}, false]
213
213
  ]
214
214
  )
215
+ .with_bindings(
216
+ uri_method: :patch,
217
+ uri_template: "/v1/{autokey_config.name}",
218
+ body: "autokey_config",
219
+ matches: [
220
+ ["autokey_config.name", %r{^projects/[^/]+/autokeyConfig/?$}, false]
221
+ ]
222
+ )
215
223
  transcoder.transcode request_pb
216
224
  end
217
225
 
@@ -233,6 +241,13 @@ module Google
233
241
  ["name", %r{^folders/[^/]+/autokeyConfig/?$}, false]
234
242
  ]
235
243
  )
244
+ .with_bindings(
245
+ uri_method: :get,
246
+ uri_template: "/v1/{name}",
247
+ matches: [
248
+ ["name", %r{^projects/[^/]+/autokeyConfig/?$}, false]
249
+ ]
250
+ )
236
251
  transcoder.transcode request_pb
237
252
  end
238
253
 
@@ -33,13 +33,15 @@ module Google
33
33
  module V1
34
34
  ##
35
35
  # Provides interfaces for managing [Cloud KMS
36
- # Autokey](https://cloud.google.com/kms/help/autokey) folder-level
37
- # configurations. A configuration is inherited by all descendent projects. A
38
- # configuration at one folder overrides any other configurations in its
39
- # ancestry. Setting a configuration on a folder is a prerequisite for Cloud KMS
40
- # Autokey, so that users working in a descendant project can request
41
- # provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys}, ready for Customer
42
- # Managed Encryption Key (CMEK) use, on-demand.
36
+ # Autokey](https://cloud.google.com/kms/help/autokey) folder-level or
37
+ # project-level configurations. A configuration is inherited by all descendent
38
+ # folders and projects. A configuration at a folder or project overrides any
39
+ # other configurations in its ancestry. Setting a configuration on a folder is
40
+ # a prerequisite for Cloud KMS Autokey, so that users working in a descendant
41
+ # project can request provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys},
42
+ # ready for Customer Managed Encryption Key (CMEK) use, on-demand when using
43
+ # the dedicated key project mode. This is not required when using the delegated
44
+ # key management mode for same-project keys.
43
45
  #
44
46
  # To load this service and instantiate a REST client:
45
47
  #
@@ -33,13 +33,15 @@ module Google
33
33
  module V1
34
34
  ##
35
35
  # Provides interfaces for managing [Cloud KMS
36
- # Autokey](https://cloud.google.com/kms/help/autokey) folder-level
37
- # configurations. A configuration is inherited by all descendent projects. A
38
- # configuration at one folder overrides any other configurations in its
39
- # ancestry. Setting a configuration on a folder is a prerequisite for Cloud KMS
40
- # Autokey, so that users working in a descendant project can request
41
- # provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys}, ready for Customer
42
- # Managed Encryption Key (CMEK) use, on-demand.
36
+ # Autokey](https://cloud.google.com/kms/help/autokey) folder-level or
37
+ # project-level configurations. A configuration is inherited by all descendent
38
+ # folders and projects. A configuration at a folder or project overrides any
39
+ # other configurations in its ancestry. Setting a configuration on a folder is
40
+ # a prerequisite for Cloud KMS Autokey, so that users working in a descendant
41
+ # project can request provisioned {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys},
42
+ # ready for Customer Managed Encryption Key (CMEK) use, on-demand when using
43
+ # the dedicated key project mode. This is not required when using the delegated
44
+ # key management mode for same-project keys.
43
45
  #
44
46
  # @example Load this service and instantiate a gRPC client
45
47
  #
@@ -11,32 +11,10 @@ require 'google/api/resource_pb'
11
11
  require 'google/protobuf/field_mask_pb'
12
12
 
13
13
 
14
- descriptor_data = "\n\'google/cloud/kms/v1/autokey_admin.proto\x12\x13google.cloud.kms.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\"\x93\x01\n\x1aUpdateAutokeyConfigRequest\x12?\n\x0e\x61utokey_config\x18\x01 \x01(\x0b\x32\".google.cloud.kms.v1.AutokeyConfigB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"V\n\x17GetAutokeyConfigRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%cloudkms.googleapis.com/AutokeyConfig\"\xd0\x02\n\rAutokeyConfig\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x18\n\x0bkey_project\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12<\n\x05state\x18\x04 \x01(\x0e\x32(.google.cloud.kms.v1.AutokeyConfig.StateB\x03\xe0\x41\x03\x12\x11\n\x04\x65tag\x18\x06 \x01(\tB\x03\xe0\x41\x01\"V\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x17\n\x13KEY_PROJECT_DELETED\x10\x02\x12\x11\n\rUNINITIALIZED\x10\x03:i\xea\x41\x66\n%cloudkms.googleapis.com/AutokeyConfig\x12\x1e\x66olders/{folder}/autokeyConfig*\x0e\x61utokeyConfigs2\rautokeyConfig\"h\n!ShowEffectiveAutokeyConfigRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\"9\n\"ShowEffectiveAutokeyConfigResponse\x12\x13\n\x0bkey_project\x18\x01 \x01(\t2\xc8\x05\n\x0c\x41utokeyAdmin\x12\xd2\x01\n\x13UpdateAutokeyConfig\x12/.google.cloud.kms.v1.UpdateAutokeyConfigRequest\x1a\".google.cloud.kms.v1.AutokeyConfig\"f\xda\x41\x1a\x61utokey_config,update_mask\x82\xd3\xe4\x93\x02\x43\x32\x31/v1/{autokey_config.name=folders/*/autokeyConfig}:\x0e\x61utokey_config\x12\x97\x01\n\x10GetAutokeyConfig\x12,.google.cloud.kms.v1.GetAutokeyConfigRequest\x1a\".google.cloud.kms.v1.AutokeyConfig\"1\xda\x41\x04name\x82\xd3\xe4\x93\x02$\x12\"/v1/{name=folders/*/autokeyConfig}\x12\xd2\x01\n\x1aShowEffectiveAutokeyConfig\x12\x36.google.cloud.kms.v1.ShowEffectiveAutokeyConfigRequest\x1a\x37.google.cloud.kms.v1.ShowEffectiveAutokeyConfigResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*}:showEffectiveAutokeyConfig\x1at\xca\x41\x17\x63loudkms.googleapis.com\xd2\x41Whttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloudkmsBY\n\x17\x63om.google.cloud.kms.v1B\x11\x41utokeyAdminProtoP\x01Z)cloud.google.com/go/kms/apiv1/kmspb;kmspbb\x06proto3"
14
+ descriptor_data = "\n\'google/cloud/kms/v1/autokey_admin.proto\x12\x13google.cloud.kms.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\"\x93\x01\n\x1aUpdateAutokeyConfigRequest\x12?\n\x0e\x61utokey_config\x18\x01 \x01(\x0b\x32\".google.cloud.kms.v1.AutokeyConfigB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"V\n\x17GetAutokeyConfigRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%cloudkms.googleapis.com/AutokeyConfig\"\x87\x05\n\rAutokeyConfig\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x18\n\x0bkey_project\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12<\n\x05state\x18\x04 \x01(\x0e\x32(.google.cloud.kms.v1.AutokeyConfig.StateB\x03\xe0\x41\x03\x12\x11\n\x04\x65tag\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x65\n\x1bkey_project_resolution_mode\x18\x08 \x01(\x0e\x32;.google.cloud.kms.v1.AutokeyConfig.KeyProjectResolutionModeB\x03\xe0\x41\x01\"y\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x17\n\x13KEY_PROJECT_DELETED\x10\x02\x12\x11\n\rUNINITIALIZED\x10\x03\x12!\n\x1dKEY_PROJECT_PERMISSION_DENIED\x10\x04\"\x86\x01\n\x18KeyProjectResolutionMode\x12+\n\'KEY_PROJECT_RESOLUTION_MODE_UNSPECIFIED\x10\x00\x12\x19\n\x15\x44\x45\x44ICATED_KEY_PROJECT\x10\x01\x12\x14\n\x10RESOURCE_PROJECT\x10\x02\x12\x0c\n\x08\x44ISABLED\x10\x03:\x8c\x01\xea\x41\x88\x01\n%cloudkms.googleapis.com/AutokeyConfig\x12\x1e\x66olders/{folder}/autokeyConfig\x12 projects/{project}/autokeyConfig*\x0e\x61utokeyConfigs2\rautokeyConfig\"h\n!ShowEffectiveAutokeyConfigRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\"9\n\"ShowEffectiveAutokeyConfigResponse\x12\x13\n\x0bkey_project\x18\x01 \x01(\t2\xb7\x06\n\x0c\x41utokeyAdmin\x12\x9a\x02\n\x13UpdateAutokeyConfig\x12/.google.cloud.kms.v1.UpdateAutokeyConfigRequest\x1a\".google.cloud.kms.v1.AutokeyConfig\"\xad\x01\xda\x41\x1a\x61utokey_config,update_mask\x82\xd3\xe4\x93\x02\x89\x01\x32\x31/v1/{autokey_config.name=folders/*/autokeyConfig}:\x0e\x61utokey_configZD22/v1/{autokey_config.name=projects/*/autokeyConfig}:\x0e\x61utokey_config\x12\xbe\x01\n\x10GetAutokeyConfig\x12,.google.cloud.kms.v1.GetAutokeyConfigRequest\x1a\".google.cloud.kms.v1.AutokeyConfig\"X\xda\x41\x04name\x82\xd3\xe4\x93\x02K\x12\"/v1/{name=folders/*/autokeyConfig}Z%\x12#/v1/{name=projects/*/autokeyConfig}\x12\xd2\x01\n\x1aShowEffectiveAutokeyConfig\x12\x36.google.cloud.kms.v1.ShowEffectiveAutokeyConfigRequest\x1a\x37.google.cloud.kms.v1.ShowEffectiveAutokeyConfigResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*}:showEffectiveAutokeyConfig\x1at\xca\x41\x17\x63loudkms.googleapis.com\xd2\x41Whttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloudkmsBY\n\x17\x63om.google.cloud.kms.v1B\x11\x41utokeyAdminProtoP\x01Z)cloud.google.com/go/kms/apiv1/kmspb;kmspbb\x06proto3"
15
15
 
16
- pool = Google::Protobuf::DescriptorPool.generated_pool
17
-
18
- begin
19
- pool.add_serialized_file(descriptor_data)
20
- rescue TypeError
21
- # Compatibility code: will be removed in the next major version.
22
- require 'google/protobuf/descriptor_pb'
23
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
24
- parsed.clear_dependency
25
- serialized = parsed.class.encode(parsed)
26
- file = pool.add_serialized_file(serialized)
27
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
28
- imports = [
29
- ["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"],
30
- ]
31
- imports.each do |type_name, expected_filename|
32
- import_file = pool.lookup(type_name).file_descriptor
33
- if import_file.name != expected_filename
34
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
35
- end
36
- end
37
- warn "Each proto file must use a consistent fully-qualified name."
38
- warn "This will become an error in the next major version."
39
- end
16
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
17
+ pool.add_serialized_file(descriptor_data)
40
18
 
41
19
  module Google
42
20
  module Cloud
@@ -46,6 +24,7 @@ module Google
46
24
  GetAutokeyConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.kms.v1.GetAutokeyConfigRequest").msgclass
47
25
  AutokeyConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.kms.v1.AutokeyConfig").msgclass
48
26
  AutokeyConfig::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.kms.v1.AutokeyConfig.State").enummodule
27
+ AutokeyConfig::KeyProjectResolutionMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.kms.v1.AutokeyConfig.KeyProjectResolutionMode").enummodule
49
28
  ShowEffectiveAutokeyConfigRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.kms.v1.ShowEffectiveAutokeyConfigRequest").msgclass
50
29
  ShowEffectiveAutokeyConfigResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.kms.v1.ShowEffectiveAutokeyConfigResponse").msgclass
51
30
  end
@@ -25,13 +25,15 @@ module Google
25
25
  module V1
26
26
  module AutokeyAdmin
27
27
  # Provides interfaces for managing [Cloud KMS
28
- # Autokey](https://cloud.google.com/kms/help/autokey) folder-level
29
- # configurations. A configuration is inherited by all descendent projects. A
30
- # configuration at one folder overrides any other configurations in its
31
- # ancestry. Setting a configuration on a folder is a prerequisite for Cloud KMS
32
- # Autokey, so that users working in a descendant project can request
33
- # provisioned [CryptoKeys][google.cloud.kms.v1.CryptoKey], ready for Customer
34
- # Managed Encryption Key (CMEK) use, on-demand.
28
+ # Autokey](https://cloud.google.com/kms/help/autokey) folder-level or
29
+ # project-level configurations. A configuration is inherited by all descendent
30
+ # folders and projects. A configuration at a folder or project overrides any
31
+ # other configurations in its ancestry. Setting a configuration on a folder is
32
+ # a prerequisite for Cloud KMS Autokey, so that users working in a descendant
33
+ # project can request provisioned [CryptoKeys][google.cloud.kms.v1.CryptoKey],
34
+ # ready for Customer Managed Encryption Key (CMEK) use, on-demand when using
35
+ # the dedicated key project mode. This is not required when using the delegated
36
+ # key management mode for same-project keys.
35
37
  class Service
36
38
 
37
39
  include ::GRPC::GenericService
@@ -40,16 +42,16 @@ module Google
40
42
  self.unmarshal_class_method = :decode
41
43
  self.service_name = 'google.cloud.kms.v1.AutokeyAdmin'
42
44
 
43
- # Updates the [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig] for a
44
- # folder. The caller must have both `cloudkms.autokeyConfigs.update`
45
+ # Updates the [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig] for a folder
46
+ # or a project. The caller must have both `cloudkms.autokeyConfigs.update`
45
47
  # permission on the parent folder and `cloudkms.cryptoKeys.setIamPolicy`
46
48
  # permission on the provided key project. A
47
49
  # [KeyHandle][google.cloud.kms.v1.KeyHandle] creation in the folder's
48
50
  # descendant projects will use this configuration to determine where to
49
51
  # create the resulting [CryptoKey][google.cloud.kms.v1.CryptoKey].
50
52
  rpc :UpdateAutokeyConfig, ::Google::Cloud::Kms::V1::UpdateAutokeyConfigRequest, ::Google::Cloud::Kms::V1::AutokeyConfig
51
- # Returns the [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig] for a
52
- # folder.
53
+ # Returns the [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig] for a folder
54
+ # or project.
53
55
  rpc :GetAutokeyConfig, ::Google::Cloud::Kms::V1::GetAutokeyConfigRequest, ::Google::Cloud::Kms::V1::AutokeyConfig
54
56
  # Returns the effective Cloud KMS Autokey configuration for a given project.
55
57
  rpc :ShowEffectiveAutokeyConfig, ::Google::Cloud::Kms::V1::ShowEffectiveAutokeyConfigRequest, ::Google::Cloud::Kms::V1::ShowEffectiveAutokeyConfigResponse
@@ -13,29 +13,8 @@ require 'google/longrunning/operations_pb'
13
13
 
14
14
  descriptor_data = "\n!google/cloud/kms/v1/autokey.proto\x12\x13google.cloud.kms.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/longrunning/operations.proto\"\xa8\x01\n\x16\x43reateKeyHandleRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x1a\n\rkey_handle_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x37\n\nkey_handle\x18\x03 \x01(\x0b\x32\x1e.google.cloud.kms.v1.KeyHandleB\x03\xe0\x41\x02\"N\n\x13GetKeyHandleRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!cloudkms.googleapis.com/KeyHandle\"\xff\x01\n\tKeyHandle\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12:\n\x07kms_key\x18\x03 \x01(\tB)\xe0\x41\x03\xfa\x41#\n!cloudkms.googleapis.com/CryptoKey\x12#\n\x16resource_type_selector\x18\x04 \x01(\tB\x03\xe0\x41\x02:~\xea\x41{\n!cloudkms.googleapis.com/KeyHandle\x12?projects/{project}/locations/{location}/keyHandles/{key_handle}*\nkeyHandles2\tkeyHandle\"\x19\n\x17\x43reateKeyHandleMetadata\"\x98\x01\n\x15ListKeyHandlesRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\"f\n\x16ListKeyHandlesResponse\x12\x33\n\x0bkey_handles\x18\x01 \x03(\x0b\x32\x1e.google.cloud.kms.v1.KeyHandle\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\xb4\x05\n\x07\x41utokey\x12\xeb\x01\n\x0f\x43reateKeyHandle\x12+.google.cloud.kms.v1.CreateKeyHandleRequest\x1a\x1d.google.longrunning.Operation\"\x8b\x01\xca\x41$\n\tKeyHandle\x12\x17\x43reateKeyHandleMetadata\xda\x41\x1fparent,key_handle,key_handle_id\x82\xd3\xe4\x93\x02<\"./v1/{parent=projects/*/locations/*}/keyHandles:\nkey_handle\x12\x97\x01\n\x0cGetKeyHandle\x12(.google.cloud.kms.v1.GetKeyHandleRequest\x1a\x1e.google.cloud.kms.v1.KeyHandle\"=\xda\x41\x04name\x82\xd3\xe4\x93\x02\x30\x12./v1/{name=projects/*/locations/*/keyHandles/*}\x12\xaa\x01\n\x0eListKeyHandles\x12*.google.cloud.kms.v1.ListKeyHandlesRequest\x1a+.google.cloud.kms.v1.ListKeyHandlesResponse\"?\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x30\x12./v1/{parent=projects/*/locations/*}/keyHandles\x1at\xca\x41\x17\x63loudkms.googleapis.com\xd2\x41Whttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloudkmsBT\n\x17\x63om.google.cloud.kms.v1B\x0c\x41utokeyProtoP\x01Z)cloud.google.com/go/kms/apiv1/kmspb;kmspbb\x06proto3"
15
15
 
16
- pool = Google::Protobuf::DescriptorPool.generated_pool
17
-
18
- begin
19
- pool.add_serialized_file(descriptor_data)
20
- rescue TypeError
21
- # Compatibility code: will be removed in the next major version.
22
- require 'google/protobuf/descriptor_pb'
23
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
24
- parsed.clear_dependency
25
- serialized = parsed.class.encode(parsed)
26
- file = pool.add_serialized_file(serialized)
27
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
28
- imports = [
29
- ]
30
- imports.each do |type_name, expected_filename|
31
- import_file = pool.lookup(type_name).file_descriptor
32
- if import_file.name != expected_filename
33
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
34
- end
35
- end
36
- warn "Each proto file must use a consistent fully-qualified name."
37
- warn "This will become an error in the next major version."
38
- end
16
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
17
+ pool.add_serialized_file(descriptor_data)
39
18
 
40
19
  module Google
41
20
  module Cloud
@@ -14,31 +14,8 @@ require 'google/protobuf/timestamp_pb'
14
14
 
15
15
  descriptor_data = "\n%google/cloud/kms/v1/ekm_service.proto\x12\x13google.cloud.kms.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xb3\x01\n\x19ListEkmConnectionsRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01\"\x86\x01\n\x1aListEkmConnectionsResponse\x12;\n\x0f\x65km_connections\x18\x01 \x03(\x0b\x32\".google.cloud.kms.v1.EkmConnection\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x05\"V\n\x17GetEkmConnectionRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%cloudkms.googleapis.com/EkmConnection\"\xb8\x01\n\x1a\x43reateEkmConnectionRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x1e\n\x11\x65km_connection_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12?\n\x0e\x65km_connection\x18\x03 \x01(\x0b\x32\".google.cloud.kms.v1.EkmConnectionB\x03\xe0\x41\x02\"\x93\x01\n\x1aUpdateEkmConnectionRequest\x12?\n\x0e\x65km_connection\x18\x01 \x01(\x0b\x32\".google.cloud.kms.v1.EkmConnectionB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"N\n\x13GetEkmConfigRequest\x12\x37\n\x04name\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!cloudkms.googleapis.com/EkmConfig\"\x87\x01\n\x16UpdateEkmConfigRequest\x12\x37\n\nekm_config\x18\x01 \x01(\x0b\x32\x1e.google.cloud.kms.v1.EkmConfigB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"\xbf\x02\n\x0b\x43\x65rtificate\x12\x14\n\x07raw_der\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x02\x12\x13\n\x06parsed\x18\x02 \x01(\x08\x42\x03\xe0\x41\x03\x12\x13\n\x06issuer\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12\x14\n\x07subject\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12*\n\x1dsubject_alternative_dns_names\x18\x05 \x03(\tB\x03\xe0\x41\x03\x12\x38\n\x0fnot_before_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x37\n\x0enot_after_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x1a\n\rserial_number\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x1f\n\x12sha256_fingerprint\x18\t \x01(\tB\x03\xe0\x41\x03\"\xe2\x05\n\rEkmConnection\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12R\n\x11service_resolvers\x18\x03 \x03(\x0b\x32\x32.google.cloud.kms.v1.EkmConnection.ServiceResolverB\x03\xe0\x41\x01\x12\x11\n\x04\x65tag\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12V\n\x13key_management_mode\x18\x06 \x01(\x0e\x32\x34.google.cloud.kms.v1.EkmConnection.KeyManagementModeB\x03\xe0\x41\x01\x12\x1e\n\x11\x63rypto_space_path\x18\x07 \x01(\tB\x03\xe0\x41\x01\x1a\xde\x01\n\x0fServiceResolver\x12R\n\x19service_directory_service\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'servicedirectory.googleapis.com/Service\x12\x1c\n\x0f\x65ndpoint_filter\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08hostname\x18\x03 \x01(\tB\x03\xe0\x41\x02\x12\x42\n\x13server_certificates\x18\x04 \x03(\x0b\x32 .google.cloud.kms.v1.CertificateB\x03\xe0\x41\x02\"S\n\x11KeyManagementMode\x12#\n\x1fKEY_MANAGEMENT_MODE_UNSPECIFIED\x10\x00\x12\n\n\x06MANUAL\x10\x01\x12\r\n\tCLOUD_KMS\x10\x02:s\xea\x41p\n%cloudkms.googleapis.com/EkmConnection\x12Gprojects/{project}/locations/{location}/ekmConnections/{ekm_connection}\"\xc8\x01\n\tEkmConfig\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12M\n\x16\x64\x65\x66\x61ult_ekm_connection\x18\x02 \x01(\tB-\xe0\x41\x01\xfa\x41\'\n%cloudkms.googleapis.com/EkmConnection:Y\xea\x41V\n!cloudkms.googleapis.com/EkmConfig\x12\x31projects/{project}/locations/{location}/ekmConfig\"X\n\x19VerifyConnectivityRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%cloudkms.googleapis.com/EkmConnection\"\x1c\n\x1aVerifyConnectivityResponse2\xdc\x0b\n\nEkmService\x12\xba\x01\n\x12ListEkmConnections\x12..google.cloud.kms.v1.ListEkmConnectionsRequest\x1a/.google.cloud.kms.v1.ListEkmConnectionsResponse\"C\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{parent=projects/*/locations/*}/ekmConnections\x12\xa7\x01\n\x10GetEkmConnection\x12,.google.cloud.kms.v1.GetEkmConnectionRequest\x1a\".google.cloud.kms.v1.EkmConnection\"A\xda\x41\x04name\x82\xd3\xe4\x93\x02\x34\x12\x32/v1/{name=projects/*/locations/*/ekmConnections/*}\x12\xe0\x01\n\x13\x43reateEkmConnection\x12/.google.cloud.kms.v1.CreateEkmConnectionRequest\x1a\".google.cloud.kms.v1.EkmConnection\"t\xda\x41\'parent,ekm_connection_id,ekm_connection\x82\xd3\xe4\x93\x02\x44\"2/v1/{parent=projects/*/locations/*}/ekmConnections:\x0e\x65km_connection\x12\xe2\x01\n\x13UpdateEkmConnection\x12/.google.cloud.kms.v1.UpdateEkmConnectionRequest\x1a\".google.cloud.kms.v1.EkmConnection\"v\xda\x41\x1a\x65km_connection,update_mask\x82\xd3\xe4\x93\x02S2A/v1/{ekm_connection.name=projects/*/locations/*/ekmConnections/*}:\x0e\x65km_connection\x12\x94\x01\n\x0cGetEkmConfig\x12(.google.cloud.kms.v1.GetEkmConfigRequest\x1a\x1e.google.cloud.kms.v1.EkmConfig\":\xda\x41\x04name\x82\xd3\xe4\x93\x02-\x12+/v1/{name=projects/*/locations/*/ekmConfig}\x12\xc3\x01\n\x0fUpdateEkmConfig\x12+.google.cloud.kms.v1.UpdateEkmConfigRequest\x1a\x1e.google.cloud.kms.v1.EkmConfig\"c\xda\x41\x16\x65km_config,update_mask\x82\xd3\xe4\x93\x02\x44\x32\x36/v1/{ekm_config.name=projects/*/locations/*/ekmConfig}:\nekm_config\x12\xcb\x01\n\x12VerifyConnectivity\x12..google.cloud.kms.v1.VerifyConnectivityRequest\x1a/.google.cloud.kms.v1.VerifyConnectivityResponse\"T\xda\x41\x04name\x82\xd3\xe4\x93\x02G\x12\x45/v1/{name=projects/*/locations/*/ekmConnections/*}:verifyConnectivity\x1at\xca\x41\x17\x63loudkms.googleapis.com\xd2\x41Whttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloudkmsB\x82\x02\n\x17\x63om.google.cloud.kms.v1B\x0f\x45kmServiceProtoP\x01Z)cloud.google.com/go/kms/apiv1/kmspb;kmspb\xaa\x02\x13Google.Cloud.Kms.V1\xca\x02\x13Google\\Cloud\\Kms\\V1\xea\x41|\n\'servicedirectory.googleapis.com/Service\x12Qprojects/{project}/locations/{location}/namespaces/{namespace}/services/{service}b\x06proto3"
16
16
 
17
- pool = Google::Protobuf::DescriptorPool.generated_pool
18
-
19
- begin
20
- pool.add_serialized_file(descriptor_data)
21
- rescue TypeError
22
- # Compatibility code: will be removed in the next major version.
23
- require 'google/protobuf/descriptor_pb'
24
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
25
- parsed.clear_dependency
26
- serialized = parsed.class.encode(parsed)
27
- file = pool.add_serialized_file(serialized)
28
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
29
- imports = [
30
- ["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"],
31
- ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
32
- ]
33
- imports.each do |type_name, expected_filename|
34
- import_file = pool.lookup(type_name).file_descriptor
35
- if import_file.name != expected_filename
36
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
37
- end
38
- end
39
- warn "Each proto file must use a consistent fully-qualified name."
40
- warn "This will become an error in the next major version."
41
- end
17
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
18
+ pool.add_serialized_file(descriptor_data)
42
19
 
43
20
  module Google
44
21
  module Cloud
@@ -16,31 +16,8 @@ require 'google/protobuf/timestamp_pb'
16
16
 
17
17
  descriptor_data = "\n(google/cloud/kms/v1/hsm_management.proto\x12\x13google.cloud.kms.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a#google/longrunning/operations.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xa9\x07\n\x17SingleTenantHsmInstance\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x46\n\x05state\x18\x03 \x01(\x0e\x32\x32.google.cloud.kms.v1.SingleTenantHsmInstance.StateB\x03\xe0\x41\x03\x12Q\n\x0bquorum_auth\x18\x04 \x01(\x0b\x32\x37.google.cloud.kms.v1.SingleTenantHsmInstance.QuorumAuthB\x03\xe0\x41\x02\x12\x34\n\x0b\x64\x65lete_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12J\n\"unrefreshed_duration_until_disable\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x03\x12\x35\n\x0c\x64isable_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x1a~\n\nQuorumAuth\x12!\n\x14total_approver_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x02\x12$\n\x17required_approver_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x03\x12\'\n\x1atwo_factor_public_key_pems\x18\x03 \x03(\tB\x03\xe0\x41\x03\"\xa6\x01\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12(\n$PENDING_TWO_FACTOR_AUTH_REGISTRATION\x10\x02\x12\n\n\x06\x41\x43TIVE\x10\x03\x12\r\n\tDISABLING\x10\x04\x12\x0c\n\x08\x44ISABLED\x10\x05\x12\x0c\n\x08\x44\x45LETING\x10\x06\x12\x0b\n\x07\x44\x45LETED\x10\x07\x12\n\n\x06\x46\x41ILED\x10\x08:\xc7\x01\xea\x41\xc3\x01\n/cloudkms.googleapis.com/SingleTenantHsmInstance\x12]projects/{project}/locations/{location}/singleTenantHsmInstances/{single_tenant_hsm_instance}*\x18singleTenantHsmInstances2\x17singleTenantHsmInstance\"\x99\x15\n\x1fSingleTenantHsmInstanceProposal\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12N\n\x05state\x18\x03 \x01(\x0e\x32:.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.StateB\x03\xe0\x41\x03\x12\x1b\n\x0e\x66\x61ilure_reason\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12g\n\x11quorum_parameters\x18\x05 \x01(\x0b\x32\x45.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.QuorumParametersB\x03\xe0\x41\x03H\x00\x12\x85\x01\n!required_action_quorum_parameters\x18\x0e \x01(\x0b\x32S.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.RequiredActionQuorumParametersB\x03\xe0\x41\x03H\x00\x12\x31\n\x0b\x65xpire_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x01\x12-\n\x03ttl\x18\x07 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x04H\x01\x12\x34\n\x0b\x64\x65lete_time\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x33\n\npurge_time\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12w\n\x1dregister_two_factor_auth_keys\x18\x08 \x01(\x0b\x32N.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.RegisterTwoFactorAuthKeysH\x02\x12\x81\x01\n\"disable_single_tenant_hsm_instance\x18\t \x01(\x0b\x32S.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.DisableSingleTenantHsmInstanceH\x02\x12\x7f\n!enable_single_tenant_hsm_instance\x18\n \x01(\x0b\x32R.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.EnableSingleTenantHsmInstanceH\x02\x12\x7f\n!delete_single_tenant_hsm_instance\x18\x0b \x01(\x0b\x32R.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.DeleteSingleTenantHsmInstanceH\x02\x12\x61\n\x11\x61\x64\x64_quorum_member\x18\x0c \x01(\x0b\x32\x44.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.AddQuorumMemberH\x02\x12g\n\x14remove_quorum_member\x18\r \x01(\x0b\x32G.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.RemoveQuorumMemberH\x02\x12\x81\x01\n\"refresh_single_tenant_hsm_instance\x18\x11 \x01(\x0b\x32S.google.cloud.kms.v1.SingleTenantHsmInstanceProposal.RefreshSingleTenantHsmInstanceH\x02\x1a\xa3\x01\n\x10QuorumParameters\x12$\n\x17required_approver_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x03\x12\x37\n\nchallenges\x18\x02 \x03(\x0b\x32\x1e.google.cloud.kms.v1.ChallengeB\x03\xe0\x41\x03\x12\x30\n#approved_two_factor_public_key_pems\x18\x03 \x03(\tB\x03\xe0\x41\x03\x1a\xfa\x01\n\x1eRequiredActionQuorumParameters\x12@\n\x13required_challenges\x18\x01 \x03(\x0b\x32\x1e.google.cloud.kms.v1.ChallengeB\x03\xe0\x41\x03\x12$\n\x17required_approver_count\x18\x02 \x01(\x05\x42\x03\xe0\x41\x03\x12>\n\x11quorum_challenges\x18\x03 \x03(\x0b\x32\x1e.google.cloud.kms.v1.ChallengeB\x03\xe0\x41\x03\x12\x30\n#approved_two_factor_public_key_pems\x18\x04 \x03(\tB\x03\xe0\x41\x03\x1aj\n\x19RegisterTwoFactorAuthKeys\x12$\n\x17required_approver_count\x18\x01 \x01(\x05\x42\x03\xe0\x41\x02\x12\'\n\x1atwo_factor_public_key_pems\x18\x02 \x03(\tB\x03\xe0\x41\x02\x1a \n\x1e\x44isableSingleTenantHsmInstance\x1a\x1f\n\x1d\x45nableSingleTenantHsmInstance\x1a\x1f\n\x1d\x44\x65leteSingleTenantHsmInstance\x1a\x39\n\x0f\x41\x64\x64QuorumMember\x12&\n\x19two_factor_public_key_pem\x18\x01 \x01(\tB\x03\xe0\x41\x02\x1a<\n\x12RemoveQuorumMember\x12&\n\x19two_factor_public_key_pem\x18\x01 \x01(\tB\x03\xe0\x41\x02\x1a \n\x1eRefreshSingleTenantHsmInstance\"|\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x43REATING\x10\x01\x12\x0b\n\x07PENDING\x10\x02\x12\x0c\n\x08\x41PPROVED\x10\x03\x12\x0b\n\x07RUNNING\x10\x04\x12\r\n\tSUCCEEDED\x10\x05\x12\n\n\x06\x46\x41ILED\x10\x06\x12\x0b\n\x07\x44\x45LETED\x10\x07:\xf4\x01\xea\x41\xf0\x01\n7cloudkms.googleapis.com/SingleTenantHsmInstanceProposal\x12rprojects/{project}/locations/{location}/singleTenantHsmInstances/{single_tenant_hsm_instance}/proposals/{proposal}* singleTenantHsmInstanceProposals2\x1fsingleTenantHsmInstanceProposalB\x15\n\x13\x61pproval_parametersB\x0c\n\nexpirationB\x0b\n\toperation\"@\n\tChallenge\x12\x16\n\tchallenge\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x03\x12\x1b\n\x0epublic_key_pem\x18\x02 \x01(\tB\x03\xe0\x41\x03\"L\n\x0e\x43hallengeReply\x12\x1d\n\x10signed_challenge\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x02\x12\x1b\n\x0epublic_key_pem\x18\x02 \x01(\tB\x03\xe0\x41\x02\"\xd8\x01\n#ListSingleTenantHsmInstancesRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0cshow_deleted\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xa6\x01\n$ListSingleTenantHsmInstancesResponse\x12Q\n\x1bsingle_tenant_hsm_instances\x18\x01 \x03(\x0b\x32,.google.cloud.kms.v1.SingleTenantHsmInstance\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x05\"j\n!GetSingleTenantHsmInstanceRequest\x12\x45\n\x04name\x18\x01 \x01(\tB7\xe0\x41\x02\xfa\x41\x31\n/cloudkms.googleapis.com/SingleTenantHsmInstance\"\xe4\x01\n$CreateSingleTenantHsmInstanceRequest\x12\x39\n\x06parent\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!locations.googleapis.com/Location\x12*\n\x1dsingle_tenant_hsm_instance_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12U\n\x1asingle_tenant_hsm_instance\x18\x03 \x01(\x0b\x32,.google.cloud.kms.v1.SingleTenantHsmInstanceB\x03\xe0\x41\x02\"\'\n%CreateSingleTenantHsmInstanceMetadata\"\x94\x02\n,CreateSingleTenantHsmInstanceProposalRequest\x12G\n\x06parent\x18\x01 \x01(\tB7\xe0\x41\x02\xfa\x41\x31\n/cloudkms.googleapis.com/SingleTenantHsmInstance\x12\x33\n&single_tenant_hsm_instance_proposal_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x66\n#single_tenant_hsm_instance_proposal\x18\x03 \x01(\x0b\x32\x34.google.cloud.kms.v1.SingleTenantHsmInstanceProposalB\x03\xe0\x41\x02\"/\n-CreateSingleTenantHsmInstanceProposalMetadata\"z\n)GetSingleTenantHsmInstanceProposalRequest\x12M\n\x04name\x18\x01 \x01(\tB?\xe0\x41\x02\xfa\x41\x39\n7cloudkms.googleapis.com/SingleTenantHsmInstanceProposal\"\x97\x05\n-ApproveSingleTenantHsmInstanceProposalRequest\x12M\n\x04name\x18\x01 \x01(\tB?\xe0\x41\x02\xfa\x41\x39\n7cloudkms.googleapis.com/SingleTenantHsmInstanceProposal\x12k\n\x0cquorum_reply\x18\x02 \x01(\x0b\x32N.google.cloud.kms.v1.ApproveSingleTenantHsmInstanceProposalRequest.QuorumReplyB\x03\xe0\x41\x02H\x00\x12\x89\x01\n\x1crequired_action_quorum_reply\x18\x03 \x01(\x0b\x32\\.google.cloud.kms.v1.ApproveSingleTenantHsmInstanceProposalRequest.RequiredActionQuorumReplyB\x03\xe0\x41\x02H\x00\x1aR\n\x0bQuorumReply\x12\x43\n\x11\x63hallenge_replies\x18\x01 \x03(\x0b\x32#.google.cloud.kms.v1.ChallengeReplyB\x03\xe0\x41\x02\x1a\xb5\x01\n\x19RequiredActionQuorumReply\x12L\n\x1arequired_challenge_replies\x18\x01 \x03(\x0b\x32#.google.cloud.kms.v1.ChallengeReplyB\x03\xe0\x41\x02\x12J\n\x18quorum_challenge_replies\x18\x02 \x03(\x0b\x32#.google.cloud.kms.v1.ChallengeReplyB\x03\xe0\x41\x02\x42\x12\n\x10\x61pproval_payload\"0\n.ApproveSingleTenantHsmInstanceProposalResponse\"~\n-ExecuteSingleTenantHsmInstanceProposalRequest\x12M\n\x04name\x18\x01 \x01(\tB?\xe0\x41\x02\xfa\x41\x39\n7cloudkms.googleapis.com/SingleTenantHsmInstanceProposal\"0\n.ExecuteSingleTenantHsmInstanceProposalResponse\"0\n.ExecuteSingleTenantHsmInstanceProposalMetadata\"\xee\x01\n+ListSingleTenantHsmInstanceProposalsRequest\x12G\n\x06parent\x18\x01 \x01(\tB7\xe0\x41\x02\xfa\x41\x31\n/cloudkms.googleapis.com/SingleTenantHsmInstance\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x13\n\x06\x66ilter\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08order_by\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x19\n\x0cshow_deleted\x18\x06 \x01(\x08\x42\x03\xe0\x41\x01\"\xbf\x01\n,ListSingleTenantHsmInstanceProposalsResponse\x12\x62\n$single_tenant_hsm_instance_proposals\x18\x01 \x03(\x0b\x32\x34.google.cloud.kms.v1.SingleTenantHsmInstanceProposal\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x12\n\ntotal_size\x18\x03 \x01(\x05\"}\n,DeleteSingleTenantHsmInstanceProposalRequest\x12M\n\x04name\x18\x01 \x01(\tB?\xe0\x41\x02\xfa\x41\x39\n7cloudkms.googleapis.com/SingleTenantHsmInstanceProposal2\xa3\x15\n\rHsmManagement\x12\xe2\x01\n\x1cListSingleTenantHsmInstances\x12\x38.google.cloud.kms.v1.ListSingleTenantHsmInstancesRequest\x1a\x39.google.cloud.kms.v1.ListSingleTenantHsmInstancesResponse\"M\xda\x41\x06parent\x82\xd3\xe4\x93\x02>\x12</v1/{parent=projects/*/locations/*}/singleTenantHsmInstances\x12\xcf\x01\n\x1aGetSingleTenantHsmInstance\x12\x36.google.cloud.kms.v1.GetSingleTenantHsmInstanceRequest\x1a,.google.cloud.kms.v1.SingleTenantHsmInstance\"K\xda\x41\x04name\x82\xd3\xe4\x93\x02>\x12</v1/{name=projects/*/locations/*/singleTenantHsmInstances/*}\x12\xe1\x02\n\x1d\x43reateSingleTenantHsmInstance\x12\x39.google.cloud.kms.v1.CreateSingleTenantHsmInstanceRequest\x1a\x1d.google.longrunning.Operation\"\xe5\x01\xca\x41@\n\x17SingleTenantHsmInstance\x12%CreateSingleTenantHsmInstanceMetadata\xda\x41?parent,single_tenant_hsm_instance,single_tenant_hsm_instance_id\x82\xd3\xe4\x93\x02Z\"</v1/{parent=projects/*/locations/*}/singleTenantHsmInstances:\x1asingle_tenant_hsm_instance\x12\xa8\x03\n%CreateSingleTenantHsmInstanceProposal\x12\x41.google.cloud.kms.v1.CreateSingleTenantHsmInstanceProposalRequest\x1a\x1d.google.longrunning.Operation\"\x9c\x02\xca\x41P\n\x1fSingleTenantHsmInstanceProposal\x12-CreateSingleTenantHsmInstanceProposalMetadata\xda\x41Qparent,single_tenant_hsm_instance_proposal,single_tenant_hsm_instance_proposal_id\x82\xd3\xe4\x93\x02o\"H/v1/{parent=projects/*/locations/*/singleTenantHsmInstances/*}/proposals:#single_tenant_hsm_instance_proposal\x12\xa2\x02\n&ApproveSingleTenantHsmInstanceProposal\x12\x42.google.cloud.kms.v1.ApproveSingleTenantHsmInstanceProposalRequest\x1a\x43.google.cloud.kms.v1.ApproveSingleTenantHsmInstanceProposalResponse\"o\xda\x41\x11name,quorum_reply\x82\xd3\xe4\x93\x02U\"P/v1/{name=projects/*/locations/*/singleTenantHsmInstances/*/proposals/*}:approve:\x01*\x12\xd3\x02\n&ExecuteSingleTenantHsmInstanceProposal\x12\x42.google.cloud.kms.v1.ExecuteSingleTenantHsmInstanceProposalRequest\x1a\x1d.google.longrunning.Operation\"\xc5\x01\xca\x41`\n.ExecuteSingleTenantHsmInstanceProposalResponse\x12.ExecuteSingleTenantHsmInstanceProposalMetadata\xda\x41\x04name\x82\xd3\xe4\x93\x02U\"P/v1/{name=projects/*/locations/*/singleTenantHsmInstances/*/proposals/*}:execute:\x01*\x12\xf3\x01\n\"GetSingleTenantHsmInstanceProposal\x12>.google.cloud.kms.v1.GetSingleTenantHsmInstanceProposalRequest\x1a\x34.google.cloud.kms.v1.SingleTenantHsmInstanceProposal\"W\xda\x41\x04name\x82\xd3\xe4\x93\x02J\x12H/v1/{name=projects/*/locations/*/singleTenantHsmInstances/*/proposals/*}\x12\x86\x02\n$ListSingleTenantHsmInstanceProposals\x12@.google.cloud.kms.v1.ListSingleTenantHsmInstanceProposalsRequest\x1a\x41.google.cloud.kms.v1.ListSingleTenantHsmInstanceProposalsResponse\"Y\xda\x41\x06parent\x82\xd3\xe4\x93\x02J\x12H/v1/{parent=projects/*/locations/*/singleTenantHsmInstances/*}/proposals\x12\xdb\x01\n%DeleteSingleTenantHsmInstanceProposal\x12\x41.google.cloud.kms.v1.DeleteSingleTenantHsmInstanceProposalRequest\x1a\x16.google.protobuf.Empty\"W\xda\x41\x04name\x82\xd3\xe4\x93\x02J*H/v1/{name=projects/*/locations/*/singleTenantHsmInstances/*/proposals/*}\x1at\xca\x41\x17\x63loudkms.googleapis.com\xd2\x41Whttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloudkmsB\x86\x01\n\x17\x63om.google.cloud.kms.v1B\x12HsmManagementProtoP\x01Z)cloud.google.com/go/kms/apiv1/kmspb;kmspb\xaa\x02\x13Google.Cloud.Kms.V1\xca\x02\x13Google\\Cloud\\Kms\\V1b\x06proto3"
18
18
 
19
- pool = Google::Protobuf::DescriptorPool.generated_pool
20
-
21
- begin
22
- pool.add_serialized_file(descriptor_data)
23
- rescue TypeError
24
- # Compatibility code: will be removed in the next major version.
25
- require 'google/protobuf/descriptor_pb'
26
- parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
27
- parsed.clear_dependency
28
- serialized = parsed.class.encode(parsed)
29
- file = pool.add_serialized_file(serialized)
30
- warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
31
- imports = [
32
- ["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
33
- ["google.protobuf.Duration", "google/protobuf/duration.proto"],
34
- ]
35
- imports.each do |type_name, expected_filename|
36
- import_file = pool.lookup(type_name).file_descriptor
37
- if import_file.name != expected_filename
38
- warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
39
- end
40
- end
41
- warn "Each proto file must use a consistent fully-qualified name."
42
- warn "This will become an error in the next major version."
43
- end
19
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
20
+ pool.add_serialized_file(descriptor_data)
44
21
 
45
22
  module Google
46
23
  module Cloud