Class: Google::Apis::ComputeV1::CustomerEncryptionKey

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CustomerEncryptionKey

Returns a new instance of CustomerEncryptionKey.



9443
9444
9445
# File 'lib/google/apis/compute_v1/classes.rb', line 9443

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

Instance Attribute Details

#kms_key_nameString

The name of the encryption key that is stored in Google Cloud KMS. For example: "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/cryptoKeys/key The fully-qualifed key name may be returned for resource GET requests. For example: "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/cryptoKeys/key /cryptoKeyVersions/1 Corresponds to the JSON property kmsKeyName

Returns:

  • (String)


9394
9395
9396
# File 'lib/google/apis/compute_v1/classes.rb', line 9394

def kms_key_name
  @kms_key_name
end

#kms_key_service_accountString

The service account being used for the encryption request for the given KMS key. If absent, the Compute Engine default service account is used. For example: "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/ Corresponds to the JSON property kmsKeyServiceAccount

Returns:

  • (String)


9402
9403
9404
# File 'lib/google/apis/compute_v1/classes.rb', line 9402

def 
  @kms_key_service_account
end

#raw_keyString

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource. You can provide either the rawKey or thersaEncryptedKey. For example: "rawKey": "SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=" Corresponds to the JSON property rawKey

Returns:

  • (String)


9413
9414
9415
# File 'lib/google/apis/compute_v1/classes.rb', line 9413

def raw_key
  @raw_key
end

#rsa_encrypted_keyString

Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource. You can provide either the rawKey or thersaEncryptedKey. For example: "rsaEncryptedKey": "ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==" The key must meet the following requirements before you can provide it to Compute Engine:

  1. The key is wrapped using a RSA public key certificate provided by Google.
  2. After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Gets the RSA public key certificate provided by Google at: https://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem Corresponds to the JSON property rsaEncryptedKey

Returns:

  • (String)


9434
9435
9436
# File 'lib/google/apis/compute_v1/classes.rb', line 9434

def rsa_encrypted_key
  @rsa_encrypted_key
end

#sha256String

[Output only] TheRFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource. Corresponds to the JSON property sha256

Returns:

  • (String)


9441
9442
9443
# File 'lib/google/apis/compute_v1/classes.rb', line 9441

def sha256
  @sha256
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9448
9449
9450
9451
9452
9453
9454
# File 'lib/google/apis/compute_v1/classes.rb', line 9448

def update!(**args)
  @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
  @kms_key_service_account = args[:kms_key_service_account] if args.key?(:kms_key_service_account)
  @raw_key = args[:raw_key] if args.key?(:raw_key)
  @rsa_encrypted_key = args[:rsa_encrypted_key] if args.key?(:rsa_encrypted_key)
  @sha256 = args[:sha256] if args.key?(:sha256)
end