Skip to content

Custom redaction format. The %t placeholder is replaced by the entity

Source: 10-mask-with-format-argument.phisql

PhiSQL

-- Custom redaction format. The %t placeholder is replaced by the entity
-- type at runtime, so the same format string works across entity types.

POLICY custom_format;

REDACT SSN, PHONE_NUMBER, EMAIL_ADDRESS
  WITH MASK(format='{{{REDACTED-%t}}}');

Compiles to

{
  "identifiers": {
    "ssn": {
      "ssnFilterStrategies": [
        {
          "strategy": "MASK",
          "redactionFormat": "{{{REDACTED-%t}}}"
        }
      ]
    },
    "phoneNumber": {
      "phoneNumberFilterStrategies": [
        {
          "strategy": "MASK",
          "redactionFormat": "{{{REDACTED-%t}}}"
        }
      ]
    },
    "emailAddress": {
      "emailAddressFilterStrategies": [
        {
          "strategy": "MASK",
          "redactionFormat": "{{{REDACTED-%t}}}"
        }
      ]
    }
  }
}