Class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig

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

Overview

Replaces an identifier with a surrogate using FPE with the FFX mode of operation; however when used in the ReidentifyContent API method, it serves the opposite function by reversing the surrogate back into the original identifier. The identifier must be encoded as ASCII. For a given crypto key and context, the same identifier will be replaced with the same surrogate. Identifiers must be at least two characters long. In the case that the identifier is the empty string, it will be skipped. See https://cloud.google.com/dlp/docs/pseudonymization to learn more.

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) ⇒ GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig

Returns a new instance of GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig



1282
1283
1284
# File 'generated/google/apis/dlp_v2/classes.rb', line 1282

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

Instance Attribute Details

#common_alphabetString

Corresponds to the JSON property commonAlphabet

Returns:

  • (String)


1245
1246
1247
# File 'generated/google/apis/dlp_v2/classes.rb', line 1245

def common_alphabet
  @common_alphabet
end

#contextGoogle::Apis::DlpV2::GooglePrivacyDlpV2FieldId

General identifier of a data field in a storage service. Corresponds to the JSON property context



1250
1251
1252
# File 'generated/google/apis/dlp_v2/classes.rb', line 1250

def context
  @context
end

#crypto_keyGoogle::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey

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. Corresponds to the JSON property cryptoKey



1259
1260
1261
# File 'generated/google/apis/dlp_v2/classes.rb', line 1259

def crypto_key
  @crypto_key
end

#custom_alphabetString

This is supported by mapping these to the alphanumeric characters that the FFX mode natively supports. This happens before/after encryption/decryption. Each character listed must appear only once. Number of characters must be in the range [2, 62]. This must be encoded as ASCII. The order of characters does not matter. Corresponds to the JSON property customAlphabet

Returns:

  • (String)


1270
1271
1272
# File 'generated/google/apis/dlp_v2/classes.rb', line 1270

def custom_alphabet
  @custom_alphabet
end

#radixFixnum

The native way to select the alphabet. Must be in the range [2, 62]. Corresponds to the JSON property radix

Returns:

  • (Fixnum)


1275
1276
1277
# File 'generated/google/apis/dlp_v2/classes.rb', line 1275

def radix
  @radix
end

#surrogate_info_typeGoogle::Apis::DlpV2::GooglePrivacyDlpV2InfoType

Type of information detected by the API. Corresponds to the JSON property surrogateInfoType



1280
1281
1282
# File 'generated/google/apis/dlp_v2/classes.rb', line 1280

def surrogate_info_type
  @surrogate_info_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1287
1288
1289
1290
1291
1292
1293
1294
# File 'generated/google/apis/dlp_v2/classes.rb', line 1287

def update!(**args)
  @common_alphabet = args[:common_alphabet] if args.key?(:common_alphabet)
  @context = args[:context] if args.key?(:context)
  @crypto_key = args[:crypto_key] if args.key?(:crypto_key)
  @custom_alphabet = args[:custom_alphabet] if args.key?(:custom_alphabet)
  @radix = args[:radix] if args.key?(:radix)
  @surrogate_info_type = args[:surrogate_info_type] if args.key?(:surrogate_info_type)
end