Class: Google::Apis::DlpV2beta1::GooglePrivacyDlpV2beta1CryptoKey

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

Overview

This is a data encryption key (DEK) (as opposed to a key encryption key (KEK) stored by KMS). When using KMS to wrap/unwrap DEKs, be sure to set an appropriate IAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot unwrap the data crypto key.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ GooglePrivacyDlpV2beta1CryptoKey

Returns a new instance of GooglePrivacyDlpV2beta1CryptoKey



779
780
781
# File 'generated/google/apis/dlp_v2beta1/classes.rb', line 779

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

Instance Attribute Details

#kms_wrappedGoogle::Apis::DlpV2beta1::GooglePrivacyDlpV2beta1KmsWrappedCryptoKey

Include to use an existing data crypto key wrapped by KMS. Authorization requires the following IAM permissions when sending a request to perform a crypto transformation using a kms-wrapped crypto key: dlp.kms.encrypt Corresponds to the JSON property kmsWrapped



765
766
767
# File 'generated/google/apis/dlp_v2beta1/classes.rb', line 765

def kms_wrapped
  @kms_wrapped
end

#transientGoogle::Apis::DlpV2beta1::GooglePrivacyDlpV2beta1TransientCryptoKey

Use this to have a random data crypto key generated. It will be discarded after the operation/request finishes. Corresponds to the JSON property transient



771
772
773
# File 'generated/google/apis/dlp_v2beta1/classes.rb', line 771

def transient
  @transient
end

#unwrappedGoogle::Apis::DlpV2beta1::GooglePrivacyDlpV2beta1UnwrappedCryptoKey

Using raw keys is prone to security risks due to accidentally leaking the key. Choose another type of key if possible. Corresponds to the JSON property unwrapped



777
778
779
# File 'generated/google/apis/dlp_v2beta1/classes.rb', line 777

def unwrapped
  @unwrapped
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



784
785
786
787
788
# File 'generated/google/apis/dlp_v2beta1/classes.rb', line 784

def update!(**args)
  @kms_wrapped = args[:kms_wrapped] if args.key?(:kms_wrapped)
  @transient = args[:transient] if args.key?(:transient)
  @unwrapped = args[:unwrapped] if args.key?(:unwrapped)
end