Manage Assistant access with RBAC
Grafana Assistant relies on Grafana role-based access control (RBAC) so you can decide who can chat, run investigations, or administer deployment-wide settings. This article explains the roles available, the permissions they unlock, and how to grant users the access they need.
Note
Grafana Cloud honors the permissions granted by basic, custom, and Assistant-specific roles. In self-managed Grafana, use the basic Viewer, Editor, and Admin organization roles unless you run Grafana Enterprise in a configuration that supports Assistant custom permissions. In other self-managed deployments, Assistant uses a compatibility fallback based on the user’s basic organization role: Viewers can access and read, Editors can also create, write, and delete non-administrative resources, and Admins receive administrative permissions. Custom and Assistant-specific roles can’t grant permissions beyond this fallback. Contact your Grafana account team to confirm whether your deployment supports Assistant custom permissions. The
plugins.app:accesspermission still controls access to the plugin, and self-managed deployments hide some Grafana Cloud-dependent features entirely.
Before you begin
Decide who needs chat access, admin access, or investigation access before you start assigning roles.
- Organization administrator access: Only admins can assign Assistant-related roles and permissions.
- RBAC plan: Decide which teams need chat, investigations, or administrative control. For planning guidance, refer to Plan your Grafana RBAC rollout strategy.
- Feature availability: Confirm Assistant is available or enabled in your stack. Investigations require a separate entitlement.
- Scope per deployment: Assistant uses Grafana RBAC in the Grafana deployment where the plugin runs. In self-managed Grafana Enterprise deployments that support Assistant custom permissions, permissions are resolved by that local Grafana instance, even when it isn’t reachable from the internet. Use
plugins.app:accessscoped toplugins:id:grafana-assistant-appto control who can open Assistant. To remove or disable Assistant in a deployment, use the controls available in your stack. Where plugin settings expose enablement controls, an administrator can navigate to Administration > Plugins and data > Plugins, search for Grafana Assistant or go directly to/plugins/grafana-assistant-app, clear the agreement checkbox or the Assistant enabled or Enable Assistant checkbox, and click Save.
Understand available roles
Grafana offers baseline organization roles plus Assistant-specific roles. Combining them lets you tailor access without granting more privileges than necessary.
Organization roles define broad access in Grafana:
Tip
To limit Assistant access for users who hold a Viewer or Editor organization role, an administrator can update the basic role with the RBAC API and remove specific permissions. For example, remove
plugins.app:accessscoped toplugins:id:grafana-assistant-appor removegrafana-assistant-app.chats:accessfrom the Viewer role.
Assistant-specific roles extend or restrict access regardless of the user’s organization role in Grafana Cloud. They also work in self-managed Grafana Enterprise deployments that support Assistant custom permissions:
Assign Assistant-specific roles to give targeted access to teammates who are not Editors or Admins in Grafana Cloud or in self-managed Grafana Enterprise deployments that support Assistant custom permissions.
Assistant User and Assistant MCP User include read access to rules and suggested prompts shared with your stack. Assistant MCP User also includes read access to shared MCP servers. These grants don’t let you edit shared resources or read another user’s private resources.
Note
System-created investigations (launched automatically via IRM webhooks, alerts, or incidents) are hidden by default. Only users with the Assistant System Investigation Viewer role (combined with Assistant Investigation User) or organization Admin role can see them.
View sandbox secret metadata
When sandbox secrets are enabled, Viewers can see each secret’s name, description, environment variable, type, and destination. Settings never show saved secret values.
Viewing personal secrets requires grafana-assistant-app.sandbox-secrets.user:read, and viewing shared secrets requires grafana-assistant-app.sandbox-secrets.tenant:read. Assistant Coding User, Assistant Coding Maintainer, and Assistant Coding Admin include both. For custom roles, grant the read action for each scope they need. No settings permission is required. Read access doesn’t let anyone change or decrypt secrets. To manage secrets, refer to Sandbox secret permissions.
Grant access in Grafana
Use the following procedures to grant the right level of access without over-provisioning.
If you use self-managed Grafana without support for Assistant custom permissions, grant Assistant access with the basic Viewer, Editor, or Admin organization roles and plugins.app:access. The Assistant-specific role procedures in this section apply to Grafana Cloud and to self-managed Grafana Enterprise deployments that support Assistant custom permissions.
Grant basic Assistant chat access
- Sign in as an organization administrator.
- Go to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant User.
- Click Apply.
Grant CLI access
Users with the Editor organization role or above receive the Assistant CLI User role automatically. To grant CLI access to a user without the Editor role:
- Sign in as an organization administrator.
- Navigate to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant CLI User.
- Click Apply.
Allow users to launch investigations and skills
- Sign in as an organization administrator.
- Navigate to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant Investigation User.
- Click Apply.
Allow users to view system-created investigations
System-created investigations are launched automatically by IRM webhooks, alerts, or incidents. By default, only organization Admins can view them. This role is additive — the user also needs the Assistant Investigation User role for general investigation access.
- Sign in as an organization administrator.
- Navigate to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant Investigation User (if not already assigned).
- Also choose Assistant > Assistant System Investigation Viewer.
- Click Apply.
View cloud agent settings
By default, Viewers, Editors, and Admins can read cloud agent settings. Assistant User and Assistant MCP User include grafana-assistant-app.settings.coding-agents:read, so you can see the configured providers and defaults without admin access. This permission doesn’t expose credentials or grant access to the GitHub, Cursor, or Claude integration settings.
To enable or disable cloud agents, choose the provider, or set the approval policy, you need grafana-assistant-app.settings.coding-agents:write, included in Assistant Coding Admin and Assistant Admin. Sandbox secrets use separate permissions. Refer to Sandbox secret permissions.
Control cloud agent access
Assistant Coding User is granted to Viewer, Editor, and Admin by default. It lets users run cloud agents and read coding configuration other than credentials. Cloud agents must also be enabled for the tenant, and repository and user authorization still apply.
Coding Users can see every repository the tenant’s GitHub App installation can access, including private repository names, and each repository’s enrollment, network, and automatic-publication settings. This extends GitHub settings visibility to Viewers. It doesn’t grant access to repository contents or bypass authorization when cloud agents run.
Refreshing the repository inventory cache requires Assistant Coding Maintainer or Assistant Coding Admin. Viewing environment build logs requires Assistant Coding Admin, or Assistant Coding Maintainer with GitHub write access to the repository. grafana-assistant-app.github:read alone permits neither.
Assign Assistant Coding Maintainer explicitly to users or teams who manage repositories. With their linked GitHub account’s current write access, Maintainers can configure repository enrollment, environments, network policy, reviews, mentions, and automatic pull requests. They can also manage shared sandbox secrets. Refer to Sandbox secret permissions. They can’t connect GitHub installations, change global coding policy, turn on mentions globally, or allow change review and mentions on public repositories.
Assistant Coding Admin, granted to Admin by default, also manages global coding settings and integrations. No coding role grants access to another user’s private conversations or credentials.
Connecting a GitHub App installation verifies ownership with the connecting user’s linked GitHub account. Users with grafana-assistant-app.github:write can link their own GitHub account without grafana-assistant-app.chats:access, so Connect GitHub works for Coding Admins who can’t use Assistant chat. The same permission lets them unlink their account.
To restrict coding while preserving chat, remove grafana-assistant-app.coding:execute from the relevant basic-role permissions and assign Coding User to the intended users or teams. Grafana permissions are additive: removing one assignment does not revoke a permission still granted by another role or team. Refer to Manage RBAC roles.
Fine-grained delegation requires Grafana Cloud or Grafana Enterprise RBAC. Without it, self-managed Grafana lets Viewer, Editor, and Admin run cloud agents and reserves repository configuration for Admin.
Disabling coding blocks new work and follow-ups, including queued starts. It doesn’t cancel work that has already started. Settings show global editing controls only to users with the required permissions.
Delegate Assistant administration
- Sign in as an organization administrator.
- Navigate to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant Admin.
- Click Apply.
Users can hold multiple Assistant roles if they need both investigation access and deployment-wide configuration control.
Read and write permissions for settings are separate. To view SQL table discovery or investigation settings, you need the matching :read permission. To change them, you also need the matching :write permission. IRM webhook access doesn’t grant access to incident exclusions. If a setting is unavailable, ask your administrator for the permissions listed under Map permissions to actions.
In self-managed deployments that use basic-role compatibility, only organization Admins can change Assistant enablement, SQL table discovery, Analyst data warehouse settings, or investigation settings. Editor access alone doesn’t permit these changes.
Control access to conversations
You need grafana-assistant-app.chats:access to use Assistant conversations, including shared conversations. This permission lets you manage your own chats. It doesn’t grant access to another user’s private chat on its own.
To read another user’s investigation or automation conversation, you need access through the associated resource. Refer to Investigation access and Automation access for the required permissions and visibility rules.
Control access to investigations
Investigations use per-investigation visibility for normal access and an explicit tenant-wide permission for administration.
The Assistant Admin role includes grafana-assistant-app.investigations.all:read, which lets an administrator view every investigation in the stack, including another user’s private investigation and the chat that backs it. This permission grants read access only. It doesn’t let an administrator change an investigation’s team scope, pause or resume it, record hypothesis verdicts, or share it. Those actions still require the investigation’s creator or the appropriate role.
Control access to automations
Automations use scoped permissions for normal access and explicit tenant-wide permissions for administration.
The Assistant Admin role includes both tenant-wide permissions and all scoped automation permissions. Creating or editing an automation that runs as the Assistant service account also requires the Grafana organization Admin role; Assistant Admin alone is insufficient. Such an automation must use Everybody visibility. Every invocation uses the existing Assistant tenant service account and the organization’s system-initiated token pool. Tenant-wide read and write don’t expose another user’s private run history or grant permission to run or delete that user’s private automation. The UI labels these automations Private, shows their creator, and records the last editor when an administrator changes one.
Control access to Pages
Pages requires its own permissions in addition to access to the Assistant plugin. Grant the actions needed for each person’s work through Grafana RBAC. For role assignment and custom roles, refer to Manage RBAC roles.
These permissions don’t imply one another. Readers need pages:get and grafana-assistant-app.settings.pages:read to load the page and its network access policy. To create and refine pages through Assistant, also grant pages:create, pages:update, and grafana-assistant-app.chats:access. Edit page on an existing publication also requires both create and update permissions because editing starts in a new conversation. To configure network access through settings, grant both Pages settings read and write permissions. All these workflows require plugins.app:access scoped to plugins:id:grafana-assistant-app.
The built-in Assistant roles include Pages settings read access. Include it in custom roles for page readers and authors too. Without it, pages block direct connections beyond Grafana and its asset CDNs, even when the stack or page allows additional origins.
Pages permissions don’t replace folder access or sharing restrictions. Folder pages require folder view access to read and folder edit access to publish or manage. An unlisted page requires access through its sharing settings, and only its author can update its content, change its sharing, restore a version, or unpublish it. The author still needs the matching Pages permission.
Reading a shared page doesn’t grant access to its author’s conversation, data sources, or external accounts. Live queries and external account actions use the reader’s access. Published previews can show data captured with the publisher’s access, so review the audience before publishing. For the workflows and network controls, refer to Grafana Pages.
Control access to skills
Skills use separate permissions for personal and deployment-wide scope.
Users with Assistant User can create, edit, and delete their own Just me skills. Users with Assistant Admin can also create, edit, and delete Everybody skills for the deployment. Users who don’t have deployment-wide skill permissions can still view shared skills, but they can’t modify them.
Control access to usage analytics and limits
The Assistant > Usage page is gated by the grafana-assistant-app.usage:read permission. Editing limits from that page requires grafana-assistant-app.usage:write.
By default, these permissions are included in the Assistant Admin role. The Assistant Admin role is granted to the organization Admin basic role by default.
Enable Grafana Cloud MCP access
Grafana Cloud MCP access is automatically included for users with the Editor role or higher. To grant Grafana Cloud MCP access to users without the Editor role:
- Sign in as an organization administrator.
- Navigate to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant Cloud MCP User.
- Click Apply.
Grafana Cloud MCP connections come in three levels of access, and a user can only authorize a level they hold the permission for:
Query access lets a connection run queries against SQL data sources, for example, ClickHouse, Snowflake, Athena, and InfluxDB. These queries run as written, so a connection with query access can change data when the data source credentials allow it. Read access on its own doesn’t include these tools.
To allow users to authorize write-scoped Grafana Cloud MCP connections, which enable tools that create or modify resources, add the Assistant Admin role. Write access includes query access.
When an MCP client asks for access, the authorization page lists each level as a separate checkbox. Users can clear any level they don’t want to grant, and levels they can’t authorize appear unavailable.
For more information, refer to Grafana Cloud MCP server.
Enable MCP server management
To allow users to configure personal MCP servers without granting full Editor access:
- Sign in as an organization administrator.
- Navigate to Administration > Users and access > Users.
- Select the user and open the Role picker.
- Choose Assistant > Assistant MCP User.
- Click Apply.
MCP servers configured with Everybody scope require deployment-wide MCP permissions, typically the Grafana Admin basic role or Assistant Admin.
Configuring a personal or shared MCP server to use PDC also requires grafana-assistant-app.mcps.pdc:write. This permission is included in Assistant Admin by default. The permission is required for all updates to existing MCP servers that use PDC.
Sandbox secret permissions
When sandbox secrets are enabled, creating, editing, or deleting a secret requires a verified human identity and the Assistant action for that operation. Assistant stores new secret values itself, so they don’t need Grafana Secrets Manager permissions. Existing standalone Secrets Manager records still need the matching Secrets Manager permissions, which coding roles don’t grant:
Assistant Coding User includes both read actions and the personal create, write, and delete actions. Assistant Coding Maintainer and Assistant Coding Admin include all eight actions. None of these actions require global coding-settings write. No role gives access to another user’s personal secrets through Assistant. Changing a secret’s owner scope requires write access to both scopes.
Secret grants moved from Assistant User, Assistant MCP User, and Assistant Admin to the coding roles. Default basic-role assignments keep access. If you assigned one of those general roles explicitly, or a custom role that managed secrets through coding-settings write, add a coding role or the secret actions.
Repository selection limits which sandbox runs receive a secret. It doesn’t grant repository access. Authorized runs use matching secrets without management permissions. Runs without a user identity receive only shared secrets.
Match permissions to resource visibility
Personal and shared read permissions are independent. For rules, skills, suggested prompts, and MCP servers, user:read lets you read your own private resources, while tenant:read lets you read resources shared with the stack. Lists include only the scopes you can read. Neither grant lets you read another user’s private resources.
For suggested prompts, these permissions are grafana-assistant-app.quickstarts.user:read for your private prompts and grafana-assistant-app.quickstarts.tenant:read for prompts shared with your stack.
Assistant also needs the matching read permission to use these resources in a conversation. Chat access alone doesn’t grant it. If a shared rule or MCP server isn’t available, ask your administrator to check your shared-resource read permissions. Custom roles need both read grants to use both personal and shared resources.
Understand memory access control
Assistant respects Grafana’s existing RBAC when accessing memories:
- Dashboard memory: Search results are filtered based on your Grafana folder and dashboard permissions. You can only discover and reference dashboards you have access to view.
- Infrastructure memory: Semantic search results are filtered by datasource permissions. You can only access infrastructure metrics from datasources you’re authorized to query. If permissions can’t be verified, access is denied by default.
This ensures Assistant never exposes data beyond your existing Grafana permissions.
Map permissions to actions
Each Assistant role grants a set of permissions. Use the tables below when you need to understand or audit the underlying RBAC settings.
Core permissions
Actions and required permissions
Permissions with a * suffix mean the role needs read, create, write, and delete access for that feature area.
Next steps
- Review Manage your data privacy and security to understand data handling, third-party providers, security measures, and access controls.
- Review Pricing and limits to understand projected costs and limits.


