Class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey

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

Overview

This is a data encryption key (DEK) (as opposed to a key encryption key (KEK) stored by Cloud Key Management Service (Cloud KMS). When using Cloud KMS to wrap or unwrap a DEK, be sure to set an appropriate IAM policy on the KEK to ensure an attacker cannot unwrap the DEK.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GooglePrivacyDlpV2CryptoKey

Returns a new instance of GooglePrivacyDlpV2CryptoKey.



2499
2500
2501
# File 'lib/google/apis/dlp_v2/classes.rb', line 2499

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

Instance Attribute Details

#kms_wrappedGoogle::Apis::DlpV2::GooglePrivacyDlpV2KmsWrappedCryptoKey

Include to use an existing data crypto key wrapped by KMS. The wrapped key must be a 128-, 192-, or 256-bit key. Authorization requires the following IAM permissions when sending a request to perform a crypto transformation using a KMS-wrapped crypto key: dlp.kms.encrypt For more information, see Creating a wrapped key. Note: When you use Cloud KMS for cryptographic operations, charges apply. Corresponds to the JSON property kmsWrapped



2485
2486
2487
# File 'lib/google/apis/dlp_v2/classes.rb', line 2485

def kms_wrapped
  @kms_wrapped
end

#transientGoogle::Apis::DlpV2::GooglePrivacyDlpV2TransientCryptoKey

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



2491
2492
2493
# File 'lib/google/apis/dlp_v2/classes.rb', line 2491

def transient
  @transient
end

#unwrappedGoogle::Apis::DlpV2::GooglePrivacyDlpV2UnwrappedCryptoKey

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



2497
2498
2499
# File 'lib/google/apis/dlp_v2/classes.rb', line 2497

def unwrapped
  @unwrapped
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2504
2505
2506
2507
2508
# File 'lib/google/apis/dlp_v2/classes.rb', line 2504

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