Skip to main content
Version: 3.0

Configuration Files

Obfusware uses configuration JSON in a number of different locations and for different purposes.

Initialization Configuration file *[optional]

When Obfusware is initialized, a configuration file is loaded. The initialization configuration file contains a configuration JSON object. While the configuration file is not strictly required, it is typically used to specify the license file and define data maskers.

  • Default configuration file location: Obfusware config directory
  • Default configuration filename: obfusware-config.json

AWS Glue Data Catalog Table Masking configuration file

Instead of requiring a masking schema to be specified programmatically or in the initialization configuration file, Obfusware can use a configuration file declared in the AWS GLue Data Catalog Table properties. Each table in the catalog has properties which are usually set by the AWS Glue Crawler job. Obfusware uses the ofusware-masking table property to specify a configuration masking file.

Example Obfusware table property
obfusware-masking: s3://obfusware-obfusware-381492123456-us-east-1/3.0/config/exampledb/obfusware-table.json

Typically, the masking file will define any data maskers that are unique to the table and the masking schema for the table. By attaching a masking schema to each table, Obfusware insures that masking operations remain consistent and comprehensive every time Obfusware is used. Additionally, it enables data to be masked by engineers that may not know the intricacies of data masking and Obfusware.

Obfusware Environment Specific Configuration Files

Obfusware defines an Environment property which can be 1 of 4 values (Development, Test, Staging, or Production). When loading a configuration file, Obfusware looks for an environment specific version of the configuration file. For instance, if the configuration file name is obfusware-config.json and Obfusware environment is set to Test, then Obfusware first looks for a configuration file named obfusware-config-test.json, if it exists then it is loaded. If it does not exist the Obfusware loads the obfusware-config.json file.

Obfusware tags configuration files with an Environment specific tag to generate the environment specific configuration file. The tags for each Environment are:

  • Development: dev
  • Test: test
  • Staging: stage
  • Production: prod