google-cloud-kms-v1 1.9.1 → 1.10.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.
@@ -0,0 +1,877 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Kms
23
+ module V1
24
+ # A {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
25
+ # represents a single-tenant HSM instance. It can be used for creating
26
+ # {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys} with a
27
+ # {::Google::Cloud::Kms::V1::ProtectionLevel ProtectionLevel} of
28
+ # [HSM_SINGLE_TENANT][CryptoKeyVersion.ProtectionLevel.HSM_SINGLE_TENANT], as
29
+ # well as performing cryptographic operations using keys created within the
30
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
31
+ # @!attribute [rw] name
32
+ # @return [::String]
33
+ # Identifier. The resource name for this
34
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} in
35
+ # the format `projects/*/locations/*/singleTenantHsmInstances/*`.
36
+ # @!attribute [r] create_time
37
+ # @return [::Google::Protobuf::Timestamp]
38
+ # Output only. The time at which the
39
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} was
40
+ # created.
41
+ # @!attribute [r] state
42
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State]
43
+ # Output only. The state of the
44
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
45
+ # @!attribute [rw] quorum_auth
46
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth]
47
+ # Required. The quorum auth configuration for the
48
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
49
+ # @!attribute [r] delete_time
50
+ # @return [::Google::Protobuf::Timestamp]
51
+ # Output only. The time at which the
52
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} was
53
+ # deleted.
54
+ # @!attribute [r] unrefreshed_duration_until_disable
55
+ # @return [::Google::Protobuf::Duration]
56
+ # Output only. The system-defined duration that an instance can remain
57
+ # unrefreshed until it is automatically disabled. This will have a value of
58
+ # 120 days.
59
+ # @!attribute [r] disable_time
60
+ # @return [::Google::Protobuf::Timestamp]
61
+ # Output only. The time at which the instance will be automatically disabled
62
+ # if not refreshed. This field is updated upon creation and after each
63
+ # successful refresh operation and enable. A
64
+ # [RefreshSingleTenantHsmInstance][] operation must be made via a
65
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
66
+ # before this time otherwise the
67
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} will
68
+ # become disabled.
69
+ class SingleTenantHsmInstance
70
+ include ::Google::Protobuf::MessageExts
71
+ extend ::Google::Protobuf::MessageExts::ClassMethods
72
+
73
+ # Configuration for M of N quorum auth.
74
+ # @!attribute [rw] total_approver_count
75
+ # @return [::Integer]
76
+ # Required. The total number of approvers. This is the N value used
77
+ # for M of N quorum auth. Must be greater than or equal to 3 and less than
78
+ # or equal to 16.
79
+ # @!attribute [r] required_approver_count
80
+ # @return [::Integer]
81
+ # Output only. The required numbers of approvers. The M value used for M of
82
+ # N quorum auth. Must be greater than or equal to 2 and less than or equal
83
+ # to
84
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth#total_approver_count total_approver_count}
85
+ # - 1.
86
+ # @!attribute [r] two_factor_public_key_pems
87
+ # @return [::Array<::String>]
88
+ # Output only. The public keys associated with the 2FA keys for M of N
89
+ # quorum auth.
90
+ class QuorumAuth
91
+ include ::Google::Protobuf::MessageExts
92
+ extend ::Google::Protobuf::MessageExts::ClassMethods
93
+ end
94
+
95
+ # The set of states of a
96
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
97
+ module State
98
+ # Not specified.
99
+ STATE_UNSPECIFIED = 0
100
+
101
+ # The
102
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} is
103
+ # being created.
104
+ CREATING = 1
105
+
106
+ # The
107
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} is
108
+ # waiting for 2FA keys to be registered. This can be done by calling
109
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#create_single_tenant_hsm_instance_proposal CreateSingleTenantHsmInstanceProposal}
110
+ # with the [RegisterTwoFactorAuthKeys][] operation.
111
+ PENDING_TWO_FACTOR_AUTH_REGISTRATION = 2
112
+
113
+ # The
114
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} is
115
+ # ready to use. A
116
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
117
+ # must be in the
118
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state
119
+ # for all {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys} created within the
120
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} to
121
+ # be usable.
122
+ ACTIVE = 3
123
+
124
+ # The
125
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} is
126
+ # being disabled.
127
+ DISABLING = 4
128
+
129
+ # The
130
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} is
131
+ # disabled.
132
+ DISABLED = 5
133
+
134
+ # The
135
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} is
136
+ # being deleted. Requests to the instance will be rejected in this state.
137
+ DELETING = 6
138
+
139
+ # The
140
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
141
+ # has been deleted.
142
+ DELETED = 7
143
+
144
+ # The
145
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
146
+ # has failed and can not be recovered or used.
147
+ FAILED = 8
148
+ end
149
+ end
150
+
151
+ # A
152
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
153
+ # represents a proposal to perform an operation on a
154
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
155
+ # @!attribute [rw] name
156
+ # @return [::String]
157
+ # Identifier. The resource name for this
158
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} in
159
+ # the format `projects/*/locations/*/singleTenantHsmInstances/*/proposals/*`.
160
+ # @!attribute [r] create_time
161
+ # @return [::Google::Protobuf::Timestamp]
162
+ # Output only. The time at which the
163
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
164
+ # was created.
165
+ # @!attribute [r] state
166
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::State]
167
+ # Output only. The state of the
168
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}.
169
+ # @!attribute [r] failure_reason
170
+ # @return [::String]
171
+ # Output only. The root cause of the most recent failure. Only present if
172
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal#state state} is
173
+ # [FAILED][SingleTenantHsmInstanceProposal.FAILED].
174
+ # @!attribute [r] quorum_parameters
175
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::QuorumParameters]
176
+ # Output only. The quorum approval parameters for the
177
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}.
178
+ #
179
+ # Note: The following fields are mutually exclusive: `quorum_parameters`, `required_action_quorum_parameters`. If a field in that set is populated, all other fields in the set will automatically be cleared.
180
+ # @!attribute [r] required_action_quorum_parameters
181
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RequiredActionQuorumParameters]
182
+ # Output only. Parameters for an approval of a
183
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
184
+ # that has both required challenges and a quorum.
185
+ #
186
+ # Note: The following fields are mutually exclusive: `required_action_quorum_parameters`, `quorum_parameters`. If a field in that set is populated, all other fields in the set will automatically be cleared.
187
+ # @!attribute [rw] expire_time
188
+ # @return [::Google::Protobuf::Timestamp]
189
+ # The time at which the
190
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
191
+ # will expire if not approved and executed.
192
+ #
193
+ # Note: The following fields are mutually exclusive: `expire_time`, `ttl`. If a field in that set is populated, all other fields in the set will automatically be cleared.
194
+ # @!attribute [rw] ttl
195
+ # @return [::Google::Protobuf::Duration]
196
+ # Input only. The TTL for the
197
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}.
198
+ # Proposals will expire after this duration.
199
+ #
200
+ # Note: The following fields are mutually exclusive: `ttl`, `expire_time`. If a field in that set is populated, all other fields in the set will automatically be cleared.
201
+ # @!attribute [r] delete_time
202
+ # @return [::Google::Protobuf::Timestamp]
203
+ # Output only. The time at which the
204
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
205
+ # was deleted.
206
+ # @!attribute [r] purge_time
207
+ # @return [::Google::Protobuf::Timestamp]
208
+ # Output only. The time at which the soft-deleted
209
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
210
+ # will be permanently purged. This field is only populated
211
+ # when the state is DELETED and will be set a time after expiration of the
212
+ # proposal, i.e. >= expire_time or (create_time + ttl).
213
+ # @!attribute [rw] register_two_factor_auth_keys
214
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RegisterTwoFactorAuthKeys]
215
+ # Register 2FA keys for the
216
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
217
+ # This operation requires all N Challenges to be signed by 2FA keys. The
218
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
219
+ # must be in the
220
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::PENDING_TWO_FACTOR_AUTH_REGISTRATION PENDING_TWO_FACTOR_AUTH_REGISTRATION}
221
+ # state to perform this operation.
222
+ #
223
+ # Note: The following fields are mutually exclusive: `register_two_factor_auth_keys`, `disable_single_tenant_hsm_instance`, `enable_single_tenant_hsm_instance`, `delete_single_tenant_hsm_instance`, `add_quorum_member`, `remove_quorum_member`, `refresh_single_tenant_hsm_instance`. If a field in that set is populated, all other fields in the set will automatically be cleared.
224
+ # @!attribute [rw] disable_single_tenant_hsm_instance
225
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::DisableSingleTenantHsmInstance]
226
+ # Disable the
227
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
228
+ # The
229
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
230
+ # must be in the
231
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state
232
+ # to perform this operation.
233
+ #
234
+ # Note: The following fields are mutually exclusive: `disable_single_tenant_hsm_instance`, `register_two_factor_auth_keys`, `enable_single_tenant_hsm_instance`, `delete_single_tenant_hsm_instance`, `add_quorum_member`, `remove_quorum_member`, `refresh_single_tenant_hsm_instance`. If a field in that set is populated, all other fields in the set will automatically be cleared.
235
+ # @!attribute [rw] enable_single_tenant_hsm_instance
236
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::EnableSingleTenantHsmInstance]
237
+ # Enable the
238
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
239
+ # The
240
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
241
+ # must be in the
242
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::DISABLED DISABLED}
243
+ # state to perform this operation.
244
+ #
245
+ # Note: The following fields are mutually exclusive: `enable_single_tenant_hsm_instance`, `register_two_factor_auth_keys`, `disable_single_tenant_hsm_instance`, `delete_single_tenant_hsm_instance`, `add_quorum_member`, `remove_quorum_member`, `refresh_single_tenant_hsm_instance`. If a field in that set is populated, all other fields in the set will automatically be cleared.
246
+ # @!attribute [rw] delete_single_tenant_hsm_instance
247
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::DeleteSingleTenantHsmInstance]
248
+ # Delete the
249
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
250
+ # Deleting a
251
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
252
+ # will make all {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys} attached to the
253
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
254
+ # unusable. The
255
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
256
+ # must be in the
257
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::DISABLED DISABLED} or
258
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::PENDING_TWO_FACTOR_AUTH_REGISTRATION PENDING_TWO_FACTOR_AUTH_REGISTRATION}
259
+ # state to perform this operation.
260
+ #
261
+ # Note: The following fields are mutually exclusive: `delete_single_tenant_hsm_instance`, `register_two_factor_auth_keys`, `disable_single_tenant_hsm_instance`, `enable_single_tenant_hsm_instance`, `add_quorum_member`, `remove_quorum_member`, `refresh_single_tenant_hsm_instance`. If a field in that set is populated, all other fields in the set will automatically be cleared.
262
+ # @!attribute [rw] add_quorum_member
263
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::AddQuorumMember]
264
+ # Add a quorum member to the
265
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
266
+ # This will increase the
267
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth#total_approver_count total_approver_count}
268
+ # by 1. The
269
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
270
+ # must be in the
271
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state
272
+ # to perform this operation.
273
+ #
274
+ # Note: The following fields are mutually exclusive: `add_quorum_member`, `register_two_factor_auth_keys`, `disable_single_tenant_hsm_instance`, `enable_single_tenant_hsm_instance`, `delete_single_tenant_hsm_instance`, `remove_quorum_member`, `refresh_single_tenant_hsm_instance`. If a field in that set is populated, all other fields in the set will automatically be cleared.
275
+ # @!attribute [rw] remove_quorum_member
276
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RemoveQuorumMember]
277
+ # Remove a quorum member from the
278
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
279
+ # This will reduce
280
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth#total_approver_count total_approver_count}
281
+ # by 1. The
282
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
283
+ # must be in the
284
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state
285
+ # to perform this operation.
286
+ #
287
+ # Note: The following fields are mutually exclusive: `remove_quorum_member`, `register_two_factor_auth_keys`, `disable_single_tenant_hsm_instance`, `enable_single_tenant_hsm_instance`, `delete_single_tenant_hsm_instance`, `add_quorum_member`, `refresh_single_tenant_hsm_instance`. If a field in that set is populated, all other fields in the set will automatically be cleared.
288
+ # @!attribute [rw] refresh_single_tenant_hsm_instance
289
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RefreshSingleTenantHsmInstance]
290
+ # Refreshes the
291
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
292
+ # This operation must be performed periodically to keep the
293
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
294
+ # active. This operation must be performed before
295
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance#unrefreshed_duration_until_disable unrefreshed_duration_until_disable}
296
+ # has passed. The
297
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
298
+ # must be in the
299
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state
300
+ # to perform this operation.
301
+ #
302
+ # Note: The following fields are mutually exclusive: `refresh_single_tenant_hsm_instance`, `register_two_factor_auth_keys`, `disable_single_tenant_hsm_instance`, `enable_single_tenant_hsm_instance`, `delete_single_tenant_hsm_instance`, `add_quorum_member`, `remove_quorum_member`. If a field in that set is populated, all other fields in the set will automatically be cleared.
303
+ class SingleTenantHsmInstanceProposal
304
+ include ::Google::Protobuf::MessageExts
305
+ extend ::Google::Protobuf::MessageExts::ClassMethods
306
+
307
+ # Parameters of quorum approval for the
308
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}.
309
+ # @!attribute [r] required_approver_count
310
+ # @return [::Integer]
311
+ # Output only. The required numbers of approvers. This is the M value used
312
+ # for M of N quorum auth. It is less than the number of public keys.
313
+ # @!attribute [r] challenges
314
+ # @return [::Array<::Google::Cloud::Kms::V1::Challenge>]
315
+ # Output only. The challenges to be signed by 2FA keys for quorum auth. M
316
+ # of N of these challenges are required to be signed to approve the
317
+ # operation.
318
+ # @!attribute [r] approved_two_factor_public_key_pems
319
+ # @return [::Array<::String>]
320
+ # Output only. The public keys associated with the 2FA keys that have
321
+ # already approved the
322
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
323
+ # by signing the challenge.
324
+ class QuorumParameters
325
+ include ::Google::Protobuf::MessageExts
326
+ extend ::Google::Protobuf::MessageExts::ClassMethods
327
+ end
328
+
329
+ # Parameters for an approval that has both required challenges and a
330
+ # quorum.
331
+ # @!attribute [r] required_challenges
332
+ # @return [::Array<::Google::Cloud::Kms::V1::Challenge>]
333
+ # Output only. A list of specific challenges that must be signed.
334
+ # For some operations, this will contain a single challenge.
335
+ # @!attribute [r] required_approver_count
336
+ # @return [::Integer]
337
+ # Output only. The required number of quorum approvers. This is the M value
338
+ # used for M of N quorum auth. It is less than the number of public keys.
339
+ # @!attribute [r] quorum_challenges
340
+ # @return [::Array<::Google::Cloud::Kms::V1::Challenge>]
341
+ # Output only. The challenges to be signed by 2FA keys for quorum auth. M
342
+ # of N of these challenges are required to be signed to approve the
343
+ # operation.
344
+ # @!attribute [r] approved_two_factor_public_key_pems
345
+ # @return [::Array<::String>]
346
+ # Output only. The public keys associated with the 2FA keys that have
347
+ # already approved the
348
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
349
+ # by signing the challenge.
350
+ class RequiredActionQuorumParameters
351
+ include ::Google::Protobuf::MessageExts
352
+ extend ::Google::Protobuf::MessageExts::ClassMethods
353
+ end
354
+
355
+ # Register 2FA keys for the
356
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
357
+ # This operation requires all Challenges to be signed by 2FA keys. The
358
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
359
+ # be in the
360
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::PENDING_TWO_FACTOR_AUTH_REGISTRATION PENDING_TWO_FACTOR_AUTH_REGISTRATION}
361
+ # state to perform this operation.
362
+ # @!attribute [rw] required_approver_count
363
+ # @return [::Integer]
364
+ # Required. The required numbers of approvers to set for the
365
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
366
+ # This is the M value used for M of N quorum auth. Must be greater than or
367
+ # equal to 2 and less than or equal to
368
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth#total_approver_count total_approver_count}
369
+ # - 1.
370
+ # @!attribute [rw] two_factor_public_key_pems
371
+ # @return [::Array<::String>]
372
+ # Required. The public keys associated with the 2FA keys for M of N quorum
373
+ # auth. Public keys must be associated with RSA 2048 keys.
374
+ class RegisterTwoFactorAuthKeys
375
+ include ::Google::Protobuf::MessageExts
376
+ extend ::Google::Protobuf::MessageExts::ClassMethods
377
+ end
378
+
379
+ # Disable the
380
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}. The
381
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
382
+ # be in the
383
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state to
384
+ # perform this operation.
385
+ class DisableSingleTenantHsmInstance
386
+ include ::Google::Protobuf::MessageExts
387
+ extend ::Google::Protobuf::MessageExts::ClassMethods
388
+ end
389
+
390
+ # Enable the
391
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}. The
392
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
393
+ # be in the
394
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::DISABLED DISABLED}
395
+ # state to perform this operation.
396
+ class EnableSingleTenantHsmInstance
397
+ include ::Google::Protobuf::MessageExts
398
+ extend ::Google::Protobuf::MessageExts::ClassMethods
399
+ end
400
+
401
+ # Delete the
402
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
403
+ # Deleting a
404
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} will
405
+ # make all {::Google::Cloud::Kms::V1::CryptoKey CryptoKeys} attached to the
406
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
407
+ # unusable. The
408
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
409
+ # not be in the
410
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::DELETING DELETING} or
411
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::DELETED DELETED} state
412
+ # to perform this operation.
413
+ class DeleteSingleTenantHsmInstance
414
+ include ::Google::Protobuf::MessageExts
415
+ extend ::Google::Protobuf::MessageExts::ClassMethods
416
+ end
417
+
418
+ # Add a quorum member to the
419
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
420
+ # This will increase the
421
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth#total_approver_count total_approver_count}
422
+ # by 1. The
423
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
424
+ # be in the
425
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state to
426
+ # perform this operation.
427
+ # @!attribute [rw] two_factor_public_key_pem
428
+ # @return [::String]
429
+ # Required. The public key associated with the 2FA key for the new quorum
430
+ # member to add. Public keys must be associated with RSA 2048 keys.
431
+ class AddQuorumMember
432
+ include ::Google::Protobuf::MessageExts
433
+ extend ::Google::Protobuf::MessageExts::ClassMethods
434
+ end
435
+
436
+ # Remove a quorum member from the
437
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
438
+ # This will reduce
439
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::QuorumAuth#total_approver_count total_approver_count}
440
+ # by 1. The
441
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
442
+ # be in the
443
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state to
444
+ # perform this operation.
445
+ # @!attribute [rw] two_factor_public_key_pem
446
+ # @return [::String]
447
+ # Required. The public key associated with the 2FA key for the quorum
448
+ # member to remove. Public keys must be associated with RSA 2048 keys.
449
+ class RemoveQuorumMember
450
+ include ::Google::Protobuf::MessageExts
451
+ extend ::Google::Protobuf::MessageExts::ClassMethods
452
+ end
453
+
454
+ # Refreshes the
455
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}.
456
+ # This operation must be performed periodically to keep the
457
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
458
+ # active. This operation must be performed before
459
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance#unrefreshed_duration_until_disable unrefreshed_duration_until_disable}
460
+ # has passed. The
461
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} must
462
+ # be in the
463
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance::State::ACTIVE ACTIVE} state to
464
+ # perform this operation.
465
+ class RefreshSingleTenantHsmInstance
466
+ include ::Google::Protobuf::MessageExts
467
+ extend ::Google::Protobuf::MessageExts::ClassMethods
468
+ end
469
+
470
+ # The set of states of a
471
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}.
472
+ module State
473
+ # Not specified.
474
+ STATE_UNSPECIFIED = 0
475
+
476
+ # The
477
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
478
+ # is being created.
479
+ CREATING = 1
480
+
481
+ # The
482
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
483
+ # is pending approval.
484
+ PENDING = 2
485
+
486
+ # The
487
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
488
+ # has been approved.
489
+ APPROVED = 3
490
+
491
+ # The
492
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
493
+ # is being executed.
494
+ RUNNING = 4
495
+
496
+ # The
497
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
498
+ # has been executed successfully.
499
+ SUCCEEDED = 5
500
+
501
+ # The
502
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
503
+ # has failed.
504
+ FAILED = 6
505
+
506
+ # The
507
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
508
+ # has been deleted and will be purged after the purge_time.
509
+ DELETED = 7
510
+ end
511
+ end
512
+
513
+ # A challenge to be signed by a 2FA key.
514
+ # @!attribute [r] challenge
515
+ # @return [::String]
516
+ # Output only. The challenge to be signed by the 2FA key indicated by the
517
+ # public key.
518
+ # @!attribute [r] public_key_pem
519
+ # @return [::String]
520
+ # Output only. The public key associated with the 2FA key that should sign
521
+ # the challenge.
522
+ class Challenge
523
+ include ::Google::Protobuf::MessageExts
524
+ extend ::Google::Protobuf::MessageExts::ClassMethods
525
+ end
526
+
527
+ # A reply to a challenge signed by a 2FA key.
528
+ # @!attribute [rw] signed_challenge
529
+ # @return [::String]
530
+ # Required. The signed challenge associated with the 2FA key.
531
+ # The signature must be RSASSA-PKCS1 v1.5 with a SHA256 digest.
532
+ # @!attribute [rw] public_key_pem
533
+ # @return [::String]
534
+ # Required. The public key associated with the 2FA key.
535
+ class ChallengeReply
536
+ include ::Google::Protobuf::MessageExts
537
+ extend ::Google::Protobuf::MessageExts::ClassMethods
538
+ end
539
+
540
+ # Request message for
541
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#list_single_tenant_hsm_instances HsmManagement.ListSingleTenantHsmInstances}.
542
+ # @!attribute [rw] parent
543
+ # @return [::String]
544
+ # Required. The resource name of the location associated with the
545
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstances} to
546
+ # list, in the format `projects/*/locations/*`.
547
+ # @!attribute [rw] page_size
548
+ # @return [::Integer]
549
+ # Optional. Optional limit on the number of
550
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstances} to
551
+ # include in the response. Further
552
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstances} can
553
+ # subsequently be
554
+ # obtained by including the
555
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstancesResponse#next_page_token ListSingleTenantHsmInstancesResponse.next_page_token}
556
+ # in a subsequent request. If unspecified, the server will pick an
557
+ # appropriate default.
558
+ # @!attribute [rw] page_token
559
+ # @return [::String]
560
+ # Optional. Optional pagination token, returned earlier via
561
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstancesResponse#next_page_token ListSingleTenantHsmInstancesResponse.next_page_token}.
562
+ # @!attribute [rw] filter
563
+ # @return [::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
+ # @!attribute [rw] order_by
569
+ # @return [::String]
570
+ # Optional. Specify how the results should be sorted. If not specified, the
571
+ # results will be sorted in the default order. For more information, see
572
+ # [Sorting and filtering list
573
+ # results](https://cloud.google.com/kms/docs/sorting-and-filtering).
574
+ # @!attribute [rw] show_deleted
575
+ # @return [::Boolean]
576
+ # Optional. If set to true,
577
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#list_single_tenant_hsm_instances HsmManagement.ListSingleTenantHsmInstances}
578
+ # will also return
579
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstances} in
580
+ # DELETED state.
581
+ class ListSingleTenantHsmInstancesRequest
582
+ include ::Google::Protobuf::MessageExts
583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
584
+ end
585
+
586
+ # Response message for
587
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#list_single_tenant_hsm_instances HsmManagement.ListSingleTenantHsmInstances}.
588
+ # @!attribute [rw] single_tenant_hsm_instances
589
+ # @return [::Array<::Google::Cloud::Kms::V1::SingleTenantHsmInstance>]
590
+ # The list of
591
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstances}.
592
+ # @!attribute [rw] next_page_token
593
+ # @return [::String]
594
+ # A token to retrieve next page of results. Pass this value in
595
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstancesRequest#page_token ListSingleTenantHsmInstancesRequest.page_token}
596
+ # to retrieve the next page of results.
597
+ # @!attribute [rw] total_size
598
+ # @return [::Integer]
599
+ # The total number of
600
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstances}
601
+ # that matched the query.
602
+ #
603
+ # This field is not populated if
604
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstancesRequest#filter ListSingleTenantHsmInstancesRequest.filter}
605
+ # is applied.
606
+ class ListSingleTenantHsmInstancesResponse
607
+ include ::Google::Protobuf::MessageExts
608
+ extend ::Google::Protobuf::MessageExts::ClassMethods
609
+ end
610
+
611
+ # Request message for
612
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#get_single_tenant_hsm_instance HsmManagement.GetSingleTenantHsmInstance}.
613
+ # @!attribute [rw] name
614
+ # @return [::String]
615
+ # Required. The {::Google::Cloud::Kms::V1::SingleTenantHsmInstance#name name} of
616
+ # the {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
617
+ # to get.
618
+ class GetSingleTenantHsmInstanceRequest
619
+ include ::Google::Protobuf::MessageExts
620
+ extend ::Google::Protobuf::MessageExts::ClassMethods
621
+ end
622
+
623
+ # Request message for
624
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#create_single_tenant_hsm_instance HsmManagement.CreateSingleTenantHsmInstance}.
625
+ # @!attribute [rw] parent
626
+ # @return [::String]
627
+ # Required. The resource name of the location associated with the
628
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}, in
629
+ # the format `projects/*/locations/*`.
630
+ # @!attribute [rw] single_tenant_hsm_instance_id
631
+ # @return [::String]
632
+ # Optional. It must be unique within a location and match the regular
633
+ # expression `[a-zA-Z0-9_-]{1,63}`.
634
+ # @!attribute [rw] single_tenant_hsm_instance
635
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstance]
636
+ # Required. An
637
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance} with
638
+ # initial field values.
639
+ class CreateSingleTenantHsmInstanceRequest
640
+ include ::Google::Protobuf::MessageExts
641
+ extend ::Google::Protobuf::MessageExts::ClassMethods
642
+ end
643
+
644
+ # Metadata message for
645
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#create_single_tenant_hsm_instance CreateSingleTenantHsmInstance}
646
+ # long-running operation response.
647
+ class CreateSingleTenantHsmInstanceMetadata
648
+ include ::Google::Protobuf::MessageExts
649
+ extend ::Google::Protobuf::MessageExts::ClassMethods
650
+ end
651
+
652
+ # Request message for
653
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#create_single_tenant_hsm_instance_proposal HsmManagement.CreateSingleTenantHsmInstanceProposal}.
654
+ # @!attribute [rw] parent
655
+ # @return [::String]
656
+ # Required. The {::Google::Cloud::Kms::V1::SingleTenantHsmInstance#name name} of
657
+ # the {::Google::Cloud::Kms::V1::SingleTenantHsmInstance SingleTenantHsmInstance}
658
+ # associated with the
659
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}.
660
+ # @!attribute [rw] single_tenant_hsm_instance_proposal_id
661
+ # @return [::String]
662
+ # Optional. It must be unique within a location and match the regular
663
+ # expression `[a-zA-Z0-9_-]{1,63}`.
664
+ # @!attribute [rw] single_tenant_hsm_instance_proposal
665
+ # @return [::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal]
666
+ # Required. The
667
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
668
+ # to create.
669
+ class CreateSingleTenantHsmInstanceProposalRequest
670
+ include ::Google::Protobuf::MessageExts
671
+ extend ::Google::Protobuf::MessageExts::ClassMethods
672
+ end
673
+
674
+ # Metadata message for
675
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#create_single_tenant_hsm_instance_proposal CreateSingleTenantHsmInstanceProposal}
676
+ # long-running operation response.
677
+ class CreateSingleTenantHsmInstanceProposalMetadata
678
+ include ::Google::Protobuf::MessageExts
679
+ extend ::Google::Protobuf::MessageExts::ClassMethods
680
+ end
681
+
682
+ # Request message for
683
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#get_single_tenant_hsm_instance_proposal HsmManagement.GetSingleTenantHsmInstanceProposal}.
684
+ # @!attribute [rw] name
685
+ # @return [::String]
686
+ # Required. The
687
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal#name name} of the
688
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
689
+ # to get.
690
+ class GetSingleTenantHsmInstanceProposalRequest
691
+ include ::Google::Protobuf::MessageExts
692
+ extend ::Google::Protobuf::MessageExts::ClassMethods
693
+ end
694
+
695
+ # Request message for
696
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#approve_single_tenant_hsm_instance_proposal HsmManagement.ApproveSingleTenantHsmInstanceProposal}.
697
+ # @!attribute [rw] name
698
+ # @return [::String]
699
+ # Required. The
700
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal#name name} of the
701
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
702
+ # to approve.
703
+ # @!attribute [rw] quorum_reply
704
+ # @return [::Google::Cloud::Kms::V1::ApproveSingleTenantHsmInstanceProposalRequest::QuorumReply]
705
+ # Required. The reply to
706
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::QuorumParameters QuorumParameters}
707
+ # for approving the proposal.
708
+ #
709
+ # Note: The following fields are mutually exclusive: `quorum_reply`, `required_action_quorum_reply`. If a field in that set is populated, all other fields in the set will automatically be cleared.
710
+ # @!attribute [rw] required_action_quorum_reply
711
+ # @return [::Google::Cloud::Kms::V1::ApproveSingleTenantHsmInstanceProposalRequest::RequiredActionQuorumReply]
712
+ # Required. The reply to
713
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RequiredActionQuorumParameters RequiredActionQuorumParameters}
714
+ # for approving the proposal.
715
+ #
716
+ # Note: The following fields are mutually exclusive: `required_action_quorum_reply`, `quorum_reply`. If a field in that set is populated, all other fields in the set will automatically be cleared.
717
+ class ApproveSingleTenantHsmInstanceProposalRequest
718
+ include ::Google::Protobuf::MessageExts
719
+ extend ::Google::Protobuf::MessageExts::ClassMethods
720
+
721
+ # The reply to
722
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::QuorumParameters QuorumParameters}
723
+ # for approving the proposal.
724
+ # @!attribute [rw] challenge_replies
725
+ # @return [::Array<::Google::Cloud::Kms::V1::ChallengeReply>]
726
+ # Required. The challenge replies to approve the proposal. Challenge
727
+ # replies can be sent across multiple requests. The proposal will be
728
+ # approved when
729
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::QuorumParameters#required_approver_count required_approver_count}
730
+ # challenge replies are provided.
731
+ class QuorumReply
732
+ include ::Google::Protobuf::MessageExts
733
+ extend ::Google::Protobuf::MessageExts::ClassMethods
734
+ end
735
+
736
+ # The reply to
737
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RequiredActionQuorumParameters RequiredActionQuorumParameters}
738
+ # for approving the proposal.
739
+ # @!attribute [rw] required_challenge_replies
740
+ # @return [::Array<::Google::Cloud::Kms::V1::ChallengeReply>]
741
+ # Required. All required challenges must be signed for the proposal to be
742
+ # approved. These can be sent across multiple requests.
743
+ # @!attribute [rw] quorum_challenge_replies
744
+ # @return [::Array<::Google::Cloud::Kms::V1::ChallengeReply>]
745
+ # Required. Quorum members' signed challenge replies. These can be provided
746
+ # across multiple requests. The proposal will be approved when
747
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal::RequiredActionQuorumParameters#required_approver_count required_approver_count}
748
+ # quorum_challenge_replies are provided and when all
749
+ # required_challenge_replies are provided.
750
+ class RequiredActionQuorumReply
751
+ include ::Google::Protobuf::MessageExts
752
+ extend ::Google::Protobuf::MessageExts::ClassMethods
753
+ end
754
+ end
755
+
756
+ # Response message for
757
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#approve_single_tenant_hsm_instance_proposal HsmManagement.ApproveSingleTenantHsmInstanceProposal}.
758
+ class ApproveSingleTenantHsmInstanceProposalResponse
759
+ include ::Google::Protobuf::MessageExts
760
+ extend ::Google::Protobuf::MessageExts::ClassMethods
761
+ end
762
+
763
+ # Request message for
764
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#execute_single_tenant_hsm_instance_proposal HsmManagement.ExecuteSingleTenantHsmInstanceProposal}.
765
+ # @!attribute [rw] name
766
+ # @return [::String]
767
+ # Required. The
768
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal#name name} of the
769
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
770
+ # to execute.
771
+ class ExecuteSingleTenantHsmInstanceProposalRequest
772
+ include ::Google::Protobuf::MessageExts
773
+ extend ::Google::Protobuf::MessageExts::ClassMethods
774
+ end
775
+
776
+ # Response message for
777
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#execute_single_tenant_hsm_instance_proposal HsmManagement.ExecuteSingleTenantHsmInstanceProposal}.
778
+ class ExecuteSingleTenantHsmInstanceProposalResponse
779
+ include ::Google::Protobuf::MessageExts
780
+ extend ::Google::Protobuf::MessageExts::ClassMethods
781
+ end
782
+
783
+ # Metadata message for
784
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#execute_single_tenant_hsm_instance_proposal ExecuteSingleTenantHsmInstanceProposal}
785
+ # long-running operation response.
786
+ class ExecuteSingleTenantHsmInstanceProposalMetadata
787
+ include ::Google::Protobuf::MessageExts
788
+ extend ::Google::Protobuf::MessageExts::ClassMethods
789
+ end
790
+
791
+ # Request message for
792
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#list_single_tenant_hsm_instance_proposals HsmManagement.ListSingleTenantHsmInstanceProposals}.
793
+ # @!attribute [rw] parent
794
+ # @return [::String]
795
+ # Required. The resource name of the single tenant HSM instance associated
796
+ # with the
797
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}
798
+ # to list, in the format `projects/*/locations/*/singleTenantHsmInstances/*`.
799
+ # @!attribute [rw] page_size
800
+ # @return [::Integer]
801
+ # Optional. Optional limit on the number of
802
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}
803
+ # to include in the response. Further
804
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}
805
+ # can subsequently be obtained by including the
806
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstanceProposalsResponse#next_page_token ListSingleTenantHsmInstanceProposalsResponse.next_page_token}
807
+ # in a subsequent request. If unspecified, the server will pick an
808
+ # appropriate default.
809
+ # @!attribute [rw] page_token
810
+ # @return [::String]
811
+ # Optional. Optional pagination token, returned earlier via
812
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstanceProposalsResponse#next_page_token ListSingleTenantHsmInstanceProposalsResponse.next_page_token}.
813
+ # @!attribute [rw] filter
814
+ # @return [::String]
815
+ # Optional. Only include resources that match the filter in the response. For
816
+ # more information, see
817
+ # [Sorting and filtering list
818
+ # results](https://cloud.google.com/kms/docs/sorting-and-filtering).
819
+ # @!attribute [rw] order_by
820
+ # @return [::String]
821
+ # Optional. Specify how the results should be sorted. If not specified, the
822
+ # results will be sorted in the default order. For more information, see
823
+ # [Sorting and filtering list
824
+ # results](https://cloud.google.com/kms/docs/sorting-and-filtering).
825
+ # @!attribute [rw] show_deleted
826
+ # @return [::Boolean]
827
+ # Optional. If set to true,
828
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#list_single_tenant_hsm_instance_proposals HsmManagement.ListSingleTenantHsmInstanceProposals}
829
+ # will also return
830
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}
831
+ # in DELETED state.
832
+ class ListSingleTenantHsmInstanceProposalsRequest
833
+ include ::Google::Protobuf::MessageExts
834
+ extend ::Google::Protobuf::MessageExts::ClassMethods
835
+ end
836
+
837
+ # Response message for
838
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#list_single_tenant_hsm_instance_proposals HsmManagement.ListSingleTenantHsmInstanceProposals}.
839
+ # @!attribute [rw] single_tenant_hsm_instance_proposals
840
+ # @return [::Array<::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal>]
841
+ # The list of
842
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}.
843
+ # @!attribute [rw] next_page_token
844
+ # @return [::String]
845
+ # A token to retrieve next page of results. Pass this value in
846
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstanceProposalsRequest#page_token ListSingleTenantHsmInstanceProposalsRequest.page_token}
847
+ # to retrieve the next page of results.
848
+ # @!attribute [rw] total_size
849
+ # @return [::Integer]
850
+ # The total number of
851
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposals}
852
+ # that matched the query.
853
+ #
854
+ # This field is not populated if
855
+ # {::Google::Cloud::Kms::V1::ListSingleTenantHsmInstanceProposalsRequest#filter ListSingleTenantHsmInstanceProposalsRequest.filter}
856
+ # is applied.
857
+ class ListSingleTenantHsmInstanceProposalsResponse
858
+ include ::Google::Protobuf::MessageExts
859
+ extend ::Google::Protobuf::MessageExts::ClassMethods
860
+ end
861
+
862
+ # Request message for
863
+ # {::Google::Cloud::Kms::V1::HsmManagement::Client#delete_single_tenant_hsm_instance_proposal HsmManagement.DeleteSingleTenantHsmInstanceProposal}.
864
+ # @!attribute [rw] name
865
+ # @return [::String]
866
+ # Required. The
867
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal#name name} of the
868
+ # {::Google::Cloud::Kms::V1::SingleTenantHsmInstanceProposal SingleTenantHsmInstanceProposal}
869
+ # to delete.
870
+ class DeleteSingleTenantHsmInstanceProposalRequest
871
+ include ::Google::Protobuf::MessageExts
872
+ extend ::Google::Protobuf::MessageExts::ClassMethods
873
+ end
874
+ end
875
+ end
876
+ end
877
+ end