Class: Google::Apis::PrivatecaV1beta1::KeyVersionSpec

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/privateca_v1beta1/classes.rb,
lib/google/apis/privateca_v1beta1/representations.rb,
lib/google/apis/privateca_v1beta1/representations.rb

Overview

A Cloud KMS key configuration that a CertificateAuthority will use.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ KeyVersionSpec

Returns a new instance of KeyVersionSpec.



1266
1267
1268
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 1266

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#algorithmString

Required. The algorithm to use for creating a managed Cloud KMS key for a for a simplified experience. All managed keys will be have their ProtectionLevel as HSM. Corresponds to the JSON property algorithm

Returns:

  • (String)


1257
1258
1259
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 1257

def algorithm
  @algorithm
end

#cloud_kms_key_versionString

Required. The resource name for an existing Cloud KMS CryptoKeyVersion in the format projects/*/locations/*/keyRings/*/cryptoKeys/*/cryptoKeyVersions/*. This option enables full flexibility in the key's capabilities and properties. Corresponds to the JSON property cloudKmsKeyVersion

Returns:

  • (String)


1264
1265
1266
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 1264

def cloud_kms_key_version
  @cloud_kms_key_version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1271
1272
1273
1274
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 1271

def update!(**args)
  @algorithm = args[:algorithm] if args.key?(:algorithm)
  @cloud_kms_key_version = args[:cloud_kms_key_version] if args.key?(:cloud_kms_key_version)
end