Hide/Obscure or Restrict Fields
MATRIXX Backoffice Customer Tool supports hiding or obscuring and restricting the editing of field values for various objects by adding a Restriction object to a user role in the permissions.json file.
- Hiding — If a field is hidden, it does not show up on the UI at all. The label (where possible) and its value do not appear in search options, search results, summary pages, detail pages, view-all pages, or edit pages. The general search on the home page may return different item types and may need to include column(s) if an item type shows a value for that column, even if another item type hides the value that would otherwise appear in that column. In that case, the hidden value appears blank.
- Obscuring — If a field is obscured, its value's characters are replaced with whatever character is specified in the OBSCURATION_CHARACTER setting. The default is an asterisk for each character in the value. For example, if a field has an original value of John, the obscured value displays as ****. If a field is obscured for a user, its value is not editable and does not appear on the edit pages.
- Restricting — If editing is restricted for a field, that field displays on the edit pages as read-only.
- Because user roles are cumulative, you should create a special restricted user role and add it to the user(s) as needed. If MATRIXX Backoffice Customer Tool finds a user with a role that contains restrictions, that user will have those restrictions applied despite any other roles they have. Hiding takes precedence over obscuring if a user has more than one role with restrictions on the same field.
- Essential object fields cannot be hidden or obscured. For example,
ObjectId
,ExternalId
, andObjectType
. - Because '***' is not helpful for identifying an object, page headers, breadcrumbs, and summary views do not use obscured fields if the obscured field would be the only identifier.
- Because the All Events page shows multiple events in the table, none of the columns can be dynamically removed.
- No fields on Add pages are hidden or obscured. For example, Add Subscriptions or
Add Groups.Note: This feature only affects the UI display. API calls and JSON responses in the browser's web-developer tools are still visible in plain text.
The value is an object whose keys describe the object type (for example, Subscription or
Group, not extension object types). The value at each key is an object or array of
objects with one or more of the following keys describing an array of field names:
VIEW
, VIEW_OBSCURE
, EDIT
.
{
"Subscription": {
"VIEW": ["LastName", "Status"],
"VIEW_OBSCURE": ["MaxCredit"],
},
"Device": {
"VIEW": ["Imsi", "Status"],
"VIEW_OBSCURE": [],
"EDIT": ["Birthday"]
},
"Group": {
"VIEW": ["Name"],
"EDIT": ["Status"]
},
"Events": [
{
"event": "6",
"VIEW": ["Info"],
"VIEW_OBSCURE": ["Reason"]
}
]
}
Object Type | Field Name |
---|---|
Subscription | Type (This field can only be restricted, not hidden or obscured.)
ExternalId (This field can only be restricted, not hidden or obscured.) FirstName LastName ContactEmail ContactPhoneNumber NotificationPreference Language Status (Extension fields) |
Group | Type (This field can only be restricted, not hidden or obscured.)
ExternalId (This field can only be restricted, not hidden or obscured.) Name Status (Extension fields) |
Device | Type (This field can only be restricted, not hidden or obscured.)
ExternalId (This field can only be restricted, not hidden or obscured.) Imsi (Hiding or obscuring this field is controlled by the Restrictions object, but editing this field is controlled by the Device.Identity.EDIT permission.) LoginId (Hiding or obscuring this field is controlled by the Restrictions object, but editing this field is controlled by the Device.Identity.EDIT permission.) AccessIdArray AccessNumberArray Last ActivityTime Status (Extension fields) |
Events |
All fields in EventDetails, including extension fields, except for the ones noted here. Essential event fields cannot be hidden or obscured,
including:
Similar to how Subscription, Group, and Device ObjectId and ExternalId fields cannot be hidden or obscured, some *Id fields in events cannot be hidden or obscured. For example, for notification_done events, InitiatorId, InitiatorExternalId, and ContactUserObjectId are some fields that cannot be hidden or obscured. You can hide or obscure the NotificationContent field for notification_done events, even though this field is not in EventDetails. |