How is your experience with the OutSystems Community?
DataAnonymizationLibrary

DataAnonymizationLibrary (ODC)

Stable version 1.0.1 (Compatible with ODC)
Uploaded on 20 November 2024 by OutSystems Labs
DataAnonymizationLibrary

DataAnonymizationLibrary (ODC)

Documentation
1.0.1

This version includes 5 actions to manipulate data in order to protect information:

  • Shuffle - Change a specific attribute among several structures in a list;
  • Copy - Override an attribute with a fixed value;
  • Mask - Override part of the value with a predefined mask;
  • Variance - Apply disturbance over an existing value;
  • Randomize - Generate new random information.


The library receives the following inputs, depending on the action executed:

  • JSONInput - JSON Structure;
  • Path - JSONPath format to identify the location of the attributes to anonymize;
  • Value - Value to 
  • Data Type- One of the following TEXT, DATE, INTEGER, EMAIL
  • Expression - Regex to apply in the field


The library can be used directly or through the DataAnonymization Application which contains the RuleSets to apply and service actions to be used by other applications.


​When using directly developers should send all the required data to perform the transformation.

JSON structures can be obtained by calling the JSON Serialize client action and converted back using the JSON Deserialize client action. 


Sample Data (complete examples and sample data available in the Data Anonymization application):

  • JSON Structure:

"[

  {

    ""Customer"": {

      ""Id"": 48,

      ""FirstName"": ""Aileen"",

      ""LastName"": ""Priestnall"",

      ""Email"": ""apriestnall1b@tamu.edu"",

      ""Country"": ""Japan"",

      ""Gender"": ""Female"",

      ""CreditCard"": ""5613200661281960"",

      ""BirthDate"": ""1986-07-07""

    }

  },

  {

    ""Customer"": {

      ""Id"": 14,

      ""FirstName"": ""Alistair"",

      ""LastName"": ""Reece"",

      ""Email"": ""areeced@reference.com"",

      ""Country"": ""United Kingdom"",

      ""Gender"": ""Male"",

      ""CreditCard"": ""5613740542664430"",

      ""BirthDate"": ""1992-04-25""

    }

  }]"


  • Path: $[*].Customer.CreditCard
  • DataType: TEXT
  • Expression: [0-9](?=[0-9]{4})
  • Value: *

The output JSON should have the credit card fields updated to ************1960 and ************4430.