For the complete documentation index, see llms.txt. This page is also available as Markdown.

Role-Based Access Control

Role-Based Access Control (RBAC) lets you configure fine-grained user access in Panther.

A role is a configurable set of permissions, and each user is assigned to one role. You can use the default roles provided, customize them to your needs, and/or create new roles. For certain permissions, you can restrict accessible log types. It is possible to create a role with no permissions.

You can manage roles in your Panther Console or with the Panther REST API or GraphQL API.

Panther user roles

Default Panther roles

When you first deploy Panther, the following three roles are automatically created for you:

  • Admin

    • This role is automatically assigned to all existing users and has all available permissions.

  • Analyst

    • This role can use all the cloud security and log analysis features, but cannot modify settings.

  • AnalystReadOnly

    • This role can view resources and alerts and Python code, but cannot change anything.

The default roles screen in the Panther Console shows three roles: Admin, Analyst, and AnalystReadOnly.

Customizing roles

A user assigned to a role that has the Manage Users permission (or UserModify, if created through the API) can customize all other roles.

  • There is no limit on the number of roles you can create.

  • You can rename roles, but all roles must have unique names.

  • You can change permissions on roles, but at least one user must have the Manage Users/UserModify permission.

  • You can delete a role if no users are currently assigned to it.

The role editor screen in the Panther Console displays a field to add a name, and options to customize permissions.

For instructions on customizing a role with restrictions on certain log types, see the RBAC per log type section below.

Permission names in the Console and API

Panther Console
Public API Permission
Description

AI Run As

AIRunAsModify

Configure which user or API token AI automations (auto-triage, scheduled prompts) execute as

Bulk Upload

BulkUpload

Allow bulk upload of both policies and rules

Bulk Upload Validate

BulkUploadValidate

Allow a bulk upload to be validated

Manage AI Responses

ManageAIResponses

Edit/delete any user's AI responses

Manage Alerts

AlertModify

Read + update, add, and delete alerts

Manage API Tokens

OrganizationAPITokenModify

List/describe + create, modify, delete Panther API tokens

Manage Cloud Security Sources

CloudsecSourceModify

Read + add, delete, and modify cloud security integrations

Manage Log Sources

LogSourceModify

Read + add, delete, and modify log analysis integrations

Manage Policies

PolicyModify

Read + update, add, and delete policies

Manage Rules

RuleModify

Read + update, add, and delete rules

Manage Saved Searches

DataAnalyticsModify

Creates and updates saved queries

Manage Scheduled Prompts

ManageScheduledPrompts

Create, edit, delete, toggle, and bulk-import AI scheduled prompts

Manage Users

UserModify

List + invite, delete, and modify users & their roles

Query Data Lake

DataAnalyticsRead

Run queries over historical data

Read Alerts

AlertRead

View alerts

Read API Token Info

OrganizationAPITokenRead

List/describe all Panther API tokens

Read Panther Settings Info

GeneralSettingsRead

View basic settings like error reporting and org name

Read User Info

UserRead

List all Panther users & available roles

Run Panther AI

RunPantherAI

Use Panther AI

View AI Private Responses

ViewAIPrivateResponses

View all users' private AI responses

View Cloud Security Sources

CloudsecSourceRead

View list of cloud security integrations and their configurations

View Log Sources

LogSourceRead

View list of log analysis integrations and their configurations

View Overview

SummaryRead

Fetch summary data for the overview dashboards

View Policies

PolicyRead

View policies and their compliance status

View Rules

RuleRead

View rules

View Scheduled Prompts

ViewScheduledPrompts

View AI scheduled prompts and their run history, and download them as YAML

Updating a role's permissions

To update the permissions associated to a role:

  1. At the bottom of the left-hand navigation bar in your Panther Console, click Settings, then navigate to Access & Authentication > Roles & Permissions.

  2. In the upper-right corner of the tile for the role you'd like to update, click the three docs icon > Edit. To the right of an "AnalystReadOnly" title, an arrow is drawn from a three dots icon to an "Edit" option in a sub-menu.

  3. Make desired changes to the permissions set.

  4. Click Update Role.

Permission changes will not take effect until the affected user refreshes the browser where they are logged in to Panther or signs out and back in to Panther.

If, after expanding a user's permissions, the user continues to see an access denied error, verify they have the required read permission for the page they're attempting to access.

Creating a new role

Follow the instructions below to create a new role in the Console. Alternatively, you can create a new role using the Panther GraphQL API or REST API.

  1. At the bottom of the left-hand navigation bar in the Panther Console, click Settings, then navigate to Access & Authentication > Roles & Permissions.

  2. Click Create New.

  3. In the Name field, enter a descriptive name for the role.

  4. Select the checkbox for each of the permissions you'd like this role to have.

    1. Currently, some permissions support log type filtering. (See RBAC per log type for more information.) If you select a permission that supports log type restrictions, choose one of the following options:

      • Full access to logs

      • Allow access to selected Log Types

      • Deny access to selected Log Types In an Alerts section, a checkbox next to View Alerts is checked. Below, there are three radio buttons: Full access to logs, Allow access to selected Log Types, and Deny access to selected Log Types. The second one has been selected, and a Select Log Types dropdown has one value: AWS.ALB

    2. If you opted to Allow access to selected Log Types or Deny access to selected Log Types, in the Select Log Types dropdown, select the individual log types the user should be allowed to access or restricted from accessing.

      • Be sure to read through the limitations listed below to understand the current limitations of the RBAC by log type feature.

      • Remember that log type selections sync across all permissions that support log type restrictions, for a given role.

  5. Click Create Role.

    • Note that it may take a up to one minute for your change to propagate across all of Panther's services.

You can now assign the role to users you onboard onto Panther.

RBAC per log type

Prerequisites for Cloud Connected Snowflake accounts

If you're using a Cloud Connected Snowflake instance, in order to enable RBAC per log type, the following must be true:

How to restrict log types for a certain role

You can create a new role and restrict log access for it, or alter the permissions of an existing role to restrict log access. See the Creating a new role instructions, paying attention to Step 4.

You can use the Run Log Queries permission to limit a role's log type access in Panther's search tools, including Data Explorer and Search.

In Data Explorer, only tables for the log types the user has access to will display in the Data Explorer filter list, as well as in predictive text in the SQL editor.

When pivoting into Data Explorer from another area of the Console (such as from a log source's Schemas view), if the filled SQL query references a table for a log source the user does not have access to, upon running the query, the user will receive an error.

In Search, database tables for restricted log types will not populate in the tables filter.

RBAC per log type for alerts

You can use the View Alerts and Manage Alerts permissions to limit a role's access to alerts based on log type. When selecting either of these permissions, you will be prompted to select the log types to allow or restrict access to.

The set of accessible log types selected for View Alerts and Manage Alerts will be synced with the Run Log Queries permission. One role cannot have two permissions with different log type restrictions.

All limitations for RBAC per log type for search, listed above, apply—except for the alerts limitation.

Panther includes several AI-related permissions that control access to Panther AI features:

Run Panther AI

The Run Panther AI permission allows users to interact with Panther AI features, including:

  • Starting AI conversations and asking questions

  • Running AI alert triage on demand

  • Viewing scheduled AI prompts

  • Accessing AI-powered analysis and recommendations

AI Run As

The AI Run As permission is an administrative permission that allows users to configure run-as user settings for AI automations. Users with this permission can:

  • Configure scheduled prompts to run as a specific user or API token instead of the prompt creator

  • Configure auto-run AI alert triage to run as a specific user or API token instead of using system-level permissions

  • Specify which user account's permissions and data access should be used for automated AI executions

The AI Run As permission automatically implies Run Panther AI. Users with AI Run As are automatically granted Run Panther AI.

View Scheduled Prompts

The View Scheduled Prompts permission allows users to view scheduled AI prompts and their run history, and to download prompts as YAML. It is included in the default Admin, Analyst, and AnalystReadOnly roles, because Run Panther AI implies it.

Viewing a prompt does not allow creating, editing, or deleting it — that requires Manage Scheduled Prompts.

Manage Scheduled Prompts

The Manage Scheduled Prompts permission allows users to create, edit, delete, enable/disable, and bulk-import scheduled AI prompts (including via bulk upload of YAML files). It is included in the default Admin role only.

Last updated

Was this helpful?