20,919,685Total Points24,106Total Sites23,382Cell Towers69,500Racks Monitored56,753HVAC Units Monitored31,322UPS Units Monitored24,788Generators Monitored20,919,685Total Points24,106Total Sites23,382Cell Towers69,500Racks Monitored56,753HVAC Units Monitored31,322UPS Units Monitored24,788Generators Monitored20,919,685Total Points24,106Total Sites23,382Cell Towers69,500Racks Monitored56,753HVAC Units Monitored31,322UPS Units Monitored24,788Generators Monitored

Chapter 9: Security & User ManagementLesson 50 of 65

How to Configure System Permissions by Role

Configure Mango by Radix IoT system permissions by role: what the System permissions page can actually delegate, what stays superadmin-only, and how each permission defaults.

  • 8 min read
  • Intermediate
  • Mango 4.x / 5.x

Overview

Object-level permissions (on data points, dashboards, etc.) control who can see and edit specific data. System permissions grant capabilities that are not attached to any one object — creating data sources, viewing the users page, running a backup, using a scripting engine.

Set your expectations first, because this is the part that surprises people: most of the Administration menu cannot be delegated at all. Admin home, Modules, System settings, System status, Import/Export and the SQL console are all restricted to the superadmin role in the menu definition itself, with no system permission in front of them. System permissions are a specific, enumerable set of capabilities — not a general switchboard for admin pages.

System Permissions vs Object Permissions

Permission TypeWhat It ControlsWhere It's Set
Object permissionRead, edit and set access to one specific data point, dashboard or watch listOn that object, in its own read/edit permission fields
System permissionA named capability that is not tied to one object — create a data source, view the users page, use the Nashorn engineAccess management → System permissions

A user might have object-level read access to a data point but no system permission to create data sources. Both layers work together, and a few permissions deliberately straddle them: Data Point view permission (user.view.dataPoint) is a system permission that grants read on every data point, bypassing each point's own read permission.

What the Page Actually Lists

Every system permission is contributed by a module, and the page groups them the same way. Most groups are headed "<module name> module"; two are named in their own right, User permissions ("Manage access for creating and editing users") and Scripting engines ("Manage access to scripting engines and their features"). The label on each row is the permission's own description, which reads as a short sentence rather than a category name. The ones a typical deployment cares about:

Row on the pageWhat it grantsContributed by
Data source management (create/edit data sources)Creating data sources, and with it the Data integration → Data sources page. Editing an existing data source is governed by that data source's own edit permission, not by thisCore
View users pageReaching Access management → Users at allUser permissions
Create usersThe Add user button. Editing an existing user is that user's own edit permissionUser permissions
View events pageThe Events page and the alarm counts. An operator who acknowledges alarms needs this, and every logged-in user holds it by defaultCore
View any eventReading every event regardless of its own read permissionCore
Create event handlersCreating handlers. Note the Event Management → Event handlers page is still superadmin-onlyCore
JSON configuration import / JSON configuration exportConfiguration import and export as capabilities. The Import/Export pages remain superadmin-onlyCore
Edit UI settings / Edit UI pages / Edit UI menusThe three Platform management editors — UI settings, Edit pages, Edit menuUI
Configuration backup, Database backup, Restore database, Purge all events, Purge now using purge settingsOne-off actions, each its own permissionCore
Send email to any email addressAddressing email to an arbitrary recipientCore
Use the Nashorn JavaScript engine, Load scripts from the web, Write to the script log, and eleven moreScripting is not one permission. Each engine and each risky binding is separateScripting engines

What Is Not a System Permission

These are restricted to superadmin in the menu definition, so no amount of permission configuration will give another role access:

  • Modules, including the upgrade and offline-upgrade pages
  • System settings and every page beneath it — email, purge, password, database backup, UI, thread pools
  • System status, Admin home, Auto login (local), Point value import
  • SQL console, which is hidden from the menu entirely and reached through Utilities
  • Import/Export, Publishers, Bulk data point edit, File stores, JSON store, Event handlers
  • System permissions itself

In the core UI exactly six menu entries are gated by a system permission rather than by superadmin: Data sources, Users, UI settings, Edit pages, Edit menu, and the UI examples. Everything else you can delegate is a capability rather than a page.

Configuring System Permissions

  1. Navigate to Access management → System permissions
  2. Click a group header to expand it, or type in Filter permissions to search every group at once
  3. The grid has one column per role. If the role you want is not yet a column, click Add column and pick it — or click it in the Other roles with access cell on that row
  4. Tick the checkbox where the permission and the role meet

There is no Save button. Each row saves on its own the moment you tick it, and a progress indicator appears on that row. The superadmin column is always ticked and always disabled.

Two details worth knowing. Advanced mode, on the Add column drop-down, creates a column that requires a user to hold several roles at once rather than any one of them. And Hide column only removes a role from your view — it does not revoke anything.

The page itself is restricted to superadmin, so only a superadmin can change who holds what.

What Each Permission Starts As

When a permission has never been configured, Mango by Radix IoT falls back to that permission's own default. Most default to superadmin only, so a role you create holds none of them until you tick it in here. Some default to the built-in user role instead, which every logged-in account holds, so everyone who can log in has them from the start. The ones a deployment notices: View events page, Watchlist view permission, Watchlist create permission, Edit own user details (name/email etc), Edit own username, View Excel reports, Create Excel report template, Core filestore read permission (the default file store), Write to the script log and Access Mango services. To take one of these away from everybody, remove user from that row and tick the roles that should keep it.

An instance upgraded from Mango 3 carries whatever its old permission settings were converted to, so read the page rather than assuming these defaults.

Recommended Permission Assignments

Mango ships three roles and only three: superadmin, user (which every authenticated account holds) and anonymous. engineer, operator and viewer below are roles you create yourself on the Roles pane of the Users page; the columns are a starting point, not built-in.

Permissionengineeroperatorviewer
Data source management (create/edit data sources)✓
View events page✓✓✓
View any event✓
Create event handlers✓
View users page
Create users
JSON configuration export✓
JSON configuration import
Edit UI pages / Edit UI menus / Edit UI settings✓
Configuration backup✓
Database backup / Restore database
Purge all events / Purge now using purge settings
Scripting engines group (all fourteen)✓

Blank rows are the ones to leave with superadmin alone. View events page is ticked for all three because without it a user cannot open Events or see alarm counts. On a new install it is already granted to user, so those three ticks change nothing until you remove user from that row; then they are what keeps these roles' access.

Common Patterns

Engineer Self-Service

Tick Data source management for the engineer role. That is enough to create data sources and reach the Data sources page, and because creating a data point requires the edit permission on its parent data source, an engineer who owns the data sources can add points to them without any further system permission. System settings is not on the table — it cannot be delegated.

Locked-Down Operations

Operators need one system permission: View events page, which they already hold through user unless it has been removed. Everything else they do is object-level — viewing dashboards, setting points, and acknowledging alarms, which requires the edit permission on the event rather than any system permission. All configuration changes go through engineers or superadmins. For a genuinely locked-down instance, also remove user from the other rows that start with it (the watch-list, Excel report and own-account rows) and tick them only for the roles that need them.

Delegated Admin

In large organizations, create a site-admin role and tick View users page, Create users and Data source management. Module and system-settings access is not something you have to withhold — it was never available to delegate. Be aware of what this role still cannot do: it cannot edit an existing user unless that user's own edit permission includes the role, and it cannot reach the System permissions page to widen its own access.

Troubleshooting

IssueCauseFix
User can't see the Administration menuExpected. Every page under Administration requires superadmin, so a non-superadmin sees nothing there no matter what you tickNothing to fix. If they need one of those pages, they need the superadmin role
Engineer can't create data sourcesData source management does not include their roleTick their column on that row
Engineer can create a data source but not add points to someone else'sPoint creation needs the parent data source's edit permission, which is object-levelAdd the role to that data source's edit permission — not to a system permission
User can open the Users page but every edit failsView users page grants the page only. There is no "edit users" system permissionAdd the role to the edit permission on each user, or grant Create users if they only need to add accounts
Operator sees no alarmsView events page no longer includes user or their roleTick it for their role. Acknowledging additionally needs edit permission on the event
A permission reverted to superadmin onlyThe role was deleted. Deleting a role strips it from every permission that referenced itRecreate the role and re-tick it

Summary

System permissions grant named capabilities, not admin pages. Configure them at Access management → System permissions, where each row saves as you tick it. Most rows start superadmin-only; a few, including View events page, start granted to every logged-in user. Assign them to roles rather than to individual users, remember that Administration is superadmin territory no matter what you tick, and expect the useful delegation — data source management, the users page, the events page, the UI editors — to come from a short and specific list.

Get free access to all 65 Mango by Radix IoT training lessons

One short form unlocks every lesson and its video in this browser.

This form is hosted by Zoho. It loads only after you enable support cookies or choose to load it below.

We honored your browser’s Global Privacy Control signal — optional cookies are off and nothing is tracked.