google-apis-cloudkms_v1 0.65.0 → 0.67.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.
|
@@ -22,6 +22,66 @@ module Google
|
|
|
22
22
|
module Apis
|
|
23
23
|
module CloudkmsV1
|
|
24
24
|
|
|
25
|
+
# Add a quorum member to the SingleTenantHsmInstance. This will increase the
|
|
26
|
+
# total_approver_count by 1. The SingleTenantHsmInstance must be in the ACTIVE
|
|
27
|
+
# state to perform this operation.
|
|
28
|
+
class AddQuorumMember
|
|
29
|
+
include Google::Apis::Core::Hashable
|
|
30
|
+
|
|
31
|
+
# Required. The public key associated with the 2FA key for the new quorum member
|
|
32
|
+
# to add. Public keys must be associated with RSA 2048 keys.
|
|
33
|
+
# Corresponds to the JSON property `twoFactorPublicKeyPem`
|
|
34
|
+
# @return [String]
|
|
35
|
+
attr_accessor :two_factor_public_key_pem
|
|
36
|
+
|
|
37
|
+
def initialize(**args)
|
|
38
|
+
update!(**args)
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
# Update properties of this object
|
|
42
|
+
def update!(**args)
|
|
43
|
+
@two_factor_public_key_pem = args[:two_factor_public_key_pem] if args.key?(:two_factor_public_key_pem)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# Request message for HsmManagement.ApproveSingleTenantHsmInstanceProposal.
|
|
48
|
+
class ApproveSingleTenantHsmInstanceProposalRequest
|
|
49
|
+
include Google::Apis::Core::Hashable
|
|
50
|
+
|
|
51
|
+
# The reply to QuorumParameters for approving the proposal.
|
|
52
|
+
# Corresponds to the JSON property `quorumReply`
|
|
53
|
+
# @return [Google::Apis::CloudkmsV1::QuorumReply]
|
|
54
|
+
attr_accessor :quorum_reply
|
|
55
|
+
|
|
56
|
+
# The reply to RequiredActionQuorumParameters for approving the proposal.
|
|
57
|
+
# Corresponds to the JSON property `requiredActionQuorumReply`
|
|
58
|
+
# @return [Google::Apis::CloudkmsV1::RequiredActionQuorumReply]
|
|
59
|
+
attr_accessor :required_action_quorum_reply
|
|
60
|
+
|
|
61
|
+
def initialize(**args)
|
|
62
|
+
update!(**args)
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
# Update properties of this object
|
|
66
|
+
def update!(**args)
|
|
67
|
+
@quorum_reply = args[:quorum_reply] if args.key?(:quorum_reply)
|
|
68
|
+
@required_action_quorum_reply = args[:required_action_quorum_reply] if args.key?(:required_action_quorum_reply)
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
# Response message for HsmManagement.ApproveSingleTenantHsmInstanceProposal.
|
|
73
|
+
class ApproveSingleTenantHsmInstanceProposalResponse
|
|
74
|
+
include Google::Apis::Core::Hashable
|
|
75
|
+
|
|
76
|
+
def initialize(**args)
|
|
77
|
+
update!(**args)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
# Update properties of this object
|
|
81
|
+
def update!(**args)
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
|
|
25
85
|
# Request message for KeyManagementService.AsymmetricDecrypt.
|
|
26
86
|
class AsymmetricDecryptRequest
|
|
27
87
|
include Google::Apis::Core::Hashable
|
|
@@ -577,6 +637,61 @@ module Google
|
|
|
577
637
|
end
|
|
578
638
|
end
|
|
579
639
|
|
|
640
|
+
# A challenge to be signed by a 2FA key.
|
|
641
|
+
class Challenge
|
|
642
|
+
include Google::Apis::Core::Hashable
|
|
643
|
+
|
|
644
|
+
# Output only. The challenge to be signed by the 2FA key indicated by the public
|
|
645
|
+
# key.
|
|
646
|
+
# Corresponds to the JSON property `challenge`
|
|
647
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
648
|
+
# @return [String]
|
|
649
|
+
attr_accessor :challenge
|
|
650
|
+
|
|
651
|
+
# Output only. The public key associated with the 2FA key that should sign the
|
|
652
|
+
# challenge.
|
|
653
|
+
# Corresponds to the JSON property `publicKeyPem`
|
|
654
|
+
# @return [String]
|
|
655
|
+
attr_accessor :public_key_pem
|
|
656
|
+
|
|
657
|
+
def initialize(**args)
|
|
658
|
+
update!(**args)
|
|
659
|
+
end
|
|
660
|
+
|
|
661
|
+
# Update properties of this object
|
|
662
|
+
def update!(**args)
|
|
663
|
+
@challenge = args[:challenge] if args.key?(:challenge)
|
|
664
|
+
@public_key_pem = args[:public_key_pem] if args.key?(:public_key_pem)
|
|
665
|
+
end
|
|
666
|
+
end
|
|
667
|
+
|
|
668
|
+
# A reply to a challenge signed by a 2FA key.
|
|
669
|
+
class ChallengeReply
|
|
670
|
+
include Google::Apis::Core::Hashable
|
|
671
|
+
|
|
672
|
+
# Required. The public key associated with the 2FA key.
|
|
673
|
+
# Corresponds to the JSON property `publicKeyPem`
|
|
674
|
+
# @return [String]
|
|
675
|
+
attr_accessor :public_key_pem
|
|
676
|
+
|
|
677
|
+
# Required. The signed challenge associated with the 2FA key. The signature must
|
|
678
|
+
# be RSASSA-PKCS1 v1.5 with a SHA256 digest.
|
|
679
|
+
# Corresponds to the JSON property `signedChallenge`
|
|
680
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
681
|
+
# @return [String]
|
|
682
|
+
attr_accessor :signed_challenge
|
|
683
|
+
|
|
684
|
+
def initialize(**args)
|
|
685
|
+
update!(**args)
|
|
686
|
+
end
|
|
687
|
+
|
|
688
|
+
# Update properties of this object
|
|
689
|
+
def update!(**args)
|
|
690
|
+
@public_key_pem = args[:public_key_pem] if args.key?(:public_key_pem)
|
|
691
|
+
@signed_challenge = args[:signed_challenge] if args.key?(:signed_challenge)
|
|
692
|
+
end
|
|
693
|
+
end
|
|
694
|
+
|
|
580
695
|
# Data with integrity verification field.
|
|
581
696
|
class ChecksummedData
|
|
582
697
|
include Google::Apis::Core::Hashable
|
|
@@ -1101,6 +1216,22 @@ module Google
|
|
|
1101
1216
|
end
|
|
1102
1217
|
end
|
|
1103
1218
|
|
|
1219
|
+
# Delete the SingleTenantHsmInstance. Deleting a SingleTenantHsmInstance will
|
|
1220
|
+
# make all CryptoKeys attached to the SingleTenantHsmInstance unusable. The
|
|
1221
|
+
# SingleTenantHsmInstance must not be in the DELETING or DELETED state to
|
|
1222
|
+
# perform this operation.
|
|
1223
|
+
class DeleteSingleTenantHsmInstance
|
|
1224
|
+
include Google::Apis::Core::Hashable
|
|
1225
|
+
|
|
1226
|
+
def initialize(**args)
|
|
1227
|
+
update!(**args)
|
|
1228
|
+
end
|
|
1229
|
+
|
|
1230
|
+
# Update properties of this object
|
|
1231
|
+
def update!(**args)
|
|
1232
|
+
end
|
|
1233
|
+
end
|
|
1234
|
+
|
|
1104
1235
|
# Request message for KeyManagementService.DestroyCryptoKeyVersion.
|
|
1105
1236
|
class DestroyCryptoKeyVersionRequest
|
|
1106
1237
|
include Google::Apis::Core::Hashable
|
|
@@ -1148,6 +1279,20 @@ module Google
|
|
|
1148
1279
|
end
|
|
1149
1280
|
end
|
|
1150
1281
|
|
|
1282
|
+
# Disable the SingleTenantHsmInstance. The SingleTenantHsmInstance must be in
|
|
1283
|
+
# the ACTIVE state to perform this operation.
|
|
1284
|
+
class DisableSingleTenantHsmInstance
|
|
1285
|
+
include Google::Apis::Core::Hashable
|
|
1286
|
+
|
|
1287
|
+
def initialize(**args)
|
|
1288
|
+
update!(**args)
|
|
1289
|
+
end
|
|
1290
|
+
|
|
1291
|
+
# Update properties of this object
|
|
1292
|
+
def update!(**args)
|
|
1293
|
+
end
|
|
1294
|
+
end
|
|
1295
|
+
|
|
1151
1296
|
# An EkmConfig is a singleton resource that represents configuration parameters
|
|
1152
1297
|
# that apply to all CryptoKeys and CryptoKeyVersions with a ProtectionLevel of
|
|
1153
1298
|
# EXTERNAL_VPC in a given project and location.
|
|
@@ -1234,6 +1379,36 @@ module Google
|
|
|
1234
1379
|
end
|
|
1235
1380
|
end
|
|
1236
1381
|
|
|
1382
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
|
1383
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
|
1384
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
|
1385
|
+
# protobuf.Empty) returns (google.protobuf.Empty); `
|
|
1386
|
+
class Empty
|
|
1387
|
+
include Google::Apis::Core::Hashable
|
|
1388
|
+
|
|
1389
|
+
def initialize(**args)
|
|
1390
|
+
update!(**args)
|
|
1391
|
+
end
|
|
1392
|
+
|
|
1393
|
+
# Update properties of this object
|
|
1394
|
+
def update!(**args)
|
|
1395
|
+
end
|
|
1396
|
+
end
|
|
1397
|
+
|
|
1398
|
+
# Enable the SingleTenantHsmInstance. The SingleTenantHsmInstance must be in the
|
|
1399
|
+
# DISABLED state to perform this operation.
|
|
1400
|
+
class EnableSingleTenantHsmInstance
|
|
1401
|
+
include Google::Apis::Core::Hashable
|
|
1402
|
+
|
|
1403
|
+
def initialize(**args)
|
|
1404
|
+
update!(**args)
|
|
1405
|
+
end
|
|
1406
|
+
|
|
1407
|
+
# Update properties of this object
|
|
1408
|
+
def update!(**args)
|
|
1409
|
+
end
|
|
1410
|
+
end
|
|
1411
|
+
|
|
1237
1412
|
# Request message for KeyManagementService.Encrypt.
|
|
1238
1413
|
class EncryptRequest
|
|
1239
1414
|
include Google::Apis::Core::Hashable
|
|
@@ -1377,6 +1552,19 @@ module Google
|
|
|
1377
1552
|
end
|
|
1378
1553
|
end
|
|
1379
1554
|
|
|
1555
|
+
# Request message for HsmManagement.ExecuteSingleTenantHsmInstanceProposal.
|
|
1556
|
+
class ExecuteSingleTenantHsmInstanceProposalRequest
|
|
1557
|
+
include Google::Apis::Core::Hashable
|
|
1558
|
+
|
|
1559
|
+
def initialize(**args)
|
|
1560
|
+
update!(**args)
|
|
1561
|
+
end
|
|
1562
|
+
|
|
1563
|
+
# Update properties of this object
|
|
1564
|
+
def update!(**args)
|
|
1565
|
+
end
|
|
1566
|
+
end
|
|
1567
|
+
|
|
1380
1568
|
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
|
1381
1569
|
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
|
1382
1570
|
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
|
@@ -2094,6 +2282,76 @@ module Google
|
|
|
2094
2282
|
end
|
|
2095
2283
|
end
|
|
2096
2284
|
|
|
2285
|
+
# Response message for HsmManagement.ListSingleTenantHsmInstanceProposals.
|
|
2286
|
+
class ListSingleTenantHsmInstanceProposalsResponse
|
|
2287
|
+
include Google::Apis::Core::Hashable
|
|
2288
|
+
|
|
2289
|
+
# A token to retrieve next page of results. Pass this value in
|
|
2290
|
+
# ListSingleTenantHsmInstanceProposalsRequest.page_token to retrieve the next
|
|
2291
|
+
# page of results.
|
|
2292
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
2293
|
+
# @return [String]
|
|
2294
|
+
attr_accessor :next_page_token
|
|
2295
|
+
|
|
2296
|
+
# The list of SingleTenantHsmInstanceProposals.
|
|
2297
|
+
# Corresponds to the JSON property `singleTenantHsmInstanceProposals`
|
|
2298
|
+
# @return [Array<Google::Apis::CloudkmsV1::SingleTenantHsmInstanceProposal>]
|
|
2299
|
+
attr_accessor :single_tenant_hsm_instance_proposals
|
|
2300
|
+
|
|
2301
|
+
# The total number of SingleTenantHsmInstanceProposals that matched the query.
|
|
2302
|
+
# This field is not populated if ListSingleTenantHsmInstanceProposalsRequest.
|
|
2303
|
+
# filter is applied.
|
|
2304
|
+
# Corresponds to the JSON property `totalSize`
|
|
2305
|
+
# @return [Fixnum]
|
|
2306
|
+
attr_accessor :total_size
|
|
2307
|
+
|
|
2308
|
+
def initialize(**args)
|
|
2309
|
+
update!(**args)
|
|
2310
|
+
end
|
|
2311
|
+
|
|
2312
|
+
# Update properties of this object
|
|
2313
|
+
def update!(**args)
|
|
2314
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
2315
|
+
@single_tenant_hsm_instance_proposals = args[:single_tenant_hsm_instance_proposals] if args.key?(:single_tenant_hsm_instance_proposals)
|
|
2316
|
+
@total_size = args[:total_size] if args.key?(:total_size)
|
|
2317
|
+
end
|
|
2318
|
+
end
|
|
2319
|
+
|
|
2320
|
+
# Response message for HsmManagement.ListSingleTenantHsmInstances.
|
|
2321
|
+
class ListSingleTenantHsmInstancesResponse
|
|
2322
|
+
include Google::Apis::Core::Hashable
|
|
2323
|
+
|
|
2324
|
+
# A token to retrieve next page of results. Pass this value in
|
|
2325
|
+
# ListSingleTenantHsmInstancesRequest.page_token to retrieve the next page of
|
|
2326
|
+
# results.
|
|
2327
|
+
# Corresponds to the JSON property `nextPageToken`
|
|
2328
|
+
# @return [String]
|
|
2329
|
+
attr_accessor :next_page_token
|
|
2330
|
+
|
|
2331
|
+
# The list of SingleTenantHsmInstances.
|
|
2332
|
+
# Corresponds to the JSON property `singleTenantHsmInstances`
|
|
2333
|
+
# @return [Array<Google::Apis::CloudkmsV1::SingleTenantHsmInstance>]
|
|
2334
|
+
attr_accessor :single_tenant_hsm_instances
|
|
2335
|
+
|
|
2336
|
+
# The total number of SingleTenantHsmInstances that matched the query. This
|
|
2337
|
+
# field is not populated if ListSingleTenantHsmInstancesRequest.filter is
|
|
2338
|
+
# applied.
|
|
2339
|
+
# Corresponds to the JSON property `totalSize`
|
|
2340
|
+
# @return [Fixnum]
|
|
2341
|
+
attr_accessor :total_size
|
|
2342
|
+
|
|
2343
|
+
def initialize(**args)
|
|
2344
|
+
update!(**args)
|
|
2345
|
+
end
|
|
2346
|
+
|
|
2347
|
+
# Update properties of this object
|
|
2348
|
+
def update!(**args)
|
|
2349
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
2350
|
+
@single_tenant_hsm_instances = args[:single_tenant_hsm_instances] if args.key?(:single_tenant_hsm_instances)
|
|
2351
|
+
@total_size = args[:total_size] if args.key?(:total_size)
|
|
2352
|
+
end
|
|
2353
|
+
end
|
|
2354
|
+
|
|
2097
2355
|
# A resource that represents a Google Cloud location.
|
|
2098
2356
|
class Location
|
|
2099
2357
|
include Google::Apis::Core::Hashable
|
|
@@ -2630,6 +2888,96 @@ module Google
|
|
|
2630
2888
|
end
|
|
2631
2889
|
end
|
|
2632
2890
|
|
|
2891
|
+
# Configuration for M of N quorum auth.
|
|
2892
|
+
class QuorumAuth
|
|
2893
|
+
include Google::Apis::Core::Hashable
|
|
2894
|
+
|
|
2895
|
+
# Output only. The required numbers of approvers. The M value used for M of N
|
|
2896
|
+
# quorum auth. Must be greater than or equal to 2 and less than or equal to
|
|
2897
|
+
# total_approver_count - 1.
|
|
2898
|
+
# Corresponds to the JSON property `requiredApproverCount`
|
|
2899
|
+
# @return [Fixnum]
|
|
2900
|
+
attr_accessor :required_approver_count
|
|
2901
|
+
|
|
2902
|
+
# Required. The total number of approvers. This is the N value used for M of N
|
|
2903
|
+
# quorum auth. Must be greater than or equal to 3 and less than or equal to 16.
|
|
2904
|
+
# Corresponds to the JSON property `totalApproverCount`
|
|
2905
|
+
# @return [Fixnum]
|
|
2906
|
+
attr_accessor :total_approver_count
|
|
2907
|
+
|
|
2908
|
+
# Output only. The public keys associated with the 2FA keys for M of N quorum
|
|
2909
|
+
# auth.
|
|
2910
|
+
# Corresponds to the JSON property `twoFactorPublicKeyPems`
|
|
2911
|
+
# @return [Array<String>]
|
|
2912
|
+
attr_accessor :two_factor_public_key_pems
|
|
2913
|
+
|
|
2914
|
+
def initialize(**args)
|
|
2915
|
+
update!(**args)
|
|
2916
|
+
end
|
|
2917
|
+
|
|
2918
|
+
# Update properties of this object
|
|
2919
|
+
def update!(**args)
|
|
2920
|
+
@required_approver_count = args[:required_approver_count] if args.key?(:required_approver_count)
|
|
2921
|
+
@total_approver_count = args[:total_approver_count] if args.key?(:total_approver_count)
|
|
2922
|
+
@two_factor_public_key_pems = args[:two_factor_public_key_pems] if args.key?(:two_factor_public_key_pems)
|
|
2923
|
+
end
|
|
2924
|
+
end
|
|
2925
|
+
|
|
2926
|
+
# Parameters of quorum approval for the SingleTenantHsmInstanceProposal.
|
|
2927
|
+
class QuorumParameters
|
|
2928
|
+
include Google::Apis::Core::Hashable
|
|
2929
|
+
|
|
2930
|
+
# Output only. The public keys associated with the 2FA keys that have already
|
|
2931
|
+
# approved the SingleTenantHsmInstanceProposal by signing the challenge.
|
|
2932
|
+
# Corresponds to the JSON property `approvedTwoFactorPublicKeyPems`
|
|
2933
|
+
# @return [Array<String>]
|
|
2934
|
+
attr_accessor :approved_two_factor_public_key_pems
|
|
2935
|
+
|
|
2936
|
+
# Output only. The challenges to be signed by 2FA keys for quorum auth. M of N
|
|
2937
|
+
# of these challenges are required to be signed to approve the operation.
|
|
2938
|
+
# Corresponds to the JSON property `challenges`
|
|
2939
|
+
# @return [Array<Google::Apis::CloudkmsV1::Challenge>]
|
|
2940
|
+
attr_accessor :challenges
|
|
2941
|
+
|
|
2942
|
+
# Output only. The required numbers of approvers. This is the M value used for M
|
|
2943
|
+
# of N quorum auth. It is less than the number of public keys.
|
|
2944
|
+
# Corresponds to the JSON property `requiredApproverCount`
|
|
2945
|
+
# @return [Fixnum]
|
|
2946
|
+
attr_accessor :required_approver_count
|
|
2947
|
+
|
|
2948
|
+
def initialize(**args)
|
|
2949
|
+
update!(**args)
|
|
2950
|
+
end
|
|
2951
|
+
|
|
2952
|
+
# Update properties of this object
|
|
2953
|
+
def update!(**args)
|
|
2954
|
+
@approved_two_factor_public_key_pems = args[:approved_two_factor_public_key_pems] if args.key?(:approved_two_factor_public_key_pems)
|
|
2955
|
+
@challenges = args[:challenges] if args.key?(:challenges)
|
|
2956
|
+
@required_approver_count = args[:required_approver_count] if args.key?(:required_approver_count)
|
|
2957
|
+
end
|
|
2958
|
+
end
|
|
2959
|
+
|
|
2960
|
+
# The reply to QuorumParameters for approving the proposal.
|
|
2961
|
+
class QuorumReply
|
|
2962
|
+
include Google::Apis::Core::Hashable
|
|
2963
|
+
|
|
2964
|
+
# Required. The challenge replies to approve the proposal. Challenge replies can
|
|
2965
|
+
# be sent across multiple requests. The proposal will be approved when
|
|
2966
|
+
# required_approver_count challenge replies are provided.
|
|
2967
|
+
# Corresponds to the JSON property `challengeReplies`
|
|
2968
|
+
# @return [Array<Google::Apis::CloudkmsV1::ChallengeReply>]
|
|
2969
|
+
attr_accessor :challenge_replies
|
|
2970
|
+
|
|
2971
|
+
def initialize(**args)
|
|
2972
|
+
update!(**args)
|
|
2973
|
+
end
|
|
2974
|
+
|
|
2975
|
+
# Update properties of this object
|
|
2976
|
+
def update!(**args)
|
|
2977
|
+
@challenge_replies = args[:challenge_replies] if args.key?(:challenge_replies)
|
|
2978
|
+
end
|
|
2979
|
+
end
|
|
2980
|
+
|
|
2633
2981
|
# Request message for KeyManagementService.RawDecrypt.
|
|
2634
2982
|
class RawDecryptRequest
|
|
2635
2983
|
include Google::Apis::Core::Hashable
|
|
@@ -3018,6 +3366,145 @@ module Google
|
|
|
3018
3366
|
end
|
|
3019
3367
|
end
|
|
3020
3368
|
|
|
3369
|
+
# Refreshes the SingleTenantHsmInstance. This operation must be performed
|
|
3370
|
+
# periodically to keep the SingleTenantHsmInstance active. This operation must
|
|
3371
|
+
# be performed before unrefreshed_duration_until_disable has passed. The
|
|
3372
|
+
# SingleTenantHsmInstance must be in the ACTIVE state to perform this operation.
|
|
3373
|
+
class RefreshSingleTenantHsmInstance
|
|
3374
|
+
include Google::Apis::Core::Hashable
|
|
3375
|
+
|
|
3376
|
+
def initialize(**args)
|
|
3377
|
+
update!(**args)
|
|
3378
|
+
end
|
|
3379
|
+
|
|
3380
|
+
# Update properties of this object
|
|
3381
|
+
def update!(**args)
|
|
3382
|
+
end
|
|
3383
|
+
end
|
|
3384
|
+
|
|
3385
|
+
# Register 2FA keys for the SingleTenantHsmInstance. This operation requires all
|
|
3386
|
+
# Challenges to be signed by 2FA keys. The SingleTenantHsmInstance must be in
|
|
3387
|
+
# the PENDING_TWO_FACTOR_AUTH_REGISTRATION state to perform this operation.
|
|
3388
|
+
class RegisterTwoFactorAuthKeys
|
|
3389
|
+
include Google::Apis::Core::Hashable
|
|
3390
|
+
|
|
3391
|
+
# Required. The required numbers of approvers to set for the
|
|
3392
|
+
# SingleTenantHsmInstance. This is the M value used for M of N quorum auth. Must
|
|
3393
|
+
# be greater than or equal to 2 and less than or equal to total_approver_count -
|
|
3394
|
+
# 1.
|
|
3395
|
+
# Corresponds to the JSON property `requiredApproverCount`
|
|
3396
|
+
# @return [Fixnum]
|
|
3397
|
+
attr_accessor :required_approver_count
|
|
3398
|
+
|
|
3399
|
+
# Required. The public keys associated with the 2FA keys for M of N quorum auth.
|
|
3400
|
+
# Public keys must be associated with RSA 2048 keys.
|
|
3401
|
+
# Corresponds to the JSON property `twoFactorPublicKeyPems`
|
|
3402
|
+
# @return [Array<String>]
|
|
3403
|
+
attr_accessor :two_factor_public_key_pems
|
|
3404
|
+
|
|
3405
|
+
def initialize(**args)
|
|
3406
|
+
update!(**args)
|
|
3407
|
+
end
|
|
3408
|
+
|
|
3409
|
+
# Update properties of this object
|
|
3410
|
+
def update!(**args)
|
|
3411
|
+
@required_approver_count = args[:required_approver_count] if args.key?(:required_approver_count)
|
|
3412
|
+
@two_factor_public_key_pems = args[:two_factor_public_key_pems] if args.key?(:two_factor_public_key_pems)
|
|
3413
|
+
end
|
|
3414
|
+
end
|
|
3415
|
+
|
|
3416
|
+
# Remove a quorum member from the SingleTenantHsmInstance. This will reduce
|
|
3417
|
+
# total_approver_count by 1. The SingleTenantHsmInstance must be in the ACTIVE
|
|
3418
|
+
# state to perform this operation.
|
|
3419
|
+
class RemoveQuorumMember
|
|
3420
|
+
include Google::Apis::Core::Hashable
|
|
3421
|
+
|
|
3422
|
+
# Required. The public key associated with the 2FA key for the quorum member to
|
|
3423
|
+
# remove. Public keys must be associated with RSA 2048 keys.
|
|
3424
|
+
# Corresponds to the JSON property `twoFactorPublicKeyPem`
|
|
3425
|
+
# @return [String]
|
|
3426
|
+
attr_accessor :two_factor_public_key_pem
|
|
3427
|
+
|
|
3428
|
+
def initialize(**args)
|
|
3429
|
+
update!(**args)
|
|
3430
|
+
end
|
|
3431
|
+
|
|
3432
|
+
# Update properties of this object
|
|
3433
|
+
def update!(**args)
|
|
3434
|
+
@two_factor_public_key_pem = args[:two_factor_public_key_pem] if args.key?(:two_factor_public_key_pem)
|
|
3435
|
+
end
|
|
3436
|
+
end
|
|
3437
|
+
|
|
3438
|
+
# Parameters for an approval that has both required challenges and a quorum.
|
|
3439
|
+
class RequiredActionQuorumParameters
|
|
3440
|
+
include Google::Apis::Core::Hashable
|
|
3441
|
+
|
|
3442
|
+
# Output only. The public keys associated with the 2FA keys that have already
|
|
3443
|
+
# approved the SingleTenantHsmInstanceProposal by signing the challenge.
|
|
3444
|
+
# Corresponds to the JSON property `approvedTwoFactorPublicKeyPems`
|
|
3445
|
+
# @return [Array<String>]
|
|
3446
|
+
attr_accessor :approved_two_factor_public_key_pems
|
|
3447
|
+
|
|
3448
|
+
# Output only. The challenges to be signed by 2FA keys for quorum auth. M of N
|
|
3449
|
+
# of these challenges are required to be signed to approve the operation.
|
|
3450
|
+
# Corresponds to the JSON property `quorumChallenges`
|
|
3451
|
+
# @return [Array<Google::Apis::CloudkmsV1::Challenge>]
|
|
3452
|
+
attr_accessor :quorum_challenges
|
|
3453
|
+
|
|
3454
|
+
# Output only. The required number of quorum approvers. This is the M value used
|
|
3455
|
+
# for M of N quorum auth. It is less than the number of public keys.
|
|
3456
|
+
# Corresponds to the JSON property `requiredApproverCount`
|
|
3457
|
+
# @return [Fixnum]
|
|
3458
|
+
attr_accessor :required_approver_count
|
|
3459
|
+
|
|
3460
|
+
# Output only. A list of specific challenges that must be signed. For some
|
|
3461
|
+
# operations, this will contain a single challenge.
|
|
3462
|
+
# Corresponds to the JSON property `requiredChallenges`
|
|
3463
|
+
# @return [Array<Google::Apis::CloudkmsV1::Challenge>]
|
|
3464
|
+
attr_accessor :required_challenges
|
|
3465
|
+
|
|
3466
|
+
def initialize(**args)
|
|
3467
|
+
update!(**args)
|
|
3468
|
+
end
|
|
3469
|
+
|
|
3470
|
+
# Update properties of this object
|
|
3471
|
+
def update!(**args)
|
|
3472
|
+
@approved_two_factor_public_key_pems = args[:approved_two_factor_public_key_pems] if args.key?(:approved_two_factor_public_key_pems)
|
|
3473
|
+
@quorum_challenges = args[:quorum_challenges] if args.key?(:quorum_challenges)
|
|
3474
|
+
@required_approver_count = args[:required_approver_count] if args.key?(:required_approver_count)
|
|
3475
|
+
@required_challenges = args[:required_challenges] if args.key?(:required_challenges)
|
|
3476
|
+
end
|
|
3477
|
+
end
|
|
3478
|
+
|
|
3479
|
+
# The reply to RequiredActionQuorumParameters for approving the proposal.
|
|
3480
|
+
class RequiredActionQuorumReply
|
|
3481
|
+
include Google::Apis::Core::Hashable
|
|
3482
|
+
|
|
3483
|
+
# Required. Quorum members' signed challenge replies. These can be provided
|
|
3484
|
+
# across multiple requests. The proposal will be approved when
|
|
3485
|
+
# required_approver_count quorum_challenge_replies are provided and when all
|
|
3486
|
+
# required_challenge_replies are provided.
|
|
3487
|
+
# Corresponds to the JSON property `quorumChallengeReplies`
|
|
3488
|
+
# @return [Array<Google::Apis::CloudkmsV1::ChallengeReply>]
|
|
3489
|
+
attr_accessor :quorum_challenge_replies
|
|
3490
|
+
|
|
3491
|
+
# Required. All required challenges must be signed for the proposal to be
|
|
3492
|
+
# approved. These can be sent across multiple requests.
|
|
3493
|
+
# Corresponds to the JSON property `requiredChallengeReplies`
|
|
3494
|
+
# @return [Array<Google::Apis::CloudkmsV1::ChallengeReply>]
|
|
3495
|
+
attr_accessor :required_challenge_replies
|
|
3496
|
+
|
|
3497
|
+
def initialize(**args)
|
|
3498
|
+
update!(**args)
|
|
3499
|
+
end
|
|
3500
|
+
|
|
3501
|
+
# Update properties of this object
|
|
3502
|
+
def update!(**args)
|
|
3503
|
+
@quorum_challenge_replies = args[:quorum_challenge_replies] if args.key?(:quorum_challenge_replies)
|
|
3504
|
+
@required_challenge_replies = args[:required_challenge_replies] if args.key?(:required_challenge_replies)
|
|
3505
|
+
end
|
|
3506
|
+
end
|
|
3507
|
+
|
|
3021
3508
|
# Request message for KeyManagementService.RestoreCryptoKeyVersion.
|
|
3022
3509
|
class RestoreCryptoKeyVersionRequest
|
|
3023
3510
|
include Google::Apis::Core::Hashable
|
|
@@ -3203,6 +3690,208 @@ module Google
|
|
|
3203
3690
|
end
|
|
3204
3691
|
end
|
|
3205
3692
|
|
|
3693
|
+
# A SingleTenantHsmInstance represents a single-tenant HSM instance. It can be
|
|
3694
|
+
# used for creating CryptoKeys with a ProtectionLevel of HSM_SINGLE_TENANT, as
|
|
3695
|
+
# well as performing cryptographic operations using keys created within the
|
|
3696
|
+
# SingleTenantHsmInstance.
|
|
3697
|
+
class SingleTenantHsmInstance
|
|
3698
|
+
include Google::Apis::Core::Hashable
|
|
3699
|
+
|
|
3700
|
+
# Output only. The time at which the SingleTenantHsmInstance was created.
|
|
3701
|
+
# Corresponds to the JSON property `createTime`
|
|
3702
|
+
# @return [String]
|
|
3703
|
+
attr_accessor :create_time
|
|
3704
|
+
|
|
3705
|
+
# Output only. The time at which the SingleTenantHsmInstance was deleted.
|
|
3706
|
+
# Corresponds to the JSON property `deleteTime`
|
|
3707
|
+
# @return [String]
|
|
3708
|
+
attr_accessor :delete_time
|
|
3709
|
+
|
|
3710
|
+
# Output only. The time at which the instance will be automatically disabled if
|
|
3711
|
+
# not refreshed. This field is updated upon creation and after each successful
|
|
3712
|
+
# refresh operation and enable. A RefreshSingleTenantHsmInstance operation must
|
|
3713
|
+
# be made via a SingleTenantHsmInstanceProposal before this time otherwise the
|
|
3714
|
+
# SingleTenantHsmInstance will become disabled.
|
|
3715
|
+
# Corresponds to the JSON property `disableTime`
|
|
3716
|
+
# @return [String]
|
|
3717
|
+
attr_accessor :disable_time
|
|
3718
|
+
|
|
3719
|
+
# Identifier. The resource name for this SingleTenantHsmInstance in the format `
|
|
3720
|
+
# projects/*/locations/*/singleTenantHsmInstances/*`.
|
|
3721
|
+
# Corresponds to the JSON property `name`
|
|
3722
|
+
# @return [String]
|
|
3723
|
+
attr_accessor :name
|
|
3724
|
+
|
|
3725
|
+
# Configuration for M of N quorum auth.
|
|
3726
|
+
# Corresponds to the JSON property `quorumAuth`
|
|
3727
|
+
# @return [Google::Apis::CloudkmsV1::QuorumAuth]
|
|
3728
|
+
attr_accessor :quorum_auth
|
|
3729
|
+
|
|
3730
|
+
# Output only. The state of the SingleTenantHsmInstance.
|
|
3731
|
+
# Corresponds to the JSON property `state`
|
|
3732
|
+
# @return [String]
|
|
3733
|
+
attr_accessor :state
|
|
3734
|
+
|
|
3735
|
+
# Output only. The system-defined duration that an instance can remain
|
|
3736
|
+
# unrefreshed until it is automatically disabled. This will have a value of 120
|
|
3737
|
+
# days.
|
|
3738
|
+
# Corresponds to the JSON property `unrefreshedDurationUntilDisable`
|
|
3739
|
+
# @return [String]
|
|
3740
|
+
attr_accessor :unrefreshed_duration_until_disable
|
|
3741
|
+
|
|
3742
|
+
def initialize(**args)
|
|
3743
|
+
update!(**args)
|
|
3744
|
+
end
|
|
3745
|
+
|
|
3746
|
+
# Update properties of this object
|
|
3747
|
+
def update!(**args)
|
|
3748
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
|
3749
|
+
@delete_time = args[:delete_time] if args.key?(:delete_time)
|
|
3750
|
+
@disable_time = args[:disable_time] if args.key?(:disable_time)
|
|
3751
|
+
@name = args[:name] if args.key?(:name)
|
|
3752
|
+
@quorum_auth = args[:quorum_auth] if args.key?(:quorum_auth)
|
|
3753
|
+
@state = args[:state] if args.key?(:state)
|
|
3754
|
+
@unrefreshed_duration_until_disable = args[:unrefreshed_duration_until_disable] if args.key?(:unrefreshed_duration_until_disable)
|
|
3755
|
+
end
|
|
3756
|
+
end
|
|
3757
|
+
|
|
3758
|
+
# A SingleTenantHsmInstanceProposal represents a proposal to perform an
|
|
3759
|
+
# operation on a SingleTenantHsmInstance.
|
|
3760
|
+
class SingleTenantHsmInstanceProposal
|
|
3761
|
+
include Google::Apis::Core::Hashable
|
|
3762
|
+
|
|
3763
|
+
# Add a quorum member to the SingleTenantHsmInstance. This will increase the
|
|
3764
|
+
# total_approver_count by 1. The SingleTenantHsmInstance must be in the ACTIVE
|
|
3765
|
+
# state to perform this operation.
|
|
3766
|
+
# Corresponds to the JSON property `addQuorumMember`
|
|
3767
|
+
# @return [Google::Apis::CloudkmsV1::AddQuorumMember]
|
|
3768
|
+
attr_accessor :add_quorum_member
|
|
3769
|
+
|
|
3770
|
+
# Output only. The time at which the SingleTenantHsmInstanceProposal was created.
|
|
3771
|
+
# Corresponds to the JSON property `createTime`
|
|
3772
|
+
# @return [String]
|
|
3773
|
+
attr_accessor :create_time
|
|
3774
|
+
|
|
3775
|
+
# Delete the SingleTenantHsmInstance. Deleting a SingleTenantHsmInstance will
|
|
3776
|
+
# make all CryptoKeys attached to the SingleTenantHsmInstance unusable. The
|
|
3777
|
+
# SingleTenantHsmInstance must not be in the DELETING or DELETED state to
|
|
3778
|
+
# perform this operation.
|
|
3779
|
+
# Corresponds to the JSON property `deleteSingleTenantHsmInstance`
|
|
3780
|
+
# @return [Google::Apis::CloudkmsV1::DeleteSingleTenantHsmInstance]
|
|
3781
|
+
attr_accessor :delete_single_tenant_hsm_instance
|
|
3782
|
+
|
|
3783
|
+
# Output only. The time at which the SingleTenantHsmInstanceProposal was deleted.
|
|
3784
|
+
# Corresponds to the JSON property `deleteTime`
|
|
3785
|
+
# @return [String]
|
|
3786
|
+
attr_accessor :delete_time
|
|
3787
|
+
|
|
3788
|
+
# Disable the SingleTenantHsmInstance. The SingleTenantHsmInstance must be in
|
|
3789
|
+
# the ACTIVE state to perform this operation.
|
|
3790
|
+
# Corresponds to the JSON property `disableSingleTenantHsmInstance`
|
|
3791
|
+
# @return [Google::Apis::CloudkmsV1::DisableSingleTenantHsmInstance]
|
|
3792
|
+
attr_accessor :disable_single_tenant_hsm_instance
|
|
3793
|
+
|
|
3794
|
+
# Enable the SingleTenantHsmInstance. The SingleTenantHsmInstance must be in the
|
|
3795
|
+
# DISABLED state to perform this operation.
|
|
3796
|
+
# Corresponds to the JSON property `enableSingleTenantHsmInstance`
|
|
3797
|
+
# @return [Google::Apis::CloudkmsV1::EnableSingleTenantHsmInstance]
|
|
3798
|
+
attr_accessor :enable_single_tenant_hsm_instance
|
|
3799
|
+
|
|
3800
|
+
# The time at which the SingleTenantHsmInstanceProposal will expire if not
|
|
3801
|
+
# approved and executed.
|
|
3802
|
+
# Corresponds to the JSON property `expireTime`
|
|
3803
|
+
# @return [String]
|
|
3804
|
+
attr_accessor :expire_time
|
|
3805
|
+
|
|
3806
|
+
# Output only. The root cause of the most recent failure. Only present if state
|
|
3807
|
+
# is FAILED.
|
|
3808
|
+
# Corresponds to the JSON property `failureReason`
|
|
3809
|
+
# @return [String]
|
|
3810
|
+
attr_accessor :failure_reason
|
|
3811
|
+
|
|
3812
|
+
# Identifier. The resource name for this SingleTenantHsmInstance in the format `
|
|
3813
|
+
# projects/*/locations/*/singleTenantHsmInstances/*/proposals/*`.
|
|
3814
|
+
# Corresponds to the JSON property `name`
|
|
3815
|
+
# @return [String]
|
|
3816
|
+
attr_accessor :name
|
|
3817
|
+
|
|
3818
|
+
# Output only. The time at which the soft-deleted
|
|
3819
|
+
# SingleTenantHsmInstanceProposal will be permanently purged. This field is only
|
|
3820
|
+
# populated when the state is DELETED and will be set a time after expiration of
|
|
3821
|
+
# the proposal, i.e. >= expire_time or (create_time + ttl).
|
|
3822
|
+
# Corresponds to the JSON property `purgeTime`
|
|
3823
|
+
# @return [String]
|
|
3824
|
+
attr_accessor :purge_time
|
|
3825
|
+
|
|
3826
|
+
# Parameters of quorum approval for the SingleTenantHsmInstanceProposal.
|
|
3827
|
+
# Corresponds to the JSON property `quorumParameters`
|
|
3828
|
+
# @return [Google::Apis::CloudkmsV1::QuorumParameters]
|
|
3829
|
+
attr_accessor :quorum_parameters
|
|
3830
|
+
|
|
3831
|
+
# Refreshes the SingleTenantHsmInstance. This operation must be performed
|
|
3832
|
+
# periodically to keep the SingleTenantHsmInstance active. This operation must
|
|
3833
|
+
# be performed before unrefreshed_duration_until_disable has passed. The
|
|
3834
|
+
# SingleTenantHsmInstance must be in the ACTIVE state to perform this operation.
|
|
3835
|
+
# Corresponds to the JSON property `refreshSingleTenantHsmInstance`
|
|
3836
|
+
# @return [Google::Apis::CloudkmsV1::RefreshSingleTenantHsmInstance]
|
|
3837
|
+
attr_accessor :refresh_single_tenant_hsm_instance
|
|
3838
|
+
|
|
3839
|
+
# Register 2FA keys for the SingleTenantHsmInstance. This operation requires all
|
|
3840
|
+
# Challenges to be signed by 2FA keys. The SingleTenantHsmInstance must be in
|
|
3841
|
+
# the PENDING_TWO_FACTOR_AUTH_REGISTRATION state to perform this operation.
|
|
3842
|
+
# Corresponds to the JSON property `registerTwoFactorAuthKeys`
|
|
3843
|
+
# @return [Google::Apis::CloudkmsV1::RegisterTwoFactorAuthKeys]
|
|
3844
|
+
attr_accessor :register_two_factor_auth_keys
|
|
3845
|
+
|
|
3846
|
+
# Remove a quorum member from the SingleTenantHsmInstance. This will reduce
|
|
3847
|
+
# total_approver_count by 1. The SingleTenantHsmInstance must be in the ACTIVE
|
|
3848
|
+
# state to perform this operation.
|
|
3849
|
+
# Corresponds to the JSON property `removeQuorumMember`
|
|
3850
|
+
# @return [Google::Apis::CloudkmsV1::RemoveQuorumMember]
|
|
3851
|
+
attr_accessor :remove_quorum_member
|
|
3852
|
+
|
|
3853
|
+
# Parameters for an approval that has both required challenges and a quorum.
|
|
3854
|
+
# Corresponds to the JSON property `requiredActionQuorumParameters`
|
|
3855
|
+
# @return [Google::Apis::CloudkmsV1::RequiredActionQuorumParameters]
|
|
3856
|
+
attr_accessor :required_action_quorum_parameters
|
|
3857
|
+
|
|
3858
|
+
# Output only. The state of the SingleTenantHsmInstanceProposal.
|
|
3859
|
+
# Corresponds to the JSON property `state`
|
|
3860
|
+
# @return [String]
|
|
3861
|
+
attr_accessor :state
|
|
3862
|
+
|
|
3863
|
+
# Input only. The TTL for the SingleTenantHsmInstanceProposal. Proposals will
|
|
3864
|
+
# expire after this duration.
|
|
3865
|
+
# Corresponds to the JSON property `ttl`
|
|
3866
|
+
# @return [String]
|
|
3867
|
+
attr_accessor :ttl
|
|
3868
|
+
|
|
3869
|
+
def initialize(**args)
|
|
3870
|
+
update!(**args)
|
|
3871
|
+
end
|
|
3872
|
+
|
|
3873
|
+
# Update properties of this object
|
|
3874
|
+
def update!(**args)
|
|
3875
|
+
@add_quorum_member = args[:add_quorum_member] if args.key?(:add_quorum_member)
|
|
3876
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
|
3877
|
+
@delete_single_tenant_hsm_instance = args[:delete_single_tenant_hsm_instance] if args.key?(:delete_single_tenant_hsm_instance)
|
|
3878
|
+
@delete_time = args[:delete_time] if args.key?(:delete_time)
|
|
3879
|
+
@disable_single_tenant_hsm_instance = args[:disable_single_tenant_hsm_instance] if args.key?(:disable_single_tenant_hsm_instance)
|
|
3880
|
+
@enable_single_tenant_hsm_instance = args[:enable_single_tenant_hsm_instance] if args.key?(:enable_single_tenant_hsm_instance)
|
|
3881
|
+
@expire_time = args[:expire_time] if args.key?(:expire_time)
|
|
3882
|
+
@failure_reason = args[:failure_reason] if args.key?(:failure_reason)
|
|
3883
|
+
@name = args[:name] if args.key?(:name)
|
|
3884
|
+
@purge_time = args[:purge_time] if args.key?(:purge_time)
|
|
3885
|
+
@quorum_parameters = args[:quorum_parameters] if args.key?(:quorum_parameters)
|
|
3886
|
+
@refresh_single_tenant_hsm_instance = args[:refresh_single_tenant_hsm_instance] if args.key?(:refresh_single_tenant_hsm_instance)
|
|
3887
|
+
@register_two_factor_auth_keys = args[:register_two_factor_auth_keys] if args.key?(:register_two_factor_auth_keys)
|
|
3888
|
+
@remove_quorum_member = args[:remove_quorum_member] if args.key?(:remove_quorum_member)
|
|
3889
|
+
@required_action_quorum_parameters = args[:required_action_quorum_parameters] if args.key?(:required_action_quorum_parameters)
|
|
3890
|
+
@state = args[:state] if args.key?(:state)
|
|
3891
|
+
@ttl = args[:ttl] if args.key?(:ttl)
|
|
3892
|
+
end
|
|
3893
|
+
end
|
|
3894
|
+
|
|
3206
3895
|
# The `Status` type defines a logical error model that is suitable for different
|
|
3207
3896
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
|
3208
3897
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|