Skip to main content
Version: 1.13.0-dev

Flightdeck role and access matrix

Use this matrix to decide which platform role a Flightdeck operator needs. DVARA separates cross-workspace platform roles from workspace roles, and separates read access from permission to change data.

Enterprise only

Not included in DVARA Open Source.

Understand the two role scopes​

Platform roles use platform-wide Flightdeck navigation across workspaces:

  • owner administers the platform and can perform high-impact changes.
  • policy-admin operates routing and governance controls.
  • billing-admin operates cost and billing controls.

Workspace roles use workspace-scoped Flightdeck navigation:

  • admin manages one workspace and its team.
  • developer uses the workspace's development surfaces.
  • viewer has read-only workspace access.

One account cannot mix platform and workspace roles. The values above are the literal role names in built-in, OIDC, and SAML role claims.

Check platform-wide page access​

Read means the page is reachable and visible. Change means the role can use its state-changing actions. A dash means the page is hidden and the URL is refused.

Platform destinationownerpolicy-adminbilling-admin
DashboardReadReadRead
System StatusReadReadRead
PlaygroundChange——
WorkspacesChangeReadRead
Teams and team limitsChangeReadRead
AccountsChangeReadRead
UsersChange——
Provider credentialsChange——
ProvidersChange——
Gateway enrolmentChange——
RoutesChangeChange—
LatencyReadRead—
ResilienceChangeChange—
Output schemasChangeChange—
Response cache (each workspace's, on its edit page)Change——
PoliciesChangeChange—
ModelsChangeChange—
Guardrail pluginsChangeChange except secret rotation—
PII and data protectionChangeChange except purge—
AuditReadReadRead
ApprovalsRead and decideRead and decide (not budget changes)Read and decide budget changes
Compliance reportsChange and deleteReadGenerate and read
WebhooksChangeChangeRead
Cost dashboardRead—Read
Token usage (raw records, from the Cost dashboard)Read—Read
Usage-report exportRead—Read
Credential lookup (which workspace holds a key; token usage, MCP tool calls, A2A traffic)Read——
Budget capsChange—Change
Model pricingChangeReadChange
Token calculatorRead—Read
Chargeback reportsChange—Change
Cost AdvisorApply and dismiss—Read and dismiss
Billing (managed service only)Change—Change
Prompt templatesChangeReadRead
Prompt experimentsChangeReadRead
Golden prompts and evalsChangeReadRead
MCP servers, sessions, and tool calls (from 1.8.5 including Kill a session by id; the per-credential lookup is owner only)ChangeChange—
MCP virtual servers and tasksChangeChange—
MCP tool scope and shadow serversReadRead—
MCP analyticsReadReadRead
MCP catalog (when the catalog is on)Change——
A2A agents, sessions, conversations, traffic, and analytics (the per-credential lookup is owner only)ChangeChange—
A2A revocationsChangeChange—
A2A catalog (when the catalog is on) and card signingChange——
Licence detailsChangeReadRead
Import and export configurationChange——
Mock scenarios (when the editor is on)Change——
Personal access tokensManage ownManage ownManage own
Notifications, saved views, and searchUse ownUse ownUse own

Some forms can impose a narrower rule than their page. For example, only an owner can rotate a guardrail-plugin secret, purge PII data, delete a compliance report, manage users or credentials, or import configuration. Do not infer write permission from the ability to open a page.

Apply the additional capability gates​

Role permission is necessary but not always sufficient:

  • Sensitive governance changes: activating a policy; turning off, changing, rolling back or deleting an active policy; creating or materially changing a budget, exporting audit evidence, and revealing or purging PII require a different authorized person to approve the exact action. Both participants still need the capability and scope shown in this matrix. The approval gate does not turn a read-only role into a writer.
  • MCP and A2A: their Flightdeck destinations and the shared approval queue need no licence. From 1.8.2 both planes run on every Enterprise install, so the role decides access.
  • Playground: the page is present only when dvara.flightdeck.playground.enabled=true, which is the default. Platform scope remains owner-only. Workspace admin and developer roles use the workspace-scoped page.
  • Managed-service billing: the Billing pages exist only in the managed service: the platform page for owner and billing-admin, and the workspace page for a workspace admin. They are not a self-hosted Flightdeck destination.

Check workspace access​

Workspace roles do not receive cross-workspace navigation. Flightdeck scopes their access to the active workspace:

Workspace concernadmindeveloperviewer
Dashboard, API keys, credentials, policies, audit, usage, prompts, and reportsReachable; write ability depends on the operationReachable; write ability depends on the operationRead-only surfaces only
Team management and workspace deletionChange——
MCP extension allow-list (from 1.8.4)Change——
MCP session kill, also by session ID (by ID from 1.8.5)ChangeChange—
MCP and A2A size limits (from 1.8.5; the platform owner sets them in Flightdeck)Read——
PlaygroundUseUse—
Personal access tokensManage own tokensManage own tokensManage own tokens
API keysCreate, revoke, set loop guard and acts-as agentCreateRead
ModelsChangeReadRead
Data protectionChange——
Response cacheChange——
Token usage (raw records)ReadRead (no menu link; open /token-usage)Read (no menu link; open /token-usage)
Budget capsChangeReadRead
Cost AdvisorApply and dismiss——
Billing (managed service only)Change——
MCP virtual serversCreate, change and deleteCreate and changeRead
MCP task cancelChange——
MCP sampling, MCP new tools, and A2A delegationChange——
A2A revocationsChangeReadRead

The broad workspace URL rule requires authentication; controllers apply workspace scope and operation-specific write checks. Use the workspace team and access guide for the task-level matrix instead of treating every reachable workspace page as writable.

Verify a role before rollout​

Test each external identity provider role mapping with a non-production user:

  1. Sign in and confirm Flightdeck shows the platform-wide or workspace-scoped navigation expected for the role scope.
  2. Open one allowed page and one refused URL directly; hidden navigation alone is not a security test.
  3. Test one allowed write and one refused write on a shared read page.
  4. Confirm the refusal is recorded when authentication or audit storage is configured to retain it.

See Setup and login for built-in, OIDC, and SAML configuration.