Marking entity fields for obfuscation

If an entity implements the Obfuscatable delegate, it is likely that you will want to tag some of its fields for obfuscation. For each field that contains personal data, add the tag PersonalData. The value of the tag determines the kind of obfuscation that will be applied to the field's contents. In the base configuration, two values are defined in the typelist PersonalDataTagValue.tti:

ObfuscateDefault
The field's contents are replaced with the default value or null if no default value is defined.
ObfuscateUnique
You specify how the field's contents are replaced.
Note: If a field is not nullable, it must be given a default value if you mark it for obfuscation. For one of these fields, obfuscation will fail if you tag the field obfuscate_default and provide no default value.

In the base configuration, all the entities that implement the Obfuscator interface have fields tagged PersonalData. Additionally, many of the fields tagged as PersonalData are in .etx files to enable you to modify them. For example, the Name field of Contact is defined in Contact.etx as follows:

<column-override
  name="Name">
    <tag
      name="PersonalData"
      value="ObfuscateUnique"/>
</column-override>

In addition, the following delegates have fields tagged PersonalData. An entity that implements one or more of these delegates does not have to implement Obfuscator and Obfuscatable unless you want the entity to support obfuscation.

  • AddressBookConvertible.etx
  • GlobalAddress.etx
  • GlobalAddress.Global.etx
  • GlobalContactName.etx
  • GlobalContactName.Global.etx
  • GlobalPersonName.etx
  • GlobalPersonName.Global.etx

See also