Class: Google::Apis::CloudkmsV1::ImportCryptoKeyVersionRequest

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

Overview

Request message for KeyManagementService.ImportCryptoKeyVersion.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ ImportCryptoKeyVersionRequest

Returns a new instance of ImportCryptoKeyVersionRequest.



1309
1310
1311
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 1309

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

Instance Attribute Details

#algorithmString

Required. The algorithm of the key being imported. This does not need to match the version_template of the CryptoKey this version imports into. Corresponds to the JSON property algorithm

Returns:

  • (String)


1254
1255
1256
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 1254

def algorithm
  @algorithm
end

#crypto_key_versionString

Optional. The optional name of an existing CryptoKeyVersion to target for an import operation. If this field is not present, a new CryptoKeyVersion containing the supplied key material is created. If this field is present, the supplied key material is imported into the existing CryptoKeyVersion. To import into an existing CryptoKeyVersion, the CryptoKeyVersion must be a child of ImportCryptoKeyVersionRequest.parent, have been previously created via ImportCryptoKeyVersion, and be in DESTROYED or IMPORT_FAILED state. The key material and algorithm must match the previous CryptoKeyVersion exactly if the CryptoKeyVersion has ever contained key material. Corresponds to the JSON property cryptoKeyVersion

Returns:

  • (String)


1267
1268
1269
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 1267

def crypto_key_version
  @crypto_key_version
end

#import_jobString

Required. The name of the ImportJob that was used to wrap this key material. Corresponds to the JSON property importJob

Returns:

  • (String)


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

def import_job
  @import_job
end

#rsa_aes_wrapped_keyString

Optional. Wrapped key material produced with RSA_OAEP_3072_SHA1_AES_256 or RSA_OAEP_4096_SHA1_AES_256 or RSA_OAEP_3072_SHA256_AES_256 or RSA_OAEP_4096_SHA256_AES_256. This field contains the concatenation of two wrapped keys: 1. An ephemeral AES-256 wrapping key wrapped with the public_key using RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an empty label. 2. The key to be imported, wrapped with the ephemeral AES-256 key using AES-KWP (RFC 5649). If importing symmetric key material, it is expected that the unwrapped key contains plain bytes. If importing asymmetric key material, it is expected that the unwrapped key is in PKCS#8-encoded DER format (the PrivateKeyInfo structure from RFC 5208). This format is the same as the format produced by PKCS#11 mechanism CKM_RSA_AES_KEY_WRAP. Corresponds to the JSON property rsaAesWrappedKey NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


1288
1289
1290
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 1288

def rsa_aes_wrapped_key
  @rsa_aes_wrapped_key
end

#wrapped_keyString

Optional. Wrapped key material produced with (RSA_OAEP_3072_SHA1_AES_256 or RSA_OAEP_4096_SHA1_AES_256 or RSA_OAEP_3072_SHA256_AES_256 or RSA_OAEP_4096_SHA256_AES_256) for which, this field contains the concatenation of: 1. An ephemeral AES-256 wrapping key wrapped with the public_key using RSAES-OAEP with SHA-1/SHA-256, MGF1 with SHA-1/SHA-256, and an empty label. 2. The key to be imported, wrapped with the ephemeral AES-256 key using AES-KWP ( RFC 5649), or (RSA_OAEP_3072_SHA256 or RSA_OAEP_4096_SHA256) for which, this field contains the key to be imported, wrapped with the public_key using RSAES- OAEP with SHA-256, MGF1 with SHA-256, and an empty label. If importing symmetric key material, it is expected that the unwrapped key contains plain bytes. If importing asymmetric key material, it is expected that the unwrapped key is in PKCS#8-encoded DER format (the PrivateKeyInfo structure from RFC 5208). This format is the same as the format produced by PKCS#11 mechanism CKM_RSA_AES_KEY_WRAP. Corresponds to the JSON property wrappedKey NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


1307
1308
1309
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 1307

def wrapped_key
  @wrapped_key
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1314
1315
1316
1317
1318
1319
1320
# File 'lib/google/apis/cloudkms_v1/classes.rb', line 1314

def update!(**args)
  @algorithm = args[:algorithm] if args.key?(:algorithm)
  @crypto_key_version = args[:crypto_key_version] if args.key?(:crypto_key_version)
  @import_job = args[:import_job] if args.key?(:import_job)
  @rsa_aes_wrapped_key = args[:rsa_aes_wrapped_key] if args.key?(:rsa_aes_wrapped_key)
  @wrapped_key = args[:wrapped_key] if args.key?(:wrapped_key)
end