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.



2337
2338
2339
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 2337

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)


2328
2329
2330
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 2328

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)


2335
2336
2337
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 2335

def cloud_kms_key_version
  @cloud_kms_key_version
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2342
2343
2344
2345
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 2342

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