google-cloud-kms 1.4.0 → 2.0.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.
- checksums.yaml +4 -4
- data/.yardopts +2 -1
- data/AUTHENTICATION.md +51 -59
- data/LICENSE.md +203 -0
- data/MIGRATING.md +326 -0
- data/README.md +33 -44
- data/lib/{google/cloud/kms/v1/doc/google/iam/v1/iam_policy.rb → google-cloud-kms.rb} +5 -7
- data/lib/google/cloud/kms.rb +93 -123
- data/lib/google/cloud/kms/version.rb +6 -2
- metadata +50 -63
- data/LICENSE +0 -201
- data/lib/google/cloud/kms/v1.rb +0 -159
- data/lib/google/cloud/kms/v1/credentials.rb +0 -42
- data/lib/google/cloud/kms/v1/doc/google/cloud/kms/v1/resources.rb +0 -524
- data/lib/google/cloud/kms/v1/doc/google/cloud/kms/v1/service.rb +0 -486
- data/lib/google/cloud/kms/v1/doc/google/iam/v1/options.rb +0 -21
- data/lib/google/cloud/kms/v1/doc/google/iam/v1/policy.rb +0 -21
- data/lib/google/cloud/kms/v1/doc/google/protobuf/duration.rb +0 -91
- data/lib/google/cloud/kms/v1/doc/google/protobuf/field_mask.rb +0 -222
- data/lib/google/cloud/kms/v1/doc/google/protobuf/timestamp.rb +0 -113
- data/lib/google/cloud/kms/v1/doc/google/type/expr.rb +0 -19
- data/lib/google/cloud/kms/v1/helpers.rb +0 -80
- data/lib/google/cloud/kms/v1/key_management_service_client.rb +0 -1810
- data/lib/google/cloud/kms/v1/key_management_service_client_config.json +0 -162
- data/lib/google/cloud/kms/v1/resources_pb.rb +0 -155
- data/lib/google/cloud/kms/v1/service_pb.rb +0 -208
- data/lib/google/cloud/kms/v1/service_services_pb.rb +0 -151
@@ -1,19 +0,0 @@
|
|
1
|
-
# Copyright 2019 Google LLC
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
|
15
|
-
|
16
|
-
module Google
|
17
|
-
module Type
|
18
|
-
end
|
19
|
-
end
|
@@ -1,80 +0,0 @@
|
|
1
|
-
# Copyright 2018 Google LLC
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# # limitations under the License.
|
14
|
-
module Google
|
15
|
-
module Cloud
|
16
|
-
module Kms
|
17
|
-
module V1
|
18
|
-
class KeyManagementServiceClient
|
19
|
-
# Alias for Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path.
|
20
|
-
# @param project [String]
|
21
|
-
# @param location [String]
|
22
|
-
# @param key_ring [String]
|
23
|
-
# @param crypto_key [String]
|
24
|
-
# @return [String]
|
25
|
-
def crypto_key_path project, location, key_ring, crypto_key
|
26
|
-
self.class.crypto_key_path project, location, key_ring, crypto_key
|
27
|
-
end
|
28
|
-
|
29
|
-
# Alias for Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path_path.
|
30
|
-
# @param project [String]
|
31
|
-
# @param location [String]
|
32
|
-
# @param key_ring [String]
|
33
|
-
# @param crypto_key_path [String]
|
34
|
-
# @return [String]
|
35
|
-
def crypto_key_path_path project, location, key_ring, crypto_key_path
|
36
|
-
self.class.crypto_key_path_path project, location, key_ring, crypto_key_path
|
37
|
-
end
|
38
|
-
|
39
|
-
# Alias for Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path.
|
40
|
-
# @param project [String]
|
41
|
-
# @param location [String]
|
42
|
-
# @param key_ring [String]
|
43
|
-
# @param crypto_key [String]
|
44
|
-
# @param crypto_key_version [String]
|
45
|
-
# @return [String]
|
46
|
-
def crypto_key_version_path project, location, key_ring, crypto_key, crypto_key_version
|
47
|
-
self.class.crypto_key_version_path project, location, key_ring, crypto_key, crypto_key_version
|
48
|
-
end
|
49
|
-
|
50
|
-
# Alias for Google::Cloud::Kms::V1::KeyManagementServiceClient.import_job_path.
|
51
|
-
# @param project [String]
|
52
|
-
# @param location [String]
|
53
|
-
# @param key_ring [String]
|
54
|
-
# @param import_job [String]
|
55
|
-
# @return [String]
|
56
|
-
def import_job_path project, location, key_ring, import_job
|
57
|
-
self.class.import_job_path project, location, key_ring, import_job
|
58
|
-
end
|
59
|
-
|
60
|
-
# Alias for Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path.
|
61
|
-
# @param project [String]
|
62
|
-
# @param location [String]
|
63
|
-
# @param key_ring [String]
|
64
|
-
# @return [String]
|
65
|
-
def key_ring_path project, location, key_ring
|
66
|
-
self.class.key_ring_path project, location, key_ring
|
67
|
-
end
|
68
|
-
|
69
|
-
# Alias for Google::Cloud::Kms::V1::KeyManagementServiceClient.location_path.
|
70
|
-
# @param project [String]
|
71
|
-
# @param location [String]
|
72
|
-
# @return [String]
|
73
|
-
def location_path project, location
|
74
|
-
self.class.location_path project, location
|
75
|
-
end
|
76
|
-
end
|
77
|
-
end
|
78
|
-
end
|
79
|
-
end
|
80
|
-
end
|
@@ -1,1810 +0,0 @@
|
|
1
|
-
# Copyright 2019 Google LLC
|
2
|
-
#
|
3
|
-
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
-
# you may not use this file except in compliance with the License.
|
5
|
-
# You may obtain a copy of the License at
|
6
|
-
#
|
7
|
-
# https://www.apache.org/licenses/LICENSE-2.0
|
8
|
-
#
|
9
|
-
# Unless required by applicable law or agreed to in writing, software
|
10
|
-
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
-
# See the License for the specific language governing permissions and
|
13
|
-
# limitations under the License.
|
14
|
-
#
|
15
|
-
# EDITING INSTRUCTIONS
|
16
|
-
# This file was generated from the file
|
17
|
-
# https://github.com/googleapis/googleapis/blob/master/google/cloud/kms/v1/service.proto,
|
18
|
-
# and updates to that file get reflected here through a refresh process.
|
19
|
-
# For the short term, the refresh process will only be runnable by Google
|
20
|
-
# engineers.
|
21
|
-
|
22
|
-
|
23
|
-
require "json"
|
24
|
-
require "pathname"
|
25
|
-
|
26
|
-
require "google/gax"
|
27
|
-
|
28
|
-
require "google/cloud/kms/v1/service_pb"
|
29
|
-
require "google/iam/v1/iam_policy_pb"
|
30
|
-
require "google/cloud/kms/v1/credentials"
|
31
|
-
require "google/cloud/kms/version"
|
32
|
-
|
33
|
-
module Google
|
34
|
-
module Cloud
|
35
|
-
module Kms
|
36
|
-
module V1
|
37
|
-
# Google Cloud Key Management Service
|
38
|
-
#
|
39
|
-
# Manages cryptographic keys and operations using those keys. Implements a REST
|
40
|
-
# model with the following objects:
|
41
|
-
#
|
42
|
-
# * {Google::Cloud::Kms::V1::KeyRing KeyRing}
|
43
|
-
# * {Google::Cloud::Kms::V1::CryptoKey CryptoKey}
|
44
|
-
# * {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}
|
45
|
-
# * {Google::Cloud::Kms::V1::ImportJob ImportJob}
|
46
|
-
#
|
47
|
-
# If you are using manual gRPC libraries, see
|
48
|
-
# [Using gRPC with Cloud KMS](https://cloud.google.com/kms/docs/grpc).
|
49
|
-
#
|
50
|
-
# @!attribute [r] key_management_service_stub
|
51
|
-
# @return [Google::Cloud::Kms::V1::KeyManagementService::Stub]
|
52
|
-
# @!attribute [r] iam_policy_stub
|
53
|
-
# @return [Google::Iam::V1::IAMPolicy::Stub]
|
54
|
-
class KeyManagementServiceClient
|
55
|
-
# @private
|
56
|
-
attr_reader :key_management_service_stub, :iam_policy_stub
|
57
|
-
|
58
|
-
# The default address of the service.
|
59
|
-
SERVICE_ADDRESS = "cloudkms.googleapis.com".freeze
|
60
|
-
|
61
|
-
# The default port of the service.
|
62
|
-
DEFAULT_SERVICE_PORT = 443
|
63
|
-
|
64
|
-
# The default set of gRPC interceptors.
|
65
|
-
GRPC_INTERCEPTORS = []
|
66
|
-
|
67
|
-
DEFAULT_TIMEOUT = 30
|
68
|
-
|
69
|
-
PAGE_DESCRIPTORS = {
|
70
|
-
"list_key_rings" => Google::Gax::PageDescriptor.new(
|
71
|
-
"page_token",
|
72
|
-
"next_page_token",
|
73
|
-
"key_rings"),
|
74
|
-
"list_import_jobs" => Google::Gax::PageDescriptor.new(
|
75
|
-
"page_token",
|
76
|
-
"next_page_token",
|
77
|
-
"import_jobs"),
|
78
|
-
"list_crypto_keys" => Google::Gax::PageDescriptor.new(
|
79
|
-
"page_token",
|
80
|
-
"next_page_token",
|
81
|
-
"crypto_keys"),
|
82
|
-
"list_crypto_key_versions" => Google::Gax::PageDescriptor.new(
|
83
|
-
"page_token",
|
84
|
-
"next_page_token",
|
85
|
-
"crypto_key_versions")
|
86
|
-
}.freeze
|
87
|
-
|
88
|
-
private_constant :PAGE_DESCRIPTORS
|
89
|
-
|
90
|
-
# The scopes needed to make gRPC calls to all of the methods defined in
|
91
|
-
# this service.
|
92
|
-
ALL_SCOPES = [
|
93
|
-
"https://www.googleapis.com/auth/cloud-platform",
|
94
|
-
"https://www.googleapis.com/auth/cloudkms"
|
95
|
-
].freeze
|
96
|
-
|
97
|
-
|
98
|
-
CRYPTO_KEY_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
99
|
-
"projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}"
|
100
|
-
)
|
101
|
-
|
102
|
-
private_constant :CRYPTO_KEY_PATH_TEMPLATE
|
103
|
-
|
104
|
-
CRYPTO_KEY_PATH_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
105
|
-
"projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key_path=**}"
|
106
|
-
)
|
107
|
-
|
108
|
-
private_constant :CRYPTO_KEY_PATH_PATH_TEMPLATE
|
109
|
-
|
110
|
-
CRYPTO_KEY_VERSION_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
111
|
-
"projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{crypto_key_version}"
|
112
|
-
)
|
113
|
-
|
114
|
-
private_constant :CRYPTO_KEY_VERSION_PATH_TEMPLATE
|
115
|
-
|
116
|
-
IMPORT_JOB_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
117
|
-
"projects/{project}/locations/{location}/keyRings/{key_ring}/importJobs/{import_job}"
|
118
|
-
)
|
119
|
-
|
120
|
-
private_constant :IMPORT_JOB_PATH_TEMPLATE
|
121
|
-
|
122
|
-
KEY_RING_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
123
|
-
"projects/{project}/locations/{location}/keyRings/{key_ring}"
|
124
|
-
)
|
125
|
-
|
126
|
-
private_constant :KEY_RING_PATH_TEMPLATE
|
127
|
-
|
128
|
-
LOCATION_PATH_TEMPLATE = Google::Gax::PathTemplate.new(
|
129
|
-
"projects/{project}/locations/{location}"
|
130
|
-
)
|
131
|
-
|
132
|
-
private_constant :LOCATION_PATH_TEMPLATE
|
133
|
-
|
134
|
-
# Returns a fully-qualified crypto_key resource name string.
|
135
|
-
# @param project [String]
|
136
|
-
# @param location [String]
|
137
|
-
# @param key_ring [String]
|
138
|
-
# @param crypto_key [String]
|
139
|
-
# @return [String]
|
140
|
-
def self.crypto_key_path project, location, key_ring, crypto_key
|
141
|
-
CRYPTO_KEY_PATH_TEMPLATE.render(
|
142
|
-
:"project" => project,
|
143
|
-
:"location" => location,
|
144
|
-
:"key_ring" => key_ring,
|
145
|
-
:"crypto_key" => crypto_key
|
146
|
-
)
|
147
|
-
end
|
148
|
-
|
149
|
-
# Returns a fully-qualified crypto_key_path resource name string.
|
150
|
-
# @param project [String]
|
151
|
-
# @param location [String]
|
152
|
-
# @param key_ring [String]
|
153
|
-
# @param crypto_key_path [String]
|
154
|
-
# @return [String]
|
155
|
-
def self.crypto_key_path_path project, location, key_ring, crypto_key_path
|
156
|
-
CRYPTO_KEY_PATH_PATH_TEMPLATE.render(
|
157
|
-
:"project" => project,
|
158
|
-
:"location" => location,
|
159
|
-
:"key_ring" => key_ring,
|
160
|
-
:"crypto_key_path" => crypto_key_path
|
161
|
-
)
|
162
|
-
end
|
163
|
-
|
164
|
-
# Returns a fully-qualified crypto_key_version resource name string.
|
165
|
-
# @param project [String]
|
166
|
-
# @param location [String]
|
167
|
-
# @param key_ring [String]
|
168
|
-
# @param crypto_key [String]
|
169
|
-
# @param crypto_key_version [String]
|
170
|
-
# @return [String]
|
171
|
-
def self.crypto_key_version_path project, location, key_ring, crypto_key, crypto_key_version
|
172
|
-
CRYPTO_KEY_VERSION_PATH_TEMPLATE.render(
|
173
|
-
:"project" => project,
|
174
|
-
:"location" => location,
|
175
|
-
:"key_ring" => key_ring,
|
176
|
-
:"crypto_key" => crypto_key,
|
177
|
-
:"crypto_key_version" => crypto_key_version
|
178
|
-
)
|
179
|
-
end
|
180
|
-
|
181
|
-
# Returns a fully-qualified import_job resource name string.
|
182
|
-
# @param project [String]
|
183
|
-
# @param location [String]
|
184
|
-
# @param key_ring [String]
|
185
|
-
# @param import_job [String]
|
186
|
-
# @return [String]
|
187
|
-
def self.import_job_path project, location, key_ring, import_job
|
188
|
-
IMPORT_JOB_PATH_TEMPLATE.render(
|
189
|
-
:"project" => project,
|
190
|
-
:"location" => location,
|
191
|
-
:"key_ring" => key_ring,
|
192
|
-
:"import_job" => import_job
|
193
|
-
)
|
194
|
-
end
|
195
|
-
|
196
|
-
# Returns a fully-qualified key_ring resource name string.
|
197
|
-
# @param project [String]
|
198
|
-
# @param location [String]
|
199
|
-
# @param key_ring [String]
|
200
|
-
# @return [String]
|
201
|
-
def self.key_ring_path project, location, key_ring
|
202
|
-
KEY_RING_PATH_TEMPLATE.render(
|
203
|
-
:"project" => project,
|
204
|
-
:"location" => location,
|
205
|
-
:"key_ring" => key_ring
|
206
|
-
)
|
207
|
-
end
|
208
|
-
|
209
|
-
# Returns a fully-qualified location resource name string.
|
210
|
-
# @param project [String]
|
211
|
-
# @param location [String]
|
212
|
-
# @return [String]
|
213
|
-
def self.location_path project, location
|
214
|
-
LOCATION_PATH_TEMPLATE.render(
|
215
|
-
:"project" => project,
|
216
|
-
:"location" => location
|
217
|
-
)
|
218
|
-
end
|
219
|
-
|
220
|
-
# @param credentials [Google::Auth::Credentials, String, Hash, GRPC::Core::Channel, GRPC::Core::ChannelCredentials, Proc]
|
221
|
-
# Provides the means for authenticating requests made by the client. This parameter can
|
222
|
-
# be many types.
|
223
|
-
# A `Google::Auth::Credentials` uses a the properties of its represented keyfile for
|
224
|
-
# authenticating requests made by this client.
|
225
|
-
# A `String` will be treated as the path to the keyfile to be used for the construction of
|
226
|
-
# credentials for this client.
|
227
|
-
# A `Hash` will be treated as the contents of a keyfile to be used for the construction of
|
228
|
-
# credentials for this client.
|
229
|
-
# A `GRPC::Core::Channel` will be used to make calls through.
|
230
|
-
# A `GRPC::Core::ChannelCredentials` for the setting up the RPC client. The channel credentials
|
231
|
-
# should already be composed with a `GRPC::Core::CallCredentials` object.
|
232
|
-
# A `Proc` will be used as an updater_proc for the Grpc channel. The proc transforms the
|
233
|
-
# metadata for requests, generally, to give OAuth credentials.
|
234
|
-
# @param scopes [Array<String>]
|
235
|
-
# The OAuth scopes for this service. This parameter is ignored if
|
236
|
-
# an updater_proc is supplied.
|
237
|
-
# @param client_config [Hash]
|
238
|
-
# A Hash for call options for each method. See
|
239
|
-
# Google::Gax#construct_settings for the structure of
|
240
|
-
# this data. Falls back to the default config if not specified
|
241
|
-
# or the specified config is missing data points.
|
242
|
-
# @param timeout [Numeric]
|
243
|
-
# The default timeout, in seconds, for calls made through this client.
|
244
|
-
# @param metadata [Hash]
|
245
|
-
# Default metadata to be sent with each request. This can be overridden on a per call basis.
|
246
|
-
# @param service_address [String]
|
247
|
-
# Override for the service hostname, or `nil` to leave as the default.
|
248
|
-
# @param service_port [Integer]
|
249
|
-
# Override for the service port, or `nil` to leave as the default.
|
250
|
-
# @param exception_transformer [Proc]
|
251
|
-
# An optional proc that intercepts any exceptions raised during an API call to inject
|
252
|
-
# custom error handling.
|
253
|
-
def initialize \
|
254
|
-
credentials: nil,
|
255
|
-
scopes: ALL_SCOPES,
|
256
|
-
client_config: {},
|
257
|
-
timeout: DEFAULT_TIMEOUT,
|
258
|
-
metadata: nil,
|
259
|
-
service_address: nil,
|
260
|
-
service_port: nil,
|
261
|
-
exception_transformer: nil,
|
262
|
-
lib_name: nil,
|
263
|
-
lib_version: ""
|
264
|
-
# These require statements are intentionally placed here to initialize
|
265
|
-
# the gRPC module only when it's required.
|
266
|
-
# See https://github.com/googleapis/toolkit/issues/446
|
267
|
-
require "google/gax/grpc"
|
268
|
-
require "google/cloud/kms/v1/service_services_pb"
|
269
|
-
require "google/iam/v1/iam_policy_services_pb"
|
270
|
-
|
271
|
-
credentials ||= Google::Cloud::Kms::V1::Credentials.default
|
272
|
-
|
273
|
-
if credentials.is_a?(String) || credentials.is_a?(Hash)
|
274
|
-
updater_proc = Google::Cloud::Kms::V1::Credentials.new(credentials).updater_proc
|
275
|
-
end
|
276
|
-
if credentials.is_a?(GRPC::Core::Channel)
|
277
|
-
channel = credentials
|
278
|
-
end
|
279
|
-
if credentials.is_a?(GRPC::Core::ChannelCredentials)
|
280
|
-
chan_creds = credentials
|
281
|
-
end
|
282
|
-
if credentials.is_a?(Proc)
|
283
|
-
updater_proc = credentials
|
284
|
-
end
|
285
|
-
if credentials.is_a?(Google::Auth::Credentials)
|
286
|
-
updater_proc = credentials.updater_proc
|
287
|
-
end
|
288
|
-
|
289
|
-
package_version = Google::Cloud::Kms::VERSION
|
290
|
-
|
291
|
-
google_api_client = "gl-ruby/#{RUBY_VERSION}"
|
292
|
-
google_api_client << " #{lib_name}/#{lib_version}" if lib_name
|
293
|
-
google_api_client << " gapic/#{package_version} gax/#{Google::Gax::VERSION}"
|
294
|
-
google_api_client << " grpc/#{GRPC::VERSION}"
|
295
|
-
google_api_client.freeze
|
296
|
-
|
297
|
-
headers = { :"x-goog-api-client" => google_api_client }
|
298
|
-
headers.merge!(metadata) unless metadata.nil?
|
299
|
-
client_config_file = Pathname.new(__dir__).join(
|
300
|
-
"key_management_service_client_config.json"
|
301
|
-
)
|
302
|
-
defaults = client_config_file.open do |f|
|
303
|
-
Google::Gax.construct_settings(
|
304
|
-
"google.cloud.kms.v1.KeyManagementService",
|
305
|
-
JSON.parse(f.read),
|
306
|
-
client_config,
|
307
|
-
Google::Gax::Grpc::STATUS_CODE_NAMES,
|
308
|
-
timeout,
|
309
|
-
page_descriptors: PAGE_DESCRIPTORS,
|
310
|
-
errors: Google::Gax::Grpc::API_ERRORS,
|
311
|
-
metadata: headers
|
312
|
-
)
|
313
|
-
end
|
314
|
-
|
315
|
-
# Allow overriding the service path/port in subclasses.
|
316
|
-
service_path = service_address || self.class::SERVICE_ADDRESS
|
317
|
-
port = service_port || self.class::DEFAULT_SERVICE_PORT
|
318
|
-
interceptors = self.class::GRPC_INTERCEPTORS
|
319
|
-
@key_management_service_stub = Google::Gax::Grpc.create_stub(
|
320
|
-
service_path,
|
321
|
-
port,
|
322
|
-
chan_creds: chan_creds,
|
323
|
-
channel: channel,
|
324
|
-
updater_proc: updater_proc,
|
325
|
-
scopes: scopes,
|
326
|
-
interceptors: interceptors,
|
327
|
-
&Google::Cloud::Kms::V1::KeyManagementService::Stub.method(:new)
|
328
|
-
)
|
329
|
-
@iam_policy_stub = Google::Gax::Grpc.create_stub(
|
330
|
-
service_path,
|
331
|
-
port,
|
332
|
-
chan_creds: chan_creds,
|
333
|
-
channel: channel,
|
334
|
-
updater_proc: updater_proc,
|
335
|
-
scopes: scopes,
|
336
|
-
interceptors: interceptors,
|
337
|
-
&Google::Iam::V1::IAMPolicy::Stub.method(:new)
|
338
|
-
)
|
339
|
-
|
340
|
-
@list_key_rings = Google::Gax.create_api_call(
|
341
|
-
@key_management_service_stub.method(:list_key_rings),
|
342
|
-
defaults["list_key_rings"],
|
343
|
-
exception_transformer: exception_transformer,
|
344
|
-
params_extractor: proc do |request|
|
345
|
-
{'parent' => request.parent}
|
346
|
-
end
|
347
|
-
)
|
348
|
-
@list_import_jobs = Google::Gax.create_api_call(
|
349
|
-
@key_management_service_stub.method(:list_import_jobs),
|
350
|
-
defaults["list_import_jobs"],
|
351
|
-
exception_transformer: exception_transformer,
|
352
|
-
params_extractor: proc do |request|
|
353
|
-
{'parent' => request.parent}
|
354
|
-
end
|
355
|
-
)
|
356
|
-
@list_crypto_keys = Google::Gax.create_api_call(
|
357
|
-
@key_management_service_stub.method(:list_crypto_keys),
|
358
|
-
defaults["list_crypto_keys"],
|
359
|
-
exception_transformer: exception_transformer,
|
360
|
-
params_extractor: proc do |request|
|
361
|
-
{'parent' => request.parent}
|
362
|
-
end
|
363
|
-
)
|
364
|
-
@list_crypto_key_versions = Google::Gax.create_api_call(
|
365
|
-
@key_management_service_stub.method(:list_crypto_key_versions),
|
366
|
-
defaults["list_crypto_key_versions"],
|
367
|
-
exception_transformer: exception_transformer,
|
368
|
-
params_extractor: proc do |request|
|
369
|
-
{'parent' => request.parent}
|
370
|
-
end
|
371
|
-
)
|
372
|
-
@get_key_ring = Google::Gax.create_api_call(
|
373
|
-
@key_management_service_stub.method(:get_key_ring),
|
374
|
-
defaults["get_key_ring"],
|
375
|
-
exception_transformer: exception_transformer,
|
376
|
-
params_extractor: proc do |request|
|
377
|
-
{'name' => request.name}
|
378
|
-
end
|
379
|
-
)
|
380
|
-
@get_import_job = Google::Gax.create_api_call(
|
381
|
-
@key_management_service_stub.method(:get_import_job),
|
382
|
-
defaults["get_import_job"],
|
383
|
-
exception_transformer: exception_transformer,
|
384
|
-
params_extractor: proc do |request|
|
385
|
-
{'name' => request.name}
|
386
|
-
end
|
387
|
-
)
|
388
|
-
@get_crypto_key = Google::Gax.create_api_call(
|
389
|
-
@key_management_service_stub.method(:get_crypto_key),
|
390
|
-
defaults["get_crypto_key"],
|
391
|
-
exception_transformer: exception_transformer,
|
392
|
-
params_extractor: proc do |request|
|
393
|
-
{'name' => request.name}
|
394
|
-
end
|
395
|
-
)
|
396
|
-
@get_crypto_key_version = Google::Gax.create_api_call(
|
397
|
-
@key_management_service_stub.method(:get_crypto_key_version),
|
398
|
-
defaults["get_crypto_key_version"],
|
399
|
-
exception_transformer: exception_transformer,
|
400
|
-
params_extractor: proc do |request|
|
401
|
-
{'name' => request.name}
|
402
|
-
end
|
403
|
-
)
|
404
|
-
@create_key_ring = Google::Gax.create_api_call(
|
405
|
-
@key_management_service_stub.method(:create_key_ring),
|
406
|
-
defaults["create_key_ring"],
|
407
|
-
exception_transformer: exception_transformer,
|
408
|
-
params_extractor: proc do |request|
|
409
|
-
{'parent' => request.parent}
|
410
|
-
end
|
411
|
-
)
|
412
|
-
@create_import_job = Google::Gax.create_api_call(
|
413
|
-
@key_management_service_stub.method(:create_import_job),
|
414
|
-
defaults["create_import_job"],
|
415
|
-
exception_transformer: exception_transformer,
|
416
|
-
params_extractor: proc do |request|
|
417
|
-
{'parent' => request.parent}
|
418
|
-
end
|
419
|
-
)
|
420
|
-
@create_crypto_key = Google::Gax.create_api_call(
|
421
|
-
@key_management_service_stub.method(:create_crypto_key),
|
422
|
-
defaults["create_crypto_key"],
|
423
|
-
exception_transformer: exception_transformer,
|
424
|
-
params_extractor: proc do |request|
|
425
|
-
{'parent' => request.parent}
|
426
|
-
end
|
427
|
-
)
|
428
|
-
@create_crypto_key_version = Google::Gax.create_api_call(
|
429
|
-
@key_management_service_stub.method(:create_crypto_key_version),
|
430
|
-
defaults["create_crypto_key_version"],
|
431
|
-
exception_transformer: exception_transformer,
|
432
|
-
params_extractor: proc do |request|
|
433
|
-
{'parent' => request.parent}
|
434
|
-
end
|
435
|
-
)
|
436
|
-
@import_crypto_key_version = Google::Gax.create_api_call(
|
437
|
-
@key_management_service_stub.method(:import_crypto_key_version),
|
438
|
-
defaults["import_crypto_key_version"],
|
439
|
-
exception_transformer: exception_transformer,
|
440
|
-
params_extractor: proc do |request|
|
441
|
-
{'parent' => request.parent}
|
442
|
-
end
|
443
|
-
)
|
444
|
-
@update_crypto_key = Google::Gax.create_api_call(
|
445
|
-
@key_management_service_stub.method(:update_crypto_key),
|
446
|
-
defaults["update_crypto_key"],
|
447
|
-
exception_transformer: exception_transformer,
|
448
|
-
params_extractor: proc do |request|
|
449
|
-
{'crypto_key.name' => request.crypto_key.name}
|
450
|
-
end
|
451
|
-
)
|
452
|
-
@update_crypto_key_version = Google::Gax.create_api_call(
|
453
|
-
@key_management_service_stub.method(:update_crypto_key_version),
|
454
|
-
defaults["update_crypto_key_version"],
|
455
|
-
exception_transformer: exception_transformer,
|
456
|
-
params_extractor: proc do |request|
|
457
|
-
{'crypto_key_version.name' => request.crypto_key_version.name}
|
458
|
-
end
|
459
|
-
)
|
460
|
-
@encrypt = Google::Gax.create_api_call(
|
461
|
-
@key_management_service_stub.method(:encrypt),
|
462
|
-
defaults["encrypt"],
|
463
|
-
exception_transformer: exception_transformer,
|
464
|
-
params_extractor: proc do |request|
|
465
|
-
{'name' => request.name}
|
466
|
-
end
|
467
|
-
)
|
468
|
-
@decrypt = Google::Gax.create_api_call(
|
469
|
-
@key_management_service_stub.method(:decrypt),
|
470
|
-
defaults["decrypt"],
|
471
|
-
exception_transformer: exception_transformer,
|
472
|
-
params_extractor: proc do |request|
|
473
|
-
{'name' => request.name}
|
474
|
-
end
|
475
|
-
)
|
476
|
-
@update_crypto_key_primary_version = Google::Gax.create_api_call(
|
477
|
-
@key_management_service_stub.method(:update_crypto_key_primary_version),
|
478
|
-
defaults["update_crypto_key_primary_version"],
|
479
|
-
exception_transformer: exception_transformer,
|
480
|
-
params_extractor: proc do |request|
|
481
|
-
{'name' => request.name}
|
482
|
-
end
|
483
|
-
)
|
484
|
-
@destroy_crypto_key_version = Google::Gax.create_api_call(
|
485
|
-
@key_management_service_stub.method(:destroy_crypto_key_version),
|
486
|
-
defaults["destroy_crypto_key_version"],
|
487
|
-
exception_transformer: exception_transformer,
|
488
|
-
params_extractor: proc do |request|
|
489
|
-
{'name' => request.name}
|
490
|
-
end
|
491
|
-
)
|
492
|
-
@restore_crypto_key_version = Google::Gax.create_api_call(
|
493
|
-
@key_management_service_stub.method(:restore_crypto_key_version),
|
494
|
-
defaults["restore_crypto_key_version"],
|
495
|
-
exception_transformer: exception_transformer,
|
496
|
-
params_extractor: proc do |request|
|
497
|
-
{'name' => request.name}
|
498
|
-
end
|
499
|
-
)
|
500
|
-
@get_public_key = Google::Gax.create_api_call(
|
501
|
-
@key_management_service_stub.method(:get_public_key),
|
502
|
-
defaults["get_public_key"],
|
503
|
-
exception_transformer: exception_transformer,
|
504
|
-
params_extractor: proc do |request|
|
505
|
-
{'name' => request.name}
|
506
|
-
end
|
507
|
-
)
|
508
|
-
@asymmetric_decrypt = Google::Gax.create_api_call(
|
509
|
-
@key_management_service_stub.method(:asymmetric_decrypt),
|
510
|
-
defaults["asymmetric_decrypt"],
|
511
|
-
exception_transformer: exception_transformer,
|
512
|
-
params_extractor: proc do |request|
|
513
|
-
{'name' => request.name}
|
514
|
-
end
|
515
|
-
)
|
516
|
-
@asymmetric_sign = Google::Gax.create_api_call(
|
517
|
-
@key_management_service_stub.method(:asymmetric_sign),
|
518
|
-
defaults["asymmetric_sign"],
|
519
|
-
exception_transformer: exception_transformer,
|
520
|
-
params_extractor: proc do |request|
|
521
|
-
{'name' => request.name}
|
522
|
-
end
|
523
|
-
)
|
524
|
-
@set_iam_policy = Google::Gax.create_api_call(
|
525
|
-
@iam_policy_stub.method(:set_iam_policy),
|
526
|
-
defaults["set_iam_policy"],
|
527
|
-
exception_transformer: exception_transformer,
|
528
|
-
params_extractor: proc do |request|
|
529
|
-
{'resource' => request.resource}
|
530
|
-
end
|
531
|
-
)
|
532
|
-
@get_iam_policy = Google::Gax.create_api_call(
|
533
|
-
@iam_policy_stub.method(:get_iam_policy),
|
534
|
-
defaults["get_iam_policy"],
|
535
|
-
exception_transformer: exception_transformer,
|
536
|
-
params_extractor: proc do |request|
|
537
|
-
{'resource' => request.resource}
|
538
|
-
end
|
539
|
-
)
|
540
|
-
@test_iam_permissions = Google::Gax.create_api_call(
|
541
|
-
@iam_policy_stub.method(:test_iam_permissions),
|
542
|
-
defaults["test_iam_permissions"],
|
543
|
-
exception_transformer: exception_transformer,
|
544
|
-
params_extractor: proc do |request|
|
545
|
-
{'resource' => request.resource}
|
546
|
-
end
|
547
|
-
)
|
548
|
-
end
|
549
|
-
|
550
|
-
# Service calls
|
551
|
-
|
552
|
-
# Lists {Google::Cloud::Kms::V1::KeyRing KeyRings}.
|
553
|
-
#
|
554
|
-
# @param parent [String]
|
555
|
-
# Required. The resource name of the location associated with the
|
556
|
-
# {Google::Cloud::Kms::V1::KeyRing KeyRings}, in the format `projects/*/locations/*`.
|
557
|
-
# @param page_size [Integer]
|
558
|
-
# The maximum number of resources contained in the underlying API
|
559
|
-
# response. If page streaming is performed per-resource, this
|
560
|
-
# parameter does not affect the return value. If page streaming is
|
561
|
-
# performed per-page, this determines the maximum number of
|
562
|
-
# resources in a page.
|
563
|
-
# @param filter [String]
|
564
|
-
# Optional. Only include resources that match the filter in the response. For
|
565
|
-
# more information, see
|
566
|
-
# [Sorting and filtering list
|
567
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
568
|
-
# @param order_by [String]
|
569
|
-
# Optional. Specify how the results should be sorted. If not specified, the
|
570
|
-
# results will be sorted in the default order. For more information, see
|
571
|
-
# [Sorting and filtering list
|
572
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
573
|
-
# @param options [Google::Gax::CallOptions]
|
574
|
-
# Overrides the default settings for this call, e.g, timeout,
|
575
|
-
# retries, etc.
|
576
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
577
|
-
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::KeyRing>]
|
578
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
579
|
-
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::KeyRing>]
|
580
|
-
# An enumerable of Google::Cloud::Kms::V1::KeyRing instances.
|
581
|
-
# See Google::Gax::PagedEnumerable documentation for other
|
582
|
-
# operations such as per-page iteration or access to the response
|
583
|
-
# object.
|
584
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
585
|
-
# @example
|
586
|
-
# require "google/cloud/kms"
|
587
|
-
#
|
588
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
589
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.location_path("[PROJECT]", "[LOCATION]")
|
590
|
-
#
|
591
|
-
# # Iterate over all results.
|
592
|
-
# key_management_client.list_key_rings(formatted_parent).each do |element|
|
593
|
-
# # Process element.
|
594
|
-
# end
|
595
|
-
#
|
596
|
-
# # Or iterate over results one page at a time.
|
597
|
-
# key_management_client.list_key_rings(formatted_parent).each_page do |page|
|
598
|
-
# # Process each page at a time.
|
599
|
-
# page.each do |element|
|
600
|
-
# # Process element.
|
601
|
-
# end
|
602
|
-
# end
|
603
|
-
|
604
|
-
def list_key_rings \
|
605
|
-
parent,
|
606
|
-
page_size: nil,
|
607
|
-
filter: nil,
|
608
|
-
order_by: nil,
|
609
|
-
options: nil,
|
610
|
-
&block
|
611
|
-
req = {
|
612
|
-
parent: parent,
|
613
|
-
page_size: page_size,
|
614
|
-
filter: filter,
|
615
|
-
order_by: order_by
|
616
|
-
}.delete_if { |_, v| v.nil? }
|
617
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::ListKeyRingsRequest)
|
618
|
-
@list_key_rings.call(req, options, &block)
|
619
|
-
end
|
620
|
-
|
621
|
-
# Lists {Google::Cloud::Kms::V1::ImportJob ImportJobs}.
|
622
|
-
#
|
623
|
-
# @param parent [String]
|
624
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::KeyRing KeyRing} to list, in the format
|
625
|
-
# `projects/*/locations/*/keyRings/*`.
|
626
|
-
# @param page_size [Integer]
|
627
|
-
# The maximum number of resources contained in the underlying API
|
628
|
-
# response. If page streaming is performed per-resource, this
|
629
|
-
# parameter does not affect the return value. If page streaming is
|
630
|
-
# performed per-page, this determines the maximum number of
|
631
|
-
# resources in a page.
|
632
|
-
# @param filter [String]
|
633
|
-
# Optional. Only include resources that match the filter in the response. For
|
634
|
-
# more information, see
|
635
|
-
# [Sorting and filtering list
|
636
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
637
|
-
# @param order_by [String]
|
638
|
-
# Optional. Specify how the results should be sorted. If not specified, the
|
639
|
-
# results will be sorted in the default order. For more information, see
|
640
|
-
# [Sorting and filtering list
|
641
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
642
|
-
# @param options [Google::Gax::CallOptions]
|
643
|
-
# Overrides the default settings for this call, e.g, timeout,
|
644
|
-
# retries, etc.
|
645
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
646
|
-
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::ImportJob>]
|
647
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
648
|
-
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::ImportJob>]
|
649
|
-
# An enumerable of Google::Cloud::Kms::V1::ImportJob instances.
|
650
|
-
# See Google::Gax::PagedEnumerable documentation for other
|
651
|
-
# operations such as per-page iteration or access to the response
|
652
|
-
# object.
|
653
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
654
|
-
# @example
|
655
|
-
# require "google/cloud/kms"
|
656
|
-
#
|
657
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
658
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
659
|
-
#
|
660
|
-
# # Iterate over all results.
|
661
|
-
# key_management_client.list_import_jobs(formatted_parent).each do |element|
|
662
|
-
# # Process element.
|
663
|
-
# end
|
664
|
-
#
|
665
|
-
# # Or iterate over results one page at a time.
|
666
|
-
# key_management_client.list_import_jobs(formatted_parent).each_page do |page|
|
667
|
-
# # Process each page at a time.
|
668
|
-
# page.each do |element|
|
669
|
-
# # Process element.
|
670
|
-
# end
|
671
|
-
# end
|
672
|
-
|
673
|
-
def list_import_jobs \
|
674
|
-
parent,
|
675
|
-
page_size: nil,
|
676
|
-
filter: nil,
|
677
|
-
order_by: nil,
|
678
|
-
options: nil,
|
679
|
-
&block
|
680
|
-
req = {
|
681
|
-
parent: parent,
|
682
|
-
page_size: page_size,
|
683
|
-
filter: filter,
|
684
|
-
order_by: order_by
|
685
|
-
}.delete_if { |_, v| v.nil? }
|
686
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::ListImportJobsRequest)
|
687
|
-
@list_import_jobs.call(req, options, &block)
|
688
|
-
end
|
689
|
-
|
690
|
-
# Lists {Google::Cloud::Kms::V1::CryptoKey CryptoKeys}.
|
691
|
-
#
|
692
|
-
# @param parent [String]
|
693
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::KeyRing KeyRing} to list, in the format
|
694
|
-
# `projects/*/locations/*/keyRings/*`.
|
695
|
-
# @param page_size [Integer]
|
696
|
-
# The maximum number of resources contained in the underlying API
|
697
|
-
# response. If page streaming is performed per-resource, this
|
698
|
-
# parameter does not affect the return value. If page streaming is
|
699
|
-
# performed per-page, this determines the maximum number of
|
700
|
-
# resources in a page.
|
701
|
-
# @param version_view [Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionView]
|
702
|
-
# The fields of the primary version to include in the response.
|
703
|
-
# @param filter [String]
|
704
|
-
# Optional. Only include resources that match the filter in the response. For
|
705
|
-
# more information, see
|
706
|
-
# [Sorting and filtering list
|
707
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
708
|
-
# @param order_by [String]
|
709
|
-
# Optional. Specify how the results should be sorted. If not specified, the
|
710
|
-
# results will be sorted in the default order. For more information, see
|
711
|
-
# [Sorting and filtering list
|
712
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
713
|
-
# @param options [Google::Gax::CallOptions]
|
714
|
-
# Overrides the default settings for this call, e.g, timeout,
|
715
|
-
# retries, etc.
|
716
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
717
|
-
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::CryptoKey>]
|
718
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
719
|
-
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::CryptoKey>]
|
720
|
-
# An enumerable of Google::Cloud::Kms::V1::CryptoKey instances.
|
721
|
-
# See Google::Gax::PagedEnumerable documentation for other
|
722
|
-
# operations such as per-page iteration or access to the response
|
723
|
-
# object.
|
724
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
725
|
-
# @example
|
726
|
-
# require "google/cloud/kms"
|
727
|
-
#
|
728
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
729
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
730
|
-
#
|
731
|
-
# # Iterate over all results.
|
732
|
-
# key_management_client.list_crypto_keys(formatted_parent).each do |element|
|
733
|
-
# # Process element.
|
734
|
-
# end
|
735
|
-
#
|
736
|
-
# # Or iterate over results one page at a time.
|
737
|
-
# key_management_client.list_crypto_keys(formatted_parent).each_page do |page|
|
738
|
-
# # Process each page at a time.
|
739
|
-
# page.each do |element|
|
740
|
-
# # Process element.
|
741
|
-
# end
|
742
|
-
# end
|
743
|
-
|
744
|
-
def list_crypto_keys \
|
745
|
-
parent,
|
746
|
-
page_size: nil,
|
747
|
-
version_view: nil,
|
748
|
-
filter: nil,
|
749
|
-
order_by: nil,
|
750
|
-
options: nil,
|
751
|
-
&block
|
752
|
-
req = {
|
753
|
-
parent: parent,
|
754
|
-
page_size: page_size,
|
755
|
-
version_view: version_view,
|
756
|
-
filter: filter,
|
757
|
-
order_by: order_by
|
758
|
-
}.delete_if { |_, v| v.nil? }
|
759
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::ListCryptoKeysRequest)
|
760
|
-
@list_crypto_keys.call(req, options, &block)
|
761
|
-
end
|
762
|
-
|
763
|
-
# Lists {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersions}.
|
764
|
-
#
|
765
|
-
# @param parent [String]
|
766
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} to list, in the format
|
767
|
-
# `projects/*/locations/*/keyRings/*/cryptoKeys/*`.
|
768
|
-
# @param page_size [Integer]
|
769
|
-
# The maximum number of resources contained in the underlying API
|
770
|
-
# response. If page streaming is performed per-resource, this
|
771
|
-
# parameter does not affect the return value. If page streaming is
|
772
|
-
# performed per-page, this determines the maximum number of
|
773
|
-
# resources in a page.
|
774
|
-
# @param view [Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionView]
|
775
|
-
# The fields to include in the response.
|
776
|
-
# @param filter [String]
|
777
|
-
# Optional. Only include resources that match the filter in the response. For
|
778
|
-
# more information, see
|
779
|
-
# [Sorting and filtering list
|
780
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
781
|
-
# @param order_by [String]
|
782
|
-
# Optional. Specify how the results should be sorted. If not specified, the
|
783
|
-
# results will be sorted in the default order. For more information, see
|
784
|
-
# [Sorting and filtering list
|
785
|
-
# results](https://cloud.google.com/kms/docs/sorting-and-filtering).
|
786
|
-
# @param options [Google::Gax::CallOptions]
|
787
|
-
# Overrides the default settings for this call, e.g, timeout,
|
788
|
-
# retries, etc.
|
789
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
790
|
-
# @yieldparam result [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::CryptoKeyVersion>]
|
791
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
792
|
-
# @return [Google::Gax::PagedEnumerable<Google::Cloud::Kms::V1::CryptoKeyVersion>]
|
793
|
-
# An enumerable of Google::Cloud::Kms::V1::CryptoKeyVersion instances.
|
794
|
-
# See Google::Gax::PagedEnumerable documentation for other
|
795
|
-
# operations such as per-page iteration or access to the response
|
796
|
-
# object.
|
797
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
798
|
-
# @example
|
799
|
-
# require "google/cloud/kms"
|
800
|
-
#
|
801
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
802
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
|
803
|
-
#
|
804
|
-
# # Iterate over all results.
|
805
|
-
# key_management_client.list_crypto_key_versions(formatted_parent).each do |element|
|
806
|
-
# # Process element.
|
807
|
-
# end
|
808
|
-
#
|
809
|
-
# # Or iterate over results one page at a time.
|
810
|
-
# key_management_client.list_crypto_key_versions(formatted_parent).each_page do |page|
|
811
|
-
# # Process each page at a time.
|
812
|
-
# page.each do |element|
|
813
|
-
# # Process element.
|
814
|
-
# end
|
815
|
-
# end
|
816
|
-
|
817
|
-
def list_crypto_key_versions \
|
818
|
-
parent,
|
819
|
-
page_size: nil,
|
820
|
-
view: nil,
|
821
|
-
filter: nil,
|
822
|
-
order_by: nil,
|
823
|
-
options: nil,
|
824
|
-
&block
|
825
|
-
req = {
|
826
|
-
parent: parent,
|
827
|
-
page_size: page_size,
|
828
|
-
view: view,
|
829
|
-
filter: filter,
|
830
|
-
order_by: order_by
|
831
|
-
}.delete_if { |_, v| v.nil? }
|
832
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::ListCryptoKeyVersionsRequest)
|
833
|
-
@list_crypto_key_versions.call(req, options, &block)
|
834
|
-
end
|
835
|
-
|
836
|
-
# Returns metadata for a given {Google::Cloud::Kms::V1::KeyRing KeyRing}.
|
837
|
-
#
|
838
|
-
# @param name [String]
|
839
|
-
# Required. The {Google::Cloud::Kms::V1::KeyRing#name name} of the {Google::Cloud::Kms::V1::KeyRing KeyRing} to get.
|
840
|
-
# @param options [Google::Gax::CallOptions]
|
841
|
-
# Overrides the default settings for this call, e.g, timeout,
|
842
|
-
# retries, etc.
|
843
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
844
|
-
# @yieldparam result [Google::Cloud::Kms::V1::KeyRing]
|
845
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
846
|
-
# @return [Google::Cloud::Kms::V1::KeyRing]
|
847
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
848
|
-
# @example
|
849
|
-
# require "google/cloud/kms"
|
850
|
-
#
|
851
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
852
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
853
|
-
# response = key_management_client.get_key_ring(formatted_name)
|
854
|
-
|
855
|
-
def get_key_ring \
|
856
|
-
name,
|
857
|
-
options: nil,
|
858
|
-
&block
|
859
|
-
req = {
|
860
|
-
name: name
|
861
|
-
}.delete_if { |_, v| v.nil? }
|
862
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::GetKeyRingRequest)
|
863
|
-
@get_key_ring.call(req, options, &block)
|
864
|
-
end
|
865
|
-
|
866
|
-
# Returns metadata for a given {Google::Cloud::Kms::V1::ImportJob ImportJob}.
|
867
|
-
#
|
868
|
-
# @param name [String]
|
869
|
-
# Required. The {Google::Cloud::Kms::V1::ImportJob#name name} of the {Google::Cloud::Kms::V1::ImportJob ImportJob} to get.
|
870
|
-
# @param options [Google::Gax::CallOptions]
|
871
|
-
# Overrides the default settings for this call, e.g, timeout,
|
872
|
-
# retries, etc.
|
873
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
874
|
-
# @yieldparam result [Google::Cloud::Kms::V1::ImportJob]
|
875
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
876
|
-
# @return [Google::Cloud::Kms::V1::ImportJob]
|
877
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
878
|
-
# @example
|
879
|
-
# require "google/cloud/kms"
|
880
|
-
#
|
881
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
882
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.import_job_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[IMPORT_JOB]")
|
883
|
-
# response = key_management_client.get_import_job(formatted_name)
|
884
|
-
|
885
|
-
def get_import_job \
|
886
|
-
name,
|
887
|
-
options: nil,
|
888
|
-
&block
|
889
|
-
req = {
|
890
|
-
name: name
|
891
|
-
}.delete_if { |_, v| v.nil? }
|
892
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::GetImportJobRequest)
|
893
|
-
@get_import_job.call(req, options, &block)
|
894
|
-
end
|
895
|
-
|
896
|
-
# Returns metadata for a given {Google::Cloud::Kms::V1::CryptoKey CryptoKey}, as well as its
|
897
|
-
# {Google::Cloud::Kms::V1::CryptoKey#primary primary} {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}.
|
898
|
-
#
|
899
|
-
# @param name [String]
|
900
|
-
# Required. The {Google::Cloud::Kms::V1::CryptoKey#name name} of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} to get.
|
901
|
-
# @param options [Google::Gax::CallOptions]
|
902
|
-
# Overrides the default settings for this call, e.g, timeout,
|
903
|
-
# retries, etc.
|
904
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
905
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKey]
|
906
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
907
|
-
# @return [Google::Cloud::Kms::V1::CryptoKey]
|
908
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
909
|
-
# @example
|
910
|
-
# require "google/cloud/kms"
|
911
|
-
#
|
912
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
913
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
|
914
|
-
# response = key_management_client.get_crypto_key(formatted_name)
|
915
|
-
|
916
|
-
def get_crypto_key \
|
917
|
-
name,
|
918
|
-
options: nil,
|
919
|
-
&block
|
920
|
-
req = {
|
921
|
-
name: name
|
922
|
-
}.delete_if { |_, v| v.nil? }
|
923
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::GetCryptoKeyRequest)
|
924
|
-
@get_crypto_key.call(req, options, &block)
|
925
|
-
end
|
926
|
-
|
927
|
-
# Returns metadata for a given {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}.
|
928
|
-
#
|
929
|
-
# @param name [String]
|
930
|
-
# Required. The {Google::Cloud::Kms::V1::CryptoKeyVersion#name name} of the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} to get.
|
931
|
-
# @param options [Google::Gax::CallOptions]
|
932
|
-
# Overrides the default settings for this call, e.g, timeout,
|
933
|
-
# retries, etc.
|
934
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
935
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
936
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
937
|
-
# @return [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
938
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
939
|
-
# @example
|
940
|
-
# require "google/cloud/kms"
|
941
|
-
#
|
942
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
943
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]")
|
944
|
-
# response = key_management_client.get_crypto_key_version(formatted_name)
|
945
|
-
|
946
|
-
def get_crypto_key_version \
|
947
|
-
name,
|
948
|
-
options: nil,
|
949
|
-
&block
|
950
|
-
req = {
|
951
|
-
name: name
|
952
|
-
}.delete_if { |_, v| v.nil? }
|
953
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::GetCryptoKeyVersionRequest)
|
954
|
-
@get_crypto_key_version.call(req, options, &block)
|
955
|
-
end
|
956
|
-
|
957
|
-
# Create a new {Google::Cloud::Kms::V1::KeyRing KeyRing} in a given Project and Location.
|
958
|
-
#
|
959
|
-
# @param parent [String]
|
960
|
-
# Required. The resource name of the location associated with the
|
961
|
-
# {Google::Cloud::Kms::V1::KeyRing KeyRings}, in the format `projects/*/locations/*`.
|
962
|
-
# @param key_ring_id [String]
|
963
|
-
# Required. It must be unique within a location and match the regular
|
964
|
-
# expression `[a-zA-Z0-9_-]{1,63}`
|
965
|
-
# @param key_ring [Google::Cloud::Kms::V1::KeyRing | Hash]
|
966
|
-
# Required. A {Google::Cloud::Kms::V1::KeyRing KeyRing} with initial field values.
|
967
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::KeyRing`
|
968
|
-
# can also be provided.
|
969
|
-
# @param options [Google::Gax::CallOptions]
|
970
|
-
# Overrides the default settings for this call, e.g, timeout,
|
971
|
-
# retries, etc.
|
972
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
973
|
-
# @yieldparam result [Google::Cloud::Kms::V1::KeyRing]
|
974
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
975
|
-
# @return [Google::Cloud::Kms::V1::KeyRing]
|
976
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
977
|
-
# @example
|
978
|
-
# require "google/cloud/kms"
|
979
|
-
#
|
980
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
981
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.location_path("[PROJECT]", "[LOCATION]")
|
982
|
-
#
|
983
|
-
# # TODO: Initialize `key_ring_id`:
|
984
|
-
# key_ring_id = ''
|
985
|
-
#
|
986
|
-
# # TODO: Initialize `key_ring`:
|
987
|
-
# key_ring = {}
|
988
|
-
# response = key_management_client.create_key_ring(formatted_parent, key_ring_id, key_ring)
|
989
|
-
|
990
|
-
def create_key_ring \
|
991
|
-
parent,
|
992
|
-
key_ring_id,
|
993
|
-
key_ring,
|
994
|
-
options: nil,
|
995
|
-
&block
|
996
|
-
req = {
|
997
|
-
parent: parent,
|
998
|
-
key_ring_id: key_ring_id,
|
999
|
-
key_ring: key_ring
|
1000
|
-
}.delete_if { |_, v| v.nil? }
|
1001
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::CreateKeyRingRequest)
|
1002
|
-
@create_key_ring.call(req, options, &block)
|
1003
|
-
end
|
1004
|
-
|
1005
|
-
# Create a new {Google::Cloud::Kms::V1::ImportJob ImportJob} within a {Google::Cloud::Kms::V1::KeyRing KeyRing}.
|
1006
|
-
#
|
1007
|
-
# {Google::Cloud::Kms::V1::ImportJob#import_method ImportJob#import_method} is required.
|
1008
|
-
#
|
1009
|
-
# @param parent [String]
|
1010
|
-
# Required. The {Google::Cloud::Kms::V1::KeyRing#name name} of the {Google::Cloud::Kms::V1::KeyRing KeyRing} associated with the
|
1011
|
-
# {Google::Cloud::Kms::V1::ImportJob ImportJobs}.
|
1012
|
-
# @param import_job_id [String]
|
1013
|
-
# Required. It must be unique within a KeyRing and match the regular
|
1014
|
-
# expression `[a-zA-Z0-9_-]{1,63}`
|
1015
|
-
# @param import_job [Google::Cloud::Kms::V1::ImportJob | Hash]
|
1016
|
-
# Required. An {Google::Cloud::Kms::V1::ImportJob ImportJob} with initial field values.
|
1017
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::ImportJob`
|
1018
|
-
# can also be provided.
|
1019
|
-
# @param options [Google::Gax::CallOptions]
|
1020
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1021
|
-
# retries, etc.
|
1022
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1023
|
-
# @yieldparam result [Google::Cloud::Kms::V1::ImportJob]
|
1024
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1025
|
-
# @return [Google::Cloud::Kms::V1::ImportJob]
|
1026
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1027
|
-
# @example
|
1028
|
-
# require "google/cloud/kms"
|
1029
|
-
#
|
1030
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1031
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
1032
|
-
# import_job_id = "my-import-job"
|
1033
|
-
# import_method = :RSA_OAEP_3072_SHA1_AES_256
|
1034
|
-
# protection_level = :HSM
|
1035
|
-
# import_job = { import_method: import_method, protection_level: protection_level }
|
1036
|
-
# response = key_management_client.create_import_job(formatted_parent, import_job_id, import_job)
|
1037
|
-
|
1038
|
-
def create_import_job \
|
1039
|
-
parent,
|
1040
|
-
import_job_id,
|
1041
|
-
import_job,
|
1042
|
-
options: nil,
|
1043
|
-
&block
|
1044
|
-
req = {
|
1045
|
-
parent: parent,
|
1046
|
-
import_job_id: import_job_id,
|
1047
|
-
import_job: import_job
|
1048
|
-
}.delete_if { |_, v| v.nil? }
|
1049
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::CreateImportJobRequest)
|
1050
|
-
@create_import_job.call(req, options, &block)
|
1051
|
-
end
|
1052
|
-
|
1053
|
-
# Create a new {Google::Cloud::Kms::V1::CryptoKey CryptoKey} within a {Google::Cloud::Kms::V1::KeyRing KeyRing}.
|
1054
|
-
#
|
1055
|
-
# {Google::Cloud::Kms::V1::CryptoKey#purpose CryptoKey#purpose} and
|
1056
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#algorithm CryptoKey#version_template#algorithm}
|
1057
|
-
# are required.
|
1058
|
-
#
|
1059
|
-
# @param parent [String]
|
1060
|
-
# Required. The {Google::Cloud::Kms::V1::KeyRing#name name} of the KeyRing associated with the
|
1061
|
-
# {Google::Cloud::Kms::V1::CryptoKey CryptoKeys}.
|
1062
|
-
# @param crypto_key_id [String]
|
1063
|
-
# Required. It must be unique within a KeyRing and match the regular
|
1064
|
-
# expression `[a-zA-Z0-9_-]{1,63}`
|
1065
|
-
# @param crypto_key [Google::Cloud::Kms::V1::CryptoKey | Hash]
|
1066
|
-
# Required. A {Google::Cloud::Kms::V1::CryptoKey CryptoKey} with initial field values.
|
1067
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::CryptoKey`
|
1068
|
-
# can also be provided.
|
1069
|
-
# @param skip_initial_version_creation [true, false]
|
1070
|
-
# If set to true, the request will create a {Google::Cloud::Kms::V1::CryptoKey CryptoKey} without any
|
1071
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersions}. You must manually call
|
1072
|
-
# {Google::Cloud::Kms::V1::KeyManagementService::CreateCryptoKeyVersion CreateCryptoKeyVersion} or
|
1073
|
-
# {Google::Cloud::Kms::V1::KeyManagementService::ImportCryptoKeyVersion ImportCryptoKeyVersion}
|
1074
|
-
# before you can use this {Google::Cloud::Kms::V1::CryptoKey CryptoKey}.
|
1075
|
-
# @param options [Google::Gax::CallOptions]
|
1076
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1077
|
-
# retries, etc.
|
1078
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1079
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKey]
|
1080
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1081
|
-
# @return [Google::Cloud::Kms::V1::CryptoKey]
|
1082
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1083
|
-
# @example
|
1084
|
-
# require "google/cloud/kms"
|
1085
|
-
#
|
1086
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1087
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
1088
|
-
# crypto_key_id = "my-app-key"
|
1089
|
-
# purpose = :ENCRYPT_DECRYPT
|
1090
|
-
# seconds = 2147483647
|
1091
|
-
# next_rotation_time = { seconds: seconds }
|
1092
|
-
# seconds_2 = 604800
|
1093
|
-
# rotation_period = { seconds: seconds_2 }
|
1094
|
-
# crypto_key = {
|
1095
|
-
# purpose: purpose,
|
1096
|
-
# next_rotation_time: next_rotation_time,
|
1097
|
-
# rotation_period: rotation_period
|
1098
|
-
# }
|
1099
|
-
# response = key_management_client.create_crypto_key(formatted_parent, crypto_key_id, crypto_key)
|
1100
|
-
|
1101
|
-
def create_crypto_key \
|
1102
|
-
parent,
|
1103
|
-
crypto_key_id,
|
1104
|
-
crypto_key,
|
1105
|
-
skip_initial_version_creation: nil,
|
1106
|
-
options: nil,
|
1107
|
-
&block
|
1108
|
-
req = {
|
1109
|
-
parent: parent,
|
1110
|
-
crypto_key_id: crypto_key_id,
|
1111
|
-
crypto_key: crypto_key,
|
1112
|
-
skip_initial_version_creation: skip_initial_version_creation
|
1113
|
-
}.delete_if { |_, v| v.nil? }
|
1114
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::CreateCryptoKeyRequest)
|
1115
|
-
@create_crypto_key.call(req, options, &block)
|
1116
|
-
end
|
1117
|
-
|
1118
|
-
# Create a new {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} in a {Google::Cloud::Kms::V1::CryptoKey CryptoKey}.
|
1119
|
-
#
|
1120
|
-
# The server will assign the next sequential id. If unset,
|
1121
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion#state state} will be set to
|
1122
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::ENABLED ENABLED}.
|
1123
|
-
#
|
1124
|
-
# @param parent [String]
|
1125
|
-
# Required. The {Google::Cloud::Kms::V1::CryptoKey#name name} of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} associated with
|
1126
|
-
# the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersions}.
|
1127
|
-
# @param crypto_key_version [Google::Cloud::Kms::V1::CryptoKeyVersion | Hash]
|
1128
|
-
# Required. A {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} with initial field values.
|
1129
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::CryptoKeyVersion`
|
1130
|
-
# can also be provided.
|
1131
|
-
# @param options [Google::Gax::CallOptions]
|
1132
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1133
|
-
# retries, etc.
|
1134
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1135
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1136
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1137
|
-
# @return [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1138
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1139
|
-
# @example
|
1140
|
-
# require "google/cloud/kms"
|
1141
|
-
#
|
1142
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1143
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
|
1144
|
-
#
|
1145
|
-
# # TODO: Initialize `crypto_key_version`:
|
1146
|
-
# crypto_key_version = {}
|
1147
|
-
# response = key_management_client.create_crypto_key_version(formatted_parent, crypto_key_version)
|
1148
|
-
|
1149
|
-
def create_crypto_key_version \
|
1150
|
-
parent,
|
1151
|
-
crypto_key_version,
|
1152
|
-
options: nil,
|
1153
|
-
&block
|
1154
|
-
req = {
|
1155
|
-
parent: parent,
|
1156
|
-
crypto_key_version: crypto_key_version
|
1157
|
-
}.delete_if { |_, v| v.nil? }
|
1158
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::CreateCryptoKeyVersionRequest)
|
1159
|
-
@create_crypto_key_version.call(req, options, &block)
|
1160
|
-
end
|
1161
|
-
|
1162
|
-
# Imports a new {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} into an existing {Google::Cloud::Kms::V1::CryptoKey CryptoKey} using the
|
1163
|
-
# wrapped key material provided in the request.
|
1164
|
-
#
|
1165
|
-
# The version ID will be assigned the next sequential id within the
|
1166
|
-
# {Google::Cloud::Kms::V1::CryptoKey CryptoKey}.
|
1167
|
-
#
|
1168
|
-
# @param parent [String]
|
1169
|
-
# Required. The {Google::Cloud::Kms::V1::CryptoKey#name name} of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} to
|
1170
|
-
# be imported into.
|
1171
|
-
# @param algorithm [Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionAlgorithm]
|
1172
|
-
# Required. The {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionAlgorithm algorithm} of
|
1173
|
-
# the key being imported. This does not need to match the
|
1174
|
-
# {Google::Cloud::Kms::V1::CryptoKey#version_template version_template} of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} this
|
1175
|
-
# version imports into.
|
1176
|
-
# @param import_job [String]
|
1177
|
-
# Required. The {Google::Cloud::Kms::V1::ImportJob#name name} of the {Google::Cloud::Kms::V1::ImportJob ImportJob} that was used to
|
1178
|
-
# wrap this key material.
|
1179
|
-
# @param rsa_aes_wrapped_key [String]
|
1180
|
-
# Wrapped key material produced with
|
1181
|
-
# {Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_3072_SHA1_AES_256 RSA_OAEP_3072_SHA1_AES_256}
|
1182
|
-
# or
|
1183
|
-
# {Google::Cloud::Kms::V1::ImportJob::ImportMethod::RSA_OAEP_4096_SHA1_AES_256 RSA_OAEP_4096_SHA1_AES_256}.
|
1184
|
-
#
|
1185
|
-
# This field contains the concatenation of two wrapped keys:
|
1186
|
-
# <ol>
|
1187
|
-
# <li>An ephemeral AES-256 wrapping key wrapped with the
|
1188
|
-
# {Google::Cloud::Kms::V1::ImportJob#public_key public_key} using RSAES-OAEP with SHA-1,
|
1189
|
-
# MGF1 with SHA-1, and an empty label.
|
1190
|
-
# </li>
|
1191
|
-
# <li>The key to be imported, wrapped with the ephemeral AES-256 key
|
1192
|
-
# using AES-KWP (RFC 5649).
|
1193
|
-
# </li>
|
1194
|
-
# </ol>
|
1195
|
-
#
|
1196
|
-
# If importing symmetric key material, it is expected that the unwrapped
|
1197
|
-
# key contains plain bytes. If importing asymmetric key material, it is
|
1198
|
-
# expected that the unwrapped key is in PKCS#8-encoded DER format (the
|
1199
|
-
# PrivateKeyInfo structure from RFC 5208).
|
1200
|
-
#
|
1201
|
-
# This format is the same as the format produced by PKCS#11 mechanism
|
1202
|
-
# CKM_RSA_AES_KEY_WRAP.
|
1203
|
-
# @param options [Google::Gax::CallOptions]
|
1204
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1205
|
-
# retries, etc.
|
1206
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1207
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1208
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1209
|
-
# @return [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1210
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1211
|
-
# @example
|
1212
|
-
# require "google/cloud/kms"
|
1213
|
-
#
|
1214
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1215
|
-
# formatted_parent = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
|
1216
|
-
#
|
1217
|
-
# # TODO: Initialize `algorithm`:
|
1218
|
-
# algorithm = :CRYPTO_KEY_VERSION_ALGORITHM_UNSPECIFIED
|
1219
|
-
#
|
1220
|
-
# # TODO: Initialize `import_job`:
|
1221
|
-
# import_job = ''
|
1222
|
-
# response = key_management_client.import_crypto_key_version(formatted_parent, algorithm, import_job)
|
1223
|
-
|
1224
|
-
def import_crypto_key_version \
|
1225
|
-
parent,
|
1226
|
-
algorithm,
|
1227
|
-
import_job,
|
1228
|
-
rsa_aes_wrapped_key: nil,
|
1229
|
-
options: nil,
|
1230
|
-
&block
|
1231
|
-
req = {
|
1232
|
-
parent: parent,
|
1233
|
-
algorithm: algorithm,
|
1234
|
-
import_job: import_job,
|
1235
|
-
rsa_aes_wrapped_key: rsa_aes_wrapped_key
|
1236
|
-
}.delete_if { |_, v| v.nil? }
|
1237
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::ImportCryptoKeyVersionRequest)
|
1238
|
-
@import_crypto_key_version.call(req, options, &block)
|
1239
|
-
end
|
1240
|
-
|
1241
|
-
# Update a {Google::Cloud::Kms::V1::CryptoKey CryptoKey}.
|
1242
|
-
#
|
1243
|
-
# @param crypto_key [Google::Cloud::Kms::V1::CryptoKey | Hash]
|
1244
|
-
# Required. {Google::Cloud::Kms::V1::CryptoKey CryptoKey} with updated values.
|
1245
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::CryptoKey`
|
1246
|
-
# can also be provided.
|
1247
|
-
# @param update_mask [Google::Protobuf::FieldMask | Hash]
|
1248
|
-
# Required. List of fields to be updated in this request.
|
1249
|
-
# A hash of the same form as `Google::Protobuf::FieldMask`
|
1250
|
-
# can also be provided.
|
1251
|
-
# @param options [Google::Gax::CallOptions]
|
1252
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1253
|
-
# retries, etc.
|
1254
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1255
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKey]
|
1256
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1257
|
-
# @return [Google::Cloud::Kms::V1::CryptoKey]
|
1258
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1259
|
-
# @example
|
1260
|
-
# require "google/cloud/kms"
|
1261
|
-
#
|
1262
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1263
|
-
#
|
1264
|
-
# # TODO: Initialize `crypto_key`:
|
1265
|
-
# crypto_key = {}
|
1266
|
-
#
|
1267
|
-
# # TODO: Initialize `update_mask`:
|
1268
|
-
# update_mask = {}
|
1269
|
-
# response = key_management_client.update_crypto_key(crypto_key, update_mask)
|
1270
|
-
|
1271
|
-
def update_crypto_key \
|
1272
|
-
crypto_key,
|
1273
|
-
update_mask,
|
1274
|
-
options: nil,
|
1275
|
-
&block
|
1276
|
-
req = {
|
1277
|
-
crypto_key: crypto_key,
|
1278
|
-
update_mask: update_mask
|
1279
|
-
}.delete_if { |_, v| v.nil? }
|
1280
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::UpdateCryptoKeyRequest)
|
1281
|
-
@update_crypto_key.call(req, options, &block)
|
1282
|
-
end
|
1283
|
-
|
1284
|
-
# Update a {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}'s metadata.
|
1285
|
-
#
|
1286
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion#state state} may be changed between
|
1287
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::ENABLED ENABLED} and
|
1288
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::DISABLED DISABLED} using this
|
1289
|
-
# method. See {Google::Cloud::Kms::V1::KeyManagementService::DestroyCryptoKeyVersion DestroyCryptoKeyVersion} and {Google::Cloud::Kms::V1::KeyManagementService::RestoreCryptoKeyVersion RestoreCryptoKeyVersion} to
|
1290
|
-
# move between other states.
|
1291
|
-
#
|
1292
|
-
# @param crypto_key_version [Google::Cloud::Kms::V1::CryptoKeyVersion | Hash]
|
1293
|
-
# Required. {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} with updated values.
|
1294
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::CryptoKeyVersion`
|
1295
|
-
# can also be provided.
|
1296
|
-
# @param update_mask [Google::Protobuf::FieldMask | Hash]
|
1297
|
-
# Required. List of fields to be updated in this request.
|
1298
|
-
# A hash of the same form as `Google::Protobuf::FieldMask`
|
1299
|
-
# can also be provided.
|
1300
|
-
# @param options [Google::Gax::CallOptions]
|
1301
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1302
|
-
# retries, etc.
|
1303
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1304
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1305
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1306
|
-
# @return [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1307
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1308
|
-
# @example
|
1309
|
-
# require "google/cloud/kms"
|
1310
|
-
#
|
1311
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1312
|
-
#
|
1313
|
-
# # TODO: Initialize `crypto_key_version`:
|
1314
|
-
# crypto_key_version = {}
|
1315
|
-
#
|
1316
|
-
# # TODO: Initialize `update_mask`:
|
1317
|
-
# update_mask = {}
|
1318
|
-
# response = key_management_client.update_crypto_key_version(crypto_key_version, update_mask)
|
1319
|
-
|
1320
|
-
def update_crypto_key_version \
|
1321
|
-
crypto_key_version,
|
1322
|
-
update_mask,
|
1323
|
-
options: nil,
|
1324
|
-
&block
|
1325
|
-
req = {
|
1326
|
-
crypto_key_version: crypto_key_version,
|
1327
|
-
update_mask: update_mask
|
1328
|
-
}.delete_if { |_, v| v.nil? }
|
1329
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::UpdateCryptoKeyVersionRequest)
|
1330
|
-
@update_crypto_key_version.call(req, options, &block)
|
1331
|
-
end
|
1332
|
-
|
1333
|
-
# Encrypts data, so that it can only be recovered by a call to {Google::Cloud::Kms::V1::KeyManagementService::Decrypt Decrypt}.
|
1334
|
-
# The {Google::Cloud::Kms::V1::CryptoKey#purpose CryptoKey#purpose} must be
|
1335
|
-
# {Google::Cloud::Kms::V1::CryptoKey::CryptoKeyPurpose::ENCRYPT_DECRYPT ENCRYPT_DECRYPT}.
|
1336
|
-
#
|
1337
|
-
# @param name [String]
|
1338
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} or {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}
|
1339
|
-
# to use for encryption.
|
1340
|
-
#
|
1341
|
-
# If a {Google::Cloud::Kms::V1::CryptoKey CryptoKey} is specified, the server will use its
|
1342
|
-
# {Google::Cloud::Kms::V1::CryptoKey#primary primary version}.
|
1343
|
-
# @param plaintext [String]
|
1344
|
-
# Required. The data to encrypt. Must be no larger than 64KiB.
|
1345
|
-
#
|
1346
|
-
# The maximum size depends on the key version's
|
1347
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#protection_level protection_level}. For
|
1348
|
-
# {Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE} keys, the plaintext must be no larger
|
1349
|
-
# than 64KiB. For {Google::Cloud::Kms::V1::ProtectionLevel::HSM HSM} keys, the combined length of the
|
1350
|
-
# plaintext and additional_authenticated_data fields must be no larger than
|
1351
|
-
# 8KiB.
|
1352
|
-
# @param additional_authenticated_data [String]
|
1353
|
-
# Optional. Optional data that, if specified, must also be provided during decryption
|
1354
|
-
# through {Google::Cloud::Kms::V1::DecryptRequest#additional_authenticated_data DecryptRequest#additional_authenticated_data}.
|
1355
|
-
#
|
1356
|
-
# The maximum size depends on the key version's
|
1357
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersionTemplate#protection_level protection_level}. For
|
1358
|
-
# {Google::Cloud::Kms::V1::ProtectionLevel::SOFTWARE SOFTWARE} keys, the AAD must be no larger than
|
1359
|
-
# 64KiB. For {Google::Cloud::Kms::V1::ProtectionLevel::HSM HSM} keys, the combined length of the
|
1360
|
-
# plaintext and additional_authenticated_data fields must be no larger than
|
1361
|
-
# 8KiB.
|
1362
|
-
# @param options [Google::Gax::CallOptions]
|
1363
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1364
|
-
# retries, etc.
|
1365
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1366
|
-
# @yieldparam result [Google::Cloud::Kms::V1::EncryptResponse]
|
1367
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1368
|
-
# @return [Google::Cloud::Kms::V1::EncryptResponse]
|
1369
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1370
|
-
# @example
|
1371
|
-
# require "google/cloud/kms"
|
1372
|
-
#
|
1373
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1374
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY_PATH]")
|
1375
|
-
#
|
1376
|
-
# # TODO: Initialize `plaintext`:
|
1377
|
-
# plaintext = ''
|
1378
|
-
# response = key_management_client.encrypt(formatted_name, plaintext)
|
1379
|
-
|
1380
|
-
def encrypt \
|
1381
|
-
name,
|
1382
|
-
plaintext,
|
1383
|
-
additional_authenticated_data: nil,
|
1384
|
-
options: nil,
|
1385
|
-
&block
|
1386
|
-
req = {
|
1387
|
-
name: name,
|
1388
|
-
plaintext: plaintext,
|
1389
|
-
additional_authenticated_data: additional_authenticated_data
|
1390
|
-
}.delete_if { |_, v| v.nil? }
|
1391
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::EncryptRequest)
|
1392
|
-
@encrypt.call(req, options, &block)
|
1393
|
-
end
|
1394
|
-
|
1395
|
-
# Decrypts data that was protected by {Google::Cloud::Kms::V1::KeyManagementService::Encrypt Encrypt}. The {Google::Cloud::Kms::V1::CryptoKey#purpose CryptoKey#purpose}
|
1396
|
-
# must be {Google::Cloud::Kms::V1::CryptoKey::CryptoKeyPurpose::ENCRYPT_DECRYPT ENCRYPT_DECRYPT}.
|
1397
|
-
#
|
1398
|
-
# @param name [String]
|
1399
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} to use for decryption.
|
1400
|
-
# The server will choose the appropriate version.
|
1401
|
-
# @param ciphertext [String]
|
1402
|
-
# Required. The encrypted data originally returned in
|
1403
|
-
# {Google::Cloud::Kms::V1::EncryptResponse#ciphertext EncryptResponse#ciphertext}.
|
1404
|
-
# @param additional_authenticated_data [String]
|
1405
|
-
# Optional. Optional data that must match the data originally supplied in
|
1406
|
-
# {Google::Cloud::Kms::V1::EncryptRequest#additional_authenticated_data EncryptRequest#additional_authenticated_data}.
|
1407
|
-
# @param options [Google::Gax::CallOptions]
|
1408
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1409
|
-
# retries, etc.
|
1410
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1411
|
-
# @yieldparam result [Google::Cloud::Kms::V1::DecryptResponse]
|
1412
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1413
|
-
# @return [Google::Cloud::Kms::V1::DecryptResponse]
|
1414
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1415
|
-
# @example
|
1416
|
-
# require "google/cloud/kms"
|
1417
|
-
#
|
1418
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1419
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
|
1420
|
-
#
|
1421
|
-
# # TODO: Initialize `ciphertext`:
|
1422
|
-
# ciphertext = ''
|
1423
|
-
# response = key_management_client.decrypt(formatted_name, ciphertext)
|
1424
|
-
|
1425
|
-
def decrypt \
|
1426
|
-
name,
|
1427
|
-
ciphertext,
|
1428
|
-
additional_authenticated_data: nil,
|
1429
|
-
options: nil,
|
1430
|
-
&block
|
1431
|
-
req = {
|
1432
|
-
name: name,
|
1433
|
-
ciphertext: ciphertext,
|
1434
|
-
additional_authenticated_data: additional_authenticated_data
|
1435
|
-
}.delete_if { |_, v| v.nil? }
|
1436
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::DecryptRequest)
|
1437
|
-
@decrypt.call(req, options, &block)
|
1438
|
-
end
|
1439
|
-
|
1440
|
-
# Update the version of a {Google::Cloud::Kms::V1::CryptoKey CryptoKey} that will be used in {Google::Cloud::Kms::V1::KeyManagementService::Encrypt Encrypt}.
|
1441
|
-
#
|
1442
|
-
# Returns an error if called on an asymmetric key.
|
1443
|
-
#
|
1444
|
-
# @param name [String]
|
1445
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKey CryptoKey} to update.
|
1446
|
-
# @param crypto_key_version_id [String]
|
1447
|
-
# Required. The id of the child {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} to use as primary.
|
1448
|
-
# @param options [Google::Gax::CallOptions]
|
1449
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1450
|
-
# retries, etc.
|
1451
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1452
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKey]
|
1453
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1454
|
-
# @return [Google::Cloud::Kms::V1::CryptoKey]
|
1455
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1456
|
-
# @example
|
1457
|
-
# require "google/cloud/kms"
|
1458
|
-
#
|
1459
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1460
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]")
|
1461
|
-
#
|
1462
|
-
# # TODO: Initialize `crypto_key_version_id`:
|
1463
|
-
# crypto_key_version_id = ''
|
1464
|
-
# response = key_management_client.update_crypto_key_primary_version(formatted_name, crypto_key_version_id)
|
1465
|
-
|
1466
|
-
def update_crypto_key_primary_version \
|
1467
|
-
name,
|
1468
|
-
crypto_key_version_id,
|
1469
|
-
options: nil,
|
1470
|
-
&block
|
1471
|
-
req = {
|
1472
|
-
name: name,
|
1473
|
-
crypto_key_version_id: crypto_key_version_id
|
1474
|
-
}.delete_if { |_, v| v.nil? }
|
1475
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::UpdateCryptoKeyPrimaryVersionRequest)
|
1476
|
-
@update_crypto_key_primary_version.call(req, options, &block)
|
1477
|
-
end
|
1478
|
-
|
1479
|
-
# Schedule a {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} for destruction.
|
1480
|
-
#
|
1481
|
-
# Upon calling this method, {Google::Cloud::Kms::V1::CryptoKeyVersion#state CryptoKeyVersion#state} will be set to
|
1482
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::DESTROY_SCHEDULED DESTROY_SCHEDULED}
|
1483
|
-
# and {Google::Cloud::Kms::V1::CryptoKeyVersion#destroy_time destroy_time} will be set to a time 24
|
1484
|
-
# hours in the future, at which point the {Google::Cloud::Kms::V1::CryptoKeyVersion#state state}
|
1485
|
-
# will be changed to
|
1486
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::DESTROYED DESTROYED}, and the key
|
1487
|
-
# material will be irrevocably destroyed.
|
1488
|
-
#
|
1489
|
-
# Before the {Google::Cloud::Kms::V1::CryptoKeyVersion#destroy_time destroy_time} is reached,
|
1490
|
-
# {Google::Cloud::Kms::V1::KeyManagementService::RestoreCryptoKeyVersion RestoreCryptoKeyVersion} may be called to reverse the process.
|
1491
|
-
#
|
1492
|
-
# @param name [String]
|
1493
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} to destroy.
|
1494
|
-
# @param options [Google::Gax::CallOptions]
|
1495
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1496
|
-
# retries, etc.
|
1497
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1498
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1499
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1500
|
-
# @return [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1501
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1502
|
-
# @example
|
1503
|
-
# require "google/cloud/kms"
|
1504
|
-
#
|
1505
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1506
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]")
|
1507
|
-
# response = key_management_client.destroy_crypto_key_version(formatted_name)
|
1508
|
-
|
1509
|
-
def destroy_crypto_key_version \
|
1510
|
-
name,
|
1511
|
-
options: nil,
|
1512
|
-
&block
|
1513
|
-
req = {
|
1514
|
-
name: name
|
1515
|
-
}.delete_if { |_, v| v.nil? }
|
1516
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::DestroyCryptoKeyVersionRequest)
|
1517
|
-
@destroy_crypto_key_version.call(req, options, &block)
|
1518
|
-
end
|
1519
|
-
|
1520
|
-
# Restore a {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} in the
|
1521
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::DESTROY_SCHEDULED DESTROY_SCHEDULED}
|
1522
|
-
# state.
|
1523
|
-
#
|
1524
|
-
# Upon restoration of the CryptoKeyVersion, {Google::Cloud::Kms::V1::CryptoKeyVersion#state state}
|
1525
|
-
# will be set to {Google::Cloud::Kms::V1::CryptoKeyVersion::CryptoKeyVersionState::DISABLED DISABLED},
|
1526
|
-
# and {Google::Cloud::Kms::V1::CryptoKeyVersion#destroy_time destroy_time} will be cleared.
|
1527
|
-
#
|
1528
|
-
# @param name [String]
|
1529
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} to restore.
|
1530
|
-
# @param options [Google::Gax::CallOptions]
|
1531
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1532
|
-
# retries, etc.
|
1533
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1534
|
-
# @yieldparam result [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1535
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1536
|
-
# @return [Google::Cloud::Kms::V1::CryptoKeyVersion]
|
1537
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1538
|
-
# @example
|
1539
|
-
# require "google/cloud/kms"
|
1540
|
-
#
|
1541
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1542
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]")
|
1543
|
-
# response = key_management_client.restore_crypto_key_version(formatted_name)
|
1544
|
-
|
1545
|
-
def restore_crypto_key_version \
|
1546
|
-
name,
|
1547
|
-
options: nil,
|
1548
|
-
&block
|
1549
|
-
req = {
|
1550
|
-
name: name
|
1551
|
-
}.delete_if { |_, v| v.nil? }
|
1552
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::RestoreCryptoKeyVersionRequest)
|
1553
|
-
@restore_crypto_key_version.call(req, options, &block)
|
1554
|
-
end
|
1555
|
-
|
1556
|
-
# Returns the public key for the given {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}. The
|
1557
|
-
# {Google::Cloud::Kms::V1::CryptoKey#purpose CryptoKey#purpose} must be
|
1558
|
-
# {Google::Cloud::Kms::V1::CryptoKey::CryptoKeyPurpose::ASYMMETRIC_SIGN ASYMMETRIC_SIGN} or
|
1559
|
-
# {Google::Cloud::Kms::V1::CryptoKey::CryptoKeyPurpose::ASYMMETRIC_DECRYPT ASYMMETRIC_DECRYPT}.
|
1560
|
-
#
|
1561
|
-
# @param name [String]
|
1562
|
-
# Required. The {Google::Cloud::Kms::V1::CryptoKeyVersion#name name} of the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} public key to
|
1563
|
-
# get.
|
1564
|
-
# @param options [Google::Gax::CallOptions]
|
1565
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1566
|
-
# retries, etc.
|
1567
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1568
|
-
# @yieldparam result [Google::Cloud::Kms::V1::PublicKey]
|
1569
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1570
|
-
# @return [Google::Cloud::Kms::V1::PublicKey]
|
1571
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1572
|
-
# @example
|
1573
|
-
# require "google/cloud/kms"
|
1574
|
-
#
|
1575
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1576
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]")
|
1577
|
-
# response = key_management_client.get_public_key(formatted_name)
|
1578
|
-
|
1579
|
-
def get_public_key \
|
1580
|
-
name,
|
1581
|
-
options: nil,
|
1582
|
-
&block
|
1583
|
-
req = {
|
1584
|
-
name: name
|
1585
|
-
}.delete_if { |_, v| v.nil? }
|
1586
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::GetPublicKeyRequest)
|
1587
|
-
@get_public_key.call(req, options, &block)
|
1588
|
-
end
|
1589
|
-
|
1590
|
-
# Decrypts data that was encrypted with a public key retrieved from
|
1591
|
-
# {Google::Cloud::Kms::V1::KeyManagementService::GetPublicKey GetPublicKey} corresponding to a {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} with
|
1592
|
-
# {Google::Cloud::Kms::V1::CryptoKey#purpose CryptoKey#purpose} ASYMMETRIC_DECRYPT.
|
1593
|
-
#
|
1594
|
-
# @param name [String]
|
1595
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} to use for
|
1596
|
-
# decryption.
|
1597
|
-
# @param ciphertext [String]
|
1598
|
-
# Required. The data encrypted with the named {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion}'s public
|
1599
|
-
# key using OAEP.
|
1600
|
-
# @param options [Google::Gax::CallOptions]
|
1601
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1602
|
-
# retries, etc.
|
1603
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1604
|
-
# @yieldparam result [Google::Cloud::Kms::V1::AsymmetricDecryptResponse]
|
1605
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1606
|
-
# @return [Google::Cloud::Kms::V1::AsymmetricDecryptResponse]
|
1607
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1608
|
-
# @example
|
1609
|
-
# require "google/cloud/kms"
|
1610
|
-
#
|
1611
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1612
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]")
|
1613
|
-
#
|
1614
|
-
# # TODO: Initialize `ciphertext`:
|
1615
|
-
# ciphertext = ''
|
1616
|
-
# response = key_management_client.asymmetric_decrypt(formatted_name, ciphertext)
|
1617
|
-
|
1618
|
-
def asymmetric_decrypt \
|
1619
|
-
name,
|
1620
|
-
ciphertext,
|
1621
|
-
options: nil,
|
1622
|
-
&block
|
1623
|
-
req = {
|
1624
|
-
name: name,
|
1625
|
-
ciphertext: ciphertext
|
1626
|
-
}.delete_if { |_, v| v.nil? }
|
1627
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::AsymmetricDecryptRequest)
|
1628
|
-
@asymmetric_decrypt.call(req, options, &block)
|
1629
|
-
end
|
1630
|
-
|
1631
|
-
# Signs data using a {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} with {Google::Cloud::Kms::V1::CryptoKey#purpose CryptoKey#purpose}
|
1632
|
-
# ASYMMETRIC_SIGN, producing a signature that can be verified with the public
|
1633
|
-
# key retrieved from {Google::Cloud::Kms::V1::KeyManagementService::GetPublicKey GetPublicKey}.
|
1634
|
-
#
|
1635
|
-
# @param name [String]
|
1636
|
-
# Required. The resource name of the {Google::Cloud::Kms::V1::CryptoKeyVersion CryptoKeyVersion} to use for signing.
|
1637
|
-
# @param digest [Google::Cloud::Kms::V1::Digest | Hash]
|
1638
|
-
# Required. The digest of the data to sign. The digest must be produced with
|
1639
|
-
# the same digest algorithm as specified by the key version's
|
1640
|
-
# {Google::Cloud::Kms::V1::CryptoKeyVersion#algorithm algorithm}.
|
1641
|
-
# A hash of the same form as `Google::Cloud::Kms::V1::Digest`
|
1642
|
-
# can also be provided.
|
1643
|
-
# @param options [Google::Gax::CallOptions]
|
1644
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1645
|
-
# retries, etc.
|
1646
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1647
|
-
# @yieldparam result [Google::Cloud::Kms::V1::AsymmetricSignResponse]
|
1648
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1649
|
-
# @return [Google::Cloud::Kms::V1::AsymmetricSignResponse]
|
1650
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1651
|
-
# @example
|
1652
|
-
# require "google/cloud/kms"
|
1653
|
-
#
|
1654
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1655
|
-
# formatted_name = Google::Cloud::Kms::V1::KeyManagementServiceClient.crypto_key_version_path("[PROJECT]", "[LOCATION]", "[KEY_RING]", "[CRYPTO_KEY]", "[CRYPTO_KEY_VERSION]")
|
1656
|
-
#
|
1657
|
-
# # TODO: Initialize `digest`:
|
1658
|
-
# digest = {}
|
1659
|
-
# response = key_management_client.asymmetric_sign(formatted_name, digest)
|
1660
|
-
|
1661
|
-
def asymmetric_sign \
|
1662
|
-
name,
|
1663
|
-
digest,
|
1664
|
-
options: nil,
|
1665
|
-
&block
|
1666
|
-
req = {
|
1667
|
-
name: name,
|
1668
|
-
digest: digest
|
1669
|
-
}.delete_if { |_, v| v.nil? }
|
1670
|
-
req = Google::Gax::to_proto(req, Google::Cloud::Kms::V1::AsymmetricSignRequest)
|
1671
|
-
@asymmetric_sign.call(req, options, &block)
|
1672
|
-
end
|
1673
|
-
|
1674
|
-
# Sets the access control policy on the specified resource. Replaces
|
1675
|
-
# any existing policy.
|
1676
|
-
#
|
1677
|
-
# Can return Public Errors: NOT_FOUND, INVALID_ARGUMENT and
|
1678
|
-
# PERMISSION_DENIED
|
1679
|
-
#
|
1680
|
-
# @param resource [String]
|
1681
|
-
# REQUIRED: The resource for which the policy is being specified.
|
1682
|
-
# See the operation documentation for the appropriate value for this field.
|
1683
|
-
# @param policy [Google::Iam::V1::Policy | Hash]
|
1684
|
-
# REQUIRED: The complete policy to be applied to the `resource`. The size of
|
1685
|
-
# the policy is limited to a few 10s of KB. An empty policy is a
|
1686
|
-
# valid policy but certain Cloud Platform services (such as Projects)
|
1687
|
-
# might reject them.
|
1688
|
-
# A hash of the same form as `Google::Iam::V1::Policy`
|
1689
|
-
# can also be provided.
|
1690
|
-
# @param options [Google::Gax::CallOptions]
|
1691
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1692
|
-
# retries, etc.
|
1693
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1694
|
-
# @yieldparam result [Google::Iam::V1::Policy]
|
1695
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1696
|
-
# @return [Google::Iam::V1::Policy]
|
1697
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1698
|
-
# @example
|
1699
|
-
# require "google/cloud/kms"
|
1700
|
-
#
|
1701
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1702
|
-
# formatted_resource = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
1703
|
-
#
|
1704
|
-
# # TODO: Initialize `policy`:
|
1705
|
-
# policy = {}
|
1706
|
-
# response = key_management_client.set_iam_policy(formatted_resource, policy)
|
1707
|
-
|
1708
|
-
def set_iam_policy \
|
1709
|
-
resource,
|
1710
|
-
policy,
|
1711
|
-
options: nil,
|
1712
|
-
&block
|
1713
|
-
req = {
|
1714
|
-
resource: resource,
|
1715
|
-
policy: policy
|
1716
|
-
}.delete_if { |_, v| v.nil? }
|
1717
|
-
req = Google::Gax::to_proto(req, Google::Iam::V1::SetIamPolicyRequest)
|
1718
|
-
@set_iam_policy.call(req, options, &block)
|
1719
|
-
end
|
1720
|
-
|
1721
|
-
# Gets the access control policy for a resource. Returns an empty policy
|
1722
|
-
# if the resource exists and does not have a policy set.
|
1723
|
-
#
|
1724
|
-
# @param resource [String]
|
1725
|
-
# REQUIRED: The resource for which the policy is being requested.
|
1726
|
-
# See the operation documentation for the appropriate value for this field.
|
1727
|
-
# @param options_ [Google::Iam::V1::GetPolicyOptions | Hash]
|
1728
|
-
# OPTIONAL: A `GetPolicyOptions` object for specifying options to
|
1729
|
-
# `GetIamPolicy`. This field is only used by Cloud IAM.
|
1730
|
-
# A hash of the same form as `Google::Iam::V1::GetPolicyOptions`
|
1731
|
-
# can also be provided.
|
1732
|
-
# @param options [Google::Gax::CallOptions]
|
1733
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1734
|
-
# retries, etc.
|
1735
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1736
|
-
# @yieldparam result [Google::Iam::V1::Policy]
|
1737
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1738
|
-
# @return [Google::Iam::V1::Policy]
|
1739
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1740
|
-
# @example
|
1741
|
-
# require "google/cloud/kms"
|
1742
|
-
#
|
1743
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1744
|
-
# formatted_resource = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
1745
|
-
# response = key_management_client.get_iam_policy(formatted_resource)
|
1746
|
-
|
1747
|
-
def get_iam_policy \
|
1748
|
-
resource,
|
1749
|
-
options_: nil,
|
1750
|
-
options: nil,
|
1751
|
-
&block
|
1752
|
-
req = {
|
1753
|
-
resource: resource,
|
1754
|
-
options: options_
|
1755
|
-
}.delete_if { |_, v| v.nil? }
|
1756
|
-
req = Google::Gax::to_proto(req, Google::Iam::V1::GetIamPolicyRequest)
|
1757
|
-
@get_iam_policy.call(req, options, &block)
|
1758
|
-
end
|
1759
|
-
|
1760
|
-
# Returns permissions that a caller has on the specified resource. If the
|
1761
|
-
# resource does not exist, this will return an empty set of
|
1762
|
-
# permissions, not a NOT_FOUND error.
|
1763
|
-
#
|
1764
|
-
# Note: This operation is designed to be used for building
|
1765
|
-
# permission-aware UIs and command-line tools, not for authorization
|
1766
|
-
# checking. This operation may "fail open" without warning.
|
1767
|
-
#
|
1768
|
-
# @param resource [String]
|
1769
|
-
# REQUIRED: The resource for which the policy detail is being requested.
|
1770
|
-
# See the operation documentation for the appropriate value for this field.
|
1771
|
-
# @param permissions [Array<String>]
|
1772
|
-
# The set of permissions to check for the `resource`. Permissions with
|
1773
|
-
# wildcards (such as '*' or 'storage.*') are not allowed. For more
|
1774
|
-
# information see
|
1775
|
-
# [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
|
1776
|
-
# @param options [Google::Gax::CallOptions]
|
1777
|
-
# Overrides the default settings for this call, e.g, timeout,
|
1778
|
-
# retries, etc.
|
1779
|
-
# @yield [result, operation] Access the result along with the RPC operation
|
1780
|
-
# @yieldparam result [Google::Iam::V1::TestIamPermissionsResponse]
|
1781
|
-
# @yieldparam operation [GRPC::ActiveCall::Operation]
|
1782
|
-
# @return [Google::Iam::V1::TestIamPermissionsResponse]
|
1783
|
-
# @raise [Google::Gax::GaxError] if the RPC is aborted.
|
1784
|
-
# @example
|
1785
|
-
# require "google/cloud/kms"
|
1786
|
-
#
|
1787
|
-
# key_management_client = Google::Cloud::Kms.new(version: :v1)
|
1788
|
-
# formatted_resource = Google::Cloud::Kms::V1::KeyManagementServiceClient.key_ring_path("[PROJECT]", "[LOCATION]", "[KEY_RING]")
|
1789
|
-
#
|
1790
|
-
# # TODO: Initialize `permissions`:
|
1791
|
-
# permissions = []
|
1792
|
-
# response = key_management_client.test_iam_permissions(formatted_resource, permissions)
|
1793
|
-
|
1794
|
-
def test_iam_permissions \
|
1795
|
-
resource,
|
1796
|
-
permissions,
|
1797
|
-
options: nil,
|
1798
|
-
&block
|
1799
|
-
req = {
|
1800
|
-
resource: resource,
|
1801
|
-
permissions: permissions
|
1802
|
-
}.delete_if { |_, v| v.nil? }
|
1803
|
-
req = Google::Gax::to_proto(req, Google::Iam::V1::TestIamPermissionsRequest)
|
1804
|
-
@test_iam_permissions.call(req, options, &block)
|
1805
|
-
end
|
1806
|
-
end
|
1807
|
-
end
|
1808
|
-
end
|
1809
|
-
end
|
1810
|
-
end
|