- 2 minutes to read

ProtectedContextValues - System Parameter

The ProtectedContextValues System Parameter masks the values of named context properties when users view Log Events in Log Views in the Web Client. Use it for sensitive data such as passwords, secrets, or file names that users with access to context data shouldn't see. Context properties are described with the Log Event and its Context Options.

At a Glance

Property Value
Key ProtectedContextValues
Data type json
Default Empty (nothing is masked)
Read by Web Client (when it shows context values)
Takes effect Within about 15 seconds; no restart needed
Status ✅ Active
Since Nodinite 4.3.0.24

How It Works

Which users may see context data at all is set per Role with the Permission Set for Log Views. For users who may see it, ProtectedContextValues replaces the value of each listed context property with its display value. The context property itself is still stored; to remove a context property before it is stored, use ContextPropertiesFilters instead.

Context properties come from many sources, for example HTTP headers, BizTalk Server context properties, MuleSoft business events, and Azure Logic Apps tracked properties. A common case is BizTalk Server dynamic send ports, which can carry FTP passwords in the context.

Tip

To mask data inside message payloads (XML, JSON, flat files), use Stylesheets.

Value Format

The value is a JSON array with one entry per context property to mask:

Property Type Meaning
Key string The full name of the context property to mask.
DisplayValue string or null The text shown instead of the value. When null, ******* is shown.

Mask a File Name

[
  {
    "Key": "http://schemas.microsoft.com/BizTalk/2003/file-properties#ReceivedFileName",
    "DisplayValue": "*** hidden filename ***"
  }
]

Example: hide the received file name in Log Events from BizTalk Server.

Mask Several Context Properties

[
  {
    "Key": "http://schemas.microsoft.com/BizTalk/2003/file-properties#ReceivedFileName",
    "DisplayValue": "*** hidden filename ***"
  },
  {
    "Key": "MySchema#Password",
    "DisplayValue": "******** [password is hidden]"
  },
  {
    "Key": "MySchema#SecureValue",
    "DisplayValue": null
  }
]

Example: three masked context properties; the last one shows the default mask *******.

Next Steps