Permissions
StackState Self-hosted v4.5.x
This page describes StackState v4.5.x. The StackState 4.5 version range is End of Life (EOL) and no longer supported. We encourage customers still running the 4.5 version range to upgrade to a more recent release.
Overview
Permissions in StackState allow Administrators to manage the actions that each user or user group can perform inside StackState and the information that will be shown in their StackState UI. Only the feature set relevant to each user's active role will be presented. The actions, information and pages that a user does not have access to are simply not displayed in their StackState UI.
Permissions are stored in StackGraph. This means that:
If you perform an upgrade with "clear all data", permission setup will also be removed.
To completely remove a user, they must also be manually removed from StackGraph.
There are two types of permission in StackState:
System permissions - Scope user capabilities, such as access to settings, query execution and scripting.
View permissions - Allow for CRUD operations on StackState Views.
Predefined roles
StackState comes with four predefined roles:
Administrators (
stackstate-admin
): Have access to all views and have all permissions, except for the platform management permissionaccess-admin-api
.Platform Administrators (
stackstate-platform-admin
): Have platform management permissions and have access to all views.Power Users (
stackstate-power-user
): This role is typically granted to users that need to configure StackState for their team(s), but will not manage the entire StackState installation. Power users have all Administrator permissions except for:execute-restricted-scripts
update-permissions
upload-stackpacks
Guests (
stackstate-guest
): Have read access, as you can see below when we use the StackState CLI to show granted permissions for the role:
Default and custom role names
The default pre-defined role names (stackstate-admin
, stackstate-platform-admin
, stackstate-power-user
, stackstate-guest
) are always available. Additional custom role names can be added that have the same permissions. Below is an example of how to do this for both Kubernetes and Linux installations.
Include this YAML snippet in an authentication.yaml
when customizing the authentication configuration to extend the default role names with these custom role names.
To use it in for your StackState installation (or already running instance, note that it will restart the API):
All permissions in StackState
There are two types of permission in StackState:
System permissions - Scope user capabilities, such as access to settings, query execution and scripting.
View permissions - Allow for CRUD operations on StackState Views.
System permissions
System permissions scope user capabilities, such as access to settings, query execution and scripting. They are set system wide.
See also the full list of view permissions.
Permission | Purpose | Guest | Power user | Admin | Platform Admin |
---|---|---|---|---|---|
| Access the CLI page. This provides the API key to use for authentication with the StackState CLI. | ✅ | ✅ | ✅ | ✅ |
| Access the Explore page. | ✅ | ✅ | ✅ | - |
| Execute component actions. | ✅ | ✅ | ✅ | - |
| Add and remove stars from views. | ✅ | ✅ | ✅ | ✅ |
| Access the topology filter. | ✅ | ✅ | ✅ | - |
| List all granted permissions across the entire system via the CLI. | ✅ | ✅ | ✅ | - |
| Change visualization settings. | ✅ | ✅ | ✅ | - |
| Access the Analytics page. | - | ✅ | ✅ | - |
| Access the administrator API. | - | - | - | ✅ |
| Access StackState logs via the CLI. | - | ✅ | ✅ | ✅ |
| Access StackState synchronization status and data via the CLI. | - | ✅ | ✅ | - |
| Access StackState receiver data via the CLI. | - | ✅ | ✅ | - |
| Create views. | - | ✅ | ✅ | - |
| Invoke a component template API extension (internal use only). | - | ✅ | ✅ | - |
| Reset or delete a synchronization. | - | ✅ | ✅ | - |
| Execute a query in the StackState UI Analytics environment. The | - | ✅ | ✅ | - |
| Import settings. | - | ✅ | ✅ | - |
| Export settings. | - | ✅ | ✅ | - |
| Persist and fetch Anomaly annotations in StackState. | - | ✅ | ✅ | - |
| Create or edit event handlers. | - | ✅ | ✅ | - |
| Create or edit new streams for components via the UI. | - | ✅ | ✅ | - |
| Create/update/delete topology elements. | - | ✅ | ✅ | - |
| Install/upgrade/uninstall StackPacks. | - | ✅ | ✅ | - |
| Access the Settings page. | - | ✅ | ✅ | - |
| Update settings. | - | ✅ | ✅ | - |
| Execute scripts using the HTTP script API in the StackState UI analytics environment. Also requires execute-scripts. | - | - | ✅ | - |
| Grant/revoke permissions or modify subjects. | - | - | ✅ | - |
| Upload new (versions of) StackPacks. | - | - | ✅ | - |
View permissions
View permissions allow for CRUD operations on StackState Views. They can be set for a specific view or all views (everything
).
See also the full list of system permissions.
Permission | Purpose | Guest | Power user | Admin | Platform Admin |
---|---|---|---|---|---|
| Access a specific view (when granted on a view) or all views (when granted on | ✅ | ✅ | ✅ | ✅ |
| Delete a specific view (when granted on a view) or all views (when granted on | - | ✅ | ✅ | - |
| Update a specific view (when granted on a view) or all views (when granted on | - | ✅ | ✅ | - |
Permissions by action
Page access
The permissions in the table below are required to access specific pages in the StackState UI. Without these permissions, the associated page will be hidden in the StackState UI and will not be accessible via its URL.
Page | Description | Permission | Guest | Power user | Admin | Platform admin |
---|---|---|---|---|---|---|
Explore Mode | Explore the unfiltered topology. |
| ✅ | ✅ | ✅ | - |
Views | Access can be granted either for a specific view using the view ID or for all views using the |
| ✅ | ✅ | ✅ | ✅ |
Analytics |
| - | ✅ | ✅ | - | |
CLI | The CLI page provides the API key to use for authentication with the StackState CLI. |
| ✅ | ✅ | ✅ | ✅ |
StackPacks | Browse, install and uninstall StackPacks. |
| - | ✅ | ✅ | - |
Settings |
| - | ✅ | ✅ | - | |
Settings > Export Settings | Allows the export of settings from Settings Menu. See settings page permissions. |
| - | ✅ | ✅ | - |
Settings > Import Settings | Allows the import of settings from Settings Menu. See settings page permissions. |
| - | ✅ | ✅ | - |
See the full list of permissions for pre-defined roles (above).
Topology
The permissions listed below are required to work with topology in StackState:
Action | Permission | Guest | Power user | Admin | Platform admin |
---|---|---|---|---|---|
Access and edit the view visualization settings. Adds the visualization settings button. |
| ✅ | ✅ | ✅ | - |
Basic and Advanced filtering. Adds filtering options. |
| ✅ | ✅ | ✅ | - |
Execute actions from the component context menu. |
| ✅ | ✅ | ✅ | - |
Drag and drop components. |
| - | ✅ | ✅ | - |
Add components button. Create relations between topology elements. |
| - | ✅ | ✅ | - |
See the full list of permissions for pre-defined roles (above).
Component/relation details
The permissions listed below are required to carry out specific actions in the component or relation details pane.
Action | Permission | Guest | Power user | Admin | Platform admin |
---|---|---|---|---|---|
Telemetry streams Add a new telemetry stream. Without this permission, only the Inspect action is available in the ... menu and the ADD button is hidden. |
| - | ✅ | ✅ | - |
Health checks Add a new StackState health check. Edit / delete an existing health check. Without this permission, the ... menu and the ADD button are hidden. |
| - | ✅ | ✅ | - |
Elements Delete an element or element template. |
| - | ✅ | ✅ | - |
Elements Edit an element or element template. |
| - | ✅ | ✅ | - |
See the full list of permissions for pre-defined roles (above).
View management
The permissions listed below can be set to access and work with views:
Action | Permission | Guest | Power user | Admin | Platform admin |
---|---|---|---|---|---|
Access a specific view or all views ( |
| ✅ | ✅ | ✅ | ✅ |
Add and remove stars from views. |
| ✅ | ✅ | ✅ | ✅ |
Access and edit the view visualization settings. Adds the visualization settings button. |
| ✅ | ✅ | ✅ | - |
Add or edit event handlers. Adds the ADD NEW EVENT HANDLER button. Without this permission, users will only be able to view details of existing event handlers. Example: Grant permissions to add and edit event handlers. |
| - | ✅ | ✅ | - |
Create views. Example: Grant permissions to create views. |
| - | ✅ | ✅ | - |
Save updates to a specific view or all views ( |
| - | ✅ | ✅ | - |
Delete a view. For a specific view or all views ( |
| - | ✅ | ✅ | - |
See the full list of permissions for pre-defined roles (above).
Analytics environment
The permissions listed below are required to access and execute scripts in the StackState UI analytics environment:
Action | Permission | Guest | Power user | Admin | Platform admin |
---|---|---|---|---|---|
Access the Analytics page in the StackState UI. Without this permission, the analytics environment will be hidden from the main menu, and it will not be accessible via its URL. |
| - | ✅ | ✅ | - |
Execute scripts in the StackState UI analytics environment. Adds the Execute button. |
| - | ✅ | ✅ | - |
Execute scripts that use the HTTP script API. Also requires |
| - | - | ✅ | - |
See the full list of permissions for pre-defined roles (above).
Settings page
The permissions listed below are required to access and manage settings in the StackState UI:
Action | Permission | Guest | Power user | Admin | Platform admin |
---|---|---|---|---|---|
Access the Settings pages in the StackState UI. Without this permission, the settings section will be hidden from the main menu and it will not be accessible via its URL. |
| - | ✅ | ✅ | - |
Add / Edit / Delete capabilities. This permission unlocks the ... menu and the ADD buttons on all Settings Pages. |
| - | ✅ | ✅ | - |
Export capability. Adds checkboxes to export individual items from the settings pages and the page Export Settings. |
| - | ✅ | ✅ | - |
Import capability. Adds the page Import Settings. |
| - | ✅ | ✅ | - |
Delete and Reset synchronization capabilities. |
| - | ✅ | ✅ | - |
See the full list of permissions for pre-defined roles (above).
Platform Management
The permissions listed below are required to access and manage StackState platform:
Action | Permission | Guest | Power user | Admin | Platform Admin |
---|---|---|---|---|---|
Access the administrator API. |
| - | - | - | ✅ |
Access StackState logs via the CLI. |
| - | ✅ | ✅ | ✅ |
See the full list of permissions for pre-defined roles (above).
Example CLI commands
Important note: All permissions in StackState are case sensitive.
List all permissions
List all permissions:
Show granted permissions
Show the permissions granted to a specific role.
Grant permissions
Allow a user to open a view
Provide a subject with permission to open a view:
Allow a user to create (save) views
Provide a subject with the system permission to create (save) views:
Allow a user to check StackState settings
Provide a subject with the system permission to check StackState settings:
Allow a user to add or edit event handlers
Provide a subject with the system permission to add new event handlers and edit existing event handlers:
Revoke permissions
Revoke permissions for a subject to open a view:
StackState UI with no permissions
Below is an example of how the StackState UI would look for a user without any permissions:
Last updated