Skip to main content
Sign in →

Roles & Permissions (RBAC)

ShieldAgent enforces role-based access control across the platform. This page documents the built-in roles and the permission matrix.

Overview

Every authenticated request is checked against the caller's role within the target tenant. Permissions follow a resource:action pattern (e.g. agent:write). Platform admins have full access across all tenants. Tenant-scoped roles are assigned per-tenant, so a user can be an auditor in one tenant and a tenant_admin in another.

Built-in Roles

ShieldAgent ships with six system roles. Custom roles are not yet supported — assignments use these built-in roles.

RoleScopeDescription
platform_adminPlatformFull platform access across all tenants. Reserved for ShieldAgent operators.
tenant_adminTenantFull management of one tenant: users, settings, billing, all sub-resources.
security_operatorTenantMonitoring, incident triage, alert management, risk review.
auditorTenantRead-only access to compliance reports, audit trail, and export.
aiops_engineerTenantAgent lifecycle, MCP server management, policy authoring.
viewerTenantRead-only dashboard and summary data.

Permission Matrix

The matrix below shows every permission and which roles include it. platform_admin and tenant_admin have all permissions and are omitted for readability.

PermissionDescriptionsec_opauditoraiopsviewer
agent:readView / list agents
agent:writeCreate or update agents
agent:deleteRemove agents
agent:configureModify agent settings
policy:readView / list policies
policy:writeCreate or update policies
policy:deleteRemove policies
audit:readView audit trail events
audit:exportExport audit data
compliance:readView compliance reports
compliance:writeCreate or update compliance records
compliance:exportExport compliance data
risk:readView risk scores and trending
risk:configureModify risk thresholds
incident:readView incidents
incident:writeCreate or update incidents
incident:triageAcknowledge, assign, or resolve
mcp_server:readView MCP server registrations
mcp_server:writeCreate or update MCP servers
mcp_server:deleteRemove MCP servers
alert:readView alerts
alert:writeCreate or update alert rules
alert:deleteRemove alert rules
alert:triageAcknowledge or resolve alert events
review:readView pending reviews
review:triageApprove or reject reviews
user:readView user accounts
user:writeCreate or update users and roles
user:deleteRemove user accounts
tenant:readView tenant settings
tenant:writeModify tenant settings / billing
export:readView export configurations
export:writeCreate or update export configs
dashboard:readView aggregated dashboard data

Managing Roles in the Dashboard

Invite users and assign roles directly from the dashboard:

  1. 1Go to Settings → Team in the left sidebar.
  2. 2Click Invite User and enter their email address.
  3. 3Choose a role from the dropdown (viewer, auditor, aiops_engineer, security_operator, or tenant_admin).
  4. 4Click Send Invite — the user receives an email and is assigned the role upon accepting.
  5. 5To change an existing user's role, find them in the Team list and click their current role to open the role picker.

Role Assignment

Roles are assigned per user per tenant. A user can hold different roles in different tenants, allowing flexible access control across your organization.

Roles & Permissions (RBAC)