Custom roles in Splunk Observability Cloud

Manage users: Create custom roles for users in Splunk Observability Cloud

Predefined roles in Splunk Observability Cloud

Splunk Observability Cloud has built-in roles and the ability to add custom roles. The four built-in roles with predefined capabilities include the following:

  • admin

  • power

  • usage

  • read_only

For general information on these predefined roles, see About roles in Splunk Observability Cloud. For more specific details on how predefined roles map to capabilities in Splunk Observability Cloud, see Splunk Observability Cloud matrix of roles and capabilities.

Prerequisites

To create custom roles, you must meet the following prerequisites:

Custom roles and cross-region connections

You can use custom roles in cross-region connections only for Splunk Cloud Platform version 10.0.2503 and later.

For Splunk Cloud Platform releases prior to 10.0.2503, you can use custom roles only if your Splunk Observability Cloud and Splunk Cloud Platform organizations are in the same region.

Custom roles and multi-org

If you have multiple Splunk Observability Cloud organizations paired with your Splunk Cloud Platform organization, you can customize a role for a specific observability organization. See Connect multiple Splunk Observability Cloud organizations for more information on a multi-org environment.

A custom role isa custom set of capabilities that the admin selects. You can use a policy to assign a capability or set of capabilities to a specific organization in a multi-org environment. See Create authorization policies in Splunk web to learn about policies in general. Follow the instructions below to attach a policy to a set of capabilities.

You can create a policy for a custom role in two ways:
  • Use the Policy management page to find or create a policy then attach it to a capability.

  • Use the Roles management page, Capabilities tab to add a policy to a specific capability.

Use the Policy management page to create a policy and attach it to a custom role by following these steps:
  1. Log in to Splunk Cloud Platform as an admin, then go to Settings > Policies.

  2. You can select an existing policy and edit it or select + Add policy then add a name.

    Note: You cannot edit the name of an existing policy. Once you name a policy, the name is permanent and you must delete the policy and create a new one to have a new name.
  3. In the Attribute field, select O11y Organization ID.
  4. In the Attribute value field, select the paired Splunk Observability Cloud organization to which you want to map this policy.
  5. Select the role and capability or capabilities you want to map to this paired Splunk Observability Cloud organization, then select Save Policy.

Use the Roles management page to attach a policy to a custom role by following these steps:
  1. Log in to Splunk Cloud Platform as an admin, then go to Settings > Roles and select the Capabilities tab.

  2. Select the plus sign ("+") next to the capability you want to map to a specific observability organization, then from the drop-down menu, select Create new policy or select an existing policy in the list.
    Warning: When you create a policy for a capability to map it to a specific organization, all other organizations effectively lose that capability. If a capability has no policies mapping it to specific organizations, the capability is, by default, accessible to all paired Splunk Observability Cloud organizations.
  3. In the Attribute field, select a Splunk Observability Cloud organization.

  4. Select the custom role you want to assign to that org in the Attribute value field.

How to create a custom role

After setting up Unified Identity and centralized user and role management, Splunk Cloud Platform is the role based access control (RBAC) store for Splunk Observability Cloud. You must create and manage all Splunk Observability Cloud roles in Splunk Cloud Platform. See Create and manage roles with Splunk Web to learn about roles in Splunk Cloud Platform.

To create a custom Splunk Observability Cloud role, follow these steps:

  1. Follow the instructions in the "Add or edit a role" section only of Create and manage roles with Splunk Web.

  2. In Splunk Cloud Platform, on Settings > Roles > Capabilities, specify the custom role capabilities by selecting any combination of capabilities from the table in the following section, Splunk Observability Cloud capabilities.
    Note: Capabilities are always additive in nature. You cannot take away the ability to do something by adding a capability. If you don't want users who hold a role to perform a certain function on your Splunk platform instance, then do not assign that role a capability that lets a user perform that function.
  3. [Recommended] Add the o11y_read_basic_ui_access and o11y_read_org_user capabilities to all custom roles to ensure users have all required baseline UI access.

    Warning: Capabilities relating to Dashboard Groups, Tokens, and Global Search require that a user also have the "o11y_admin" role. Even if a user has read, update, or delete capabilities for Dashboard Groups, Tokens, or Global Search, the user cannot utilize those capabilities without a full admin role, "o11y_admin".

Splunk Observability Cloud capabilities

The following table lists all of the capabilities that you can add to a role to define the role's permissions in Splunk Observability Cloud:

Table 1. Splunk Observability Cloud capabilities
Capability nameWhat it lets users assigned to this role doadminpowerusageread_only
ASSIGN_ROLEGrants user permission to assign a role to a given object type (e.g. NamedToken, OrgUser, or Team)X
CREATE_AUTOMATED_ARCHIVAL_EXEMPT_METRICSGrants user permission to generate automated archival exempt metricsXX
CREATE_AUTOMATED_ARCHIVAL_SETTINGSGrants user the permission to create and generate automated archival settings for the org with provided lookback and grace periodsX
CREATE_BUSINESS_JOURNEYGrants user permission to create Business JourneyXX
CREATE_CHARTGrants user permission to create a new chartXX
CREATE_CHILD_ORGGrants user permission to create new child organizationX
CREATE_CONFIGGrants user permission to create a visibility filter on APM resourcesX
CREATE_COST_INSIGHTS_BILLING_CREDENTIALGrants user permission to store billing credentials in the Cost Insights app in order to fetch real cost data from cloud providersXX
CREATE_DASHBOARDGrants user permission to create a new dashboard. You must also assign the CREATE_SHAREABLE_SNAPSHOT capability to allow the user to save the dashboardXX
CREATE_DASHBOARD_DATA_LINKGrants user permission to create a dashboard data linkXX
CREATE_DASHBOARD_GROUPGrants user permission to create a new dashboard groupXX
CREATE_DASHBOARD_PRIVATE_AREAGrants user permission to create dashboards in a private areaXX
CREATE_DEA_INSIGHTSGrants user the permission to create RUM funnelsXX
CREATE_DETECTORGrants user permission to create a detectorXX
CREATE_DIMENSIONGrants user permission to create a new dimensionXX
CREATE_EVENTGrants user permission to create a new eventXX
CREATE_FIELD_ALIASINGGrants user permission to create aliasesXX
CREATE_GLOBAL_DATA_LINKGrants user permission to create data links and dashboard data linksX
CREATE_GOOGLE_AUTHGrants user permission to create a google domain for auth configurationX
CREATE_INTEGRATIONGrants user the permission to create an integrationX
CREATE_LOGS_PIPELINEGrants user permission to create a new logs pipeline with processing rulesXX
CREATE_LOGS_QUERIESGrants user permission to create saved logs queriesXX
CREATE_METRICGrants user permission to create a new metricXX
CREATE_METRIC_RULESETGrants user permission to create a metric rulesetXX
CREATE_MUTING_RULEGrants user permission to create a new muting ruleXX
CREATE_NAMEDTOKENGrants user permission to create a Session or Org TokenX
CREATE_NAVIGATORGrants user permission to create a new navigatorX
CREATE_ORG_EC_PAIRINGGrants use permission to create the pairing between a Splunk platform and a Splunk Observability Cloud orgX
CREATE_ORG_USERGrants user permission to create a new userX
CREATE_PACKAGEGrants user permission to create an SFX PackageXX
CREATE_REPORTGrants user permission to create an APM reportX
CREATE_ROLEGrants user permission to create a new custom roleX
CREATE_SECUREAPP_ALERTGrants user permission to create AlertingActions in SecureappXX
CREATE_SHAREABLE_SNAPSHOTGrants user permission to create a shareable snapshot of an existing chart or dashboardXX
CREATE_SLOGrants user permission to create a new service level objectiveXX
CREATE_SSOGrants user permission to create SSO connectionsXX
CREATE_SYNTHETICS_DOWNTIME_CONFIGURATIONGrants user permission to create synthetic downtime configurationsXX
CREATE_SYNTHETICS_PRIVATE_LOCATIONGrants user permission to create synthetic private locationXX
CREATE_SYNTHETICS_PRIVATE_LOCATION_TOKENGrants user permission to create a synthetic private location tokenXX
CREATE_SYNTHETICS_TESTGrants user permission to create synthetic testsXX
CREATE_TAGGrants user permission to create a new tagXX
CREATE_TEAM_MANAGERGrants user permission to:
  • add members to existing teams where user is a team manager

  • create team members as team manager

  • Update existing members to team manager

  • make changes to a team irrespective of being a team manager

XX
CREATE_TEAM_MEMBERGrants user permission to:
  • create a new team

  • add members to existing teams where user is a team manager

  • add a user to a team

  • create team members as team manager

  • make changes to a team irrespective of being a team manager

  • update existing teams

XX
DELETE_AUTOMATED_ARCHIVAL_EXEMPT_METRICSGrants user permission to delete automated archival exempt metricsXX
DELETE_AUTOMATED_ARCHIVAL_SETTINGSGrants user the permission to delete existing automated archival setting for the org X
DELETE_BUSINESS_JOURNEYGrants user permission to delete a Business JourneyXX
DELETE_CHARTGrants user permission to delete an existing chartX
DELETE_CHILD_ORGGrants user the permission to delete (decommission) its child organizationX
DELETE_CONFIGGrants user permission to delete APM services filtersX
DELETE_COST_INSIGHTS_BILLING_CREDENTIALGrants user permission to delete billing credentials in the Cost Insights appXX
DELETE_DASHBOARDGrants user permission to delete an existing dashboardXX
DELETE_DASHBOARD_DATA_LINKGrants user permission to delete an existing data linkXX
DELETE_DASHBOARD_GROUPGrants user permission to delete an existing dashboard groupXX
DELETE_DASHBOARD_PRIVATE_AREAGrants user permission to delete dashboards in private areaXX
DELETE_DEA_INSIGHTSGrants user permission to delete RUM funnelsXX
DELETE_DETECTORGrants user permission to delete an existing detectorXX
DELETE_DIMENSIONGrants user permission to delete an existing dimensionXX
DELETE_EVENTGrants user permission to delete an existing eventXX
DELETE_GLOBAL_DATA_LINKGrants user permission to delete data links and dashboard data linksX
DELETE_INTEGRATIONGrants user permission to delete an existing integrationX
DELETE_METRICGrants user permission to delete an existing metricXX
DELETE_METRIC_RULESETGrants user permission to delete an existing metric rulesetXX
DELETE_MUTING_RULEGrants user permission to delete an existing muting ruleXX
DELETE_NAMEDTOKENGrants user permission to delete an existing named tokenX
DELETE_NAVIGATORGrants user permission to delete an existing navigatorX
DELETE_ORG_USERGrants user the permission to delete an existing userX
DELETE_PACKAGEGrants user permission to delete an existing SFX PackageXX
DELETE_ROLEGrants user permission to delete an existing custom roleX
DELETE_SAMLGrants user permission to remove the SAML IDP configuration for a given userX
DELETE_SECUREAPP_ALERTGrants user permission to delete AlertingActions in SecureappXX
DELETE_SLOGrants user permission to delete an existing Service Level ObjectiveX
DELETE_SYNTHETICS_DOWNTIME_CONFIGURATIONGrants user permission to delete synthetic downtime configurationsXX
DELETE_SYNTHETICS_PRIVATE_LOCATIONGrants user permission to delete synthetic private locationXX
DELETE_SYNTHETICS_PRIVATE_LOCATION_TOKENGrants user permission to delete synthetic private location tokenXX
DELETE_SYNTHETICS_TESTGrants user permission to delete synthetic testsXX
DELETE_TAGGrants user permission to delete an existing tagXX
DELETE_TEAMGrants user permission to delete an existing teamXX
DELETE_TEAM_MEMBERGrants user permission to remove an existing team member from a teamXX
EXECUTE_SIGNAL_FLOWGrants user permission to execute a SignalFlow computation using program text and paramsXXXX
LOGS_READ_ENTITY_MAPPINGSGrants user ability to read the generated mappings containing targeted splunk indexesXXXX
LOGS_WRITE_ENTITY_MAPPINGSGrants user ability to generate mappings for selected set of splunk indexes which are part of a connectionX
PREVIEW_AUTOMATED_ARCHIVALGrants user permission to preview the automated archival metricsXXXX
READ_AIEX
READ_ALERTGrant user permission to retrieve and display alertsXXXX
READ_ALIASGrants user permission to read the mapping alias for the metricsXXXX
READ_APM_DATAGrants user permission to read and write APM metricsets, business workflows, and extended trace retention settingsXXXX
READ_APM_PROFILING_DATAGrants the user permission to read APM profiling data setsXXXX
READ_AUTOMATED_ARCHIVAL_EXEMPT_METRICSGrants user permission to read automated archival exempted metricsXXXX
READ_AUTOMATED_ARCHIVAL_SETTINGSGrants user permission to read the automated archival settings for the orgXXXX
READ_BASIC_UI_ACCESSGrants user permission to use basic user interfaceXXXX
READ_BUSINESS_JOURNEYGrants user permission to read a Business JourneyXXXX
READ_CHARTGrants user permission to retrieve and display a list of chartsXXXX
READ_CHILD_ORGGrants user permission to retrieve and display its child organizationsX
READ_CONFIGGrants user permission to retrieve and display APM servicesXXXX
READ_COST_INSIGHTS_BILLING_CREDENTIALGrants user permission to list and view billing credentials in the Cost Insights appXXXX
READ_DASHBOARDGrants user permission to retrieve and display a list of dashboardsXXXX
READ_DASHBOARD_DATA_LINKGrants user permission to read a dashboard data linkXXXX
READ_DASHBOARD_GROUPGrants user permission to retrieve and display a list of dashboard groupsXXXX
READ_DASHBOARD_PRIVATE_AREAGrants user permission to read dashboards in private areaXX
READ_DEA_BASIC_ACCESSGrants user permission to read RUM funnelsXXXX
READ_DETECTORGrants user permission to retrieve and display detectorsXXXX
READ_DIMENSIONGrants user permission to retrieve and display a list of dimensions or a list of metricsXXXX
READ_DIMENSION, READ_METRIC_RULESETGrants user permission to retrieve and display a list of dimensions. Also grants user permission to retrieve and display a list of metric rulesetsXXXX
READ_ENTITYGrants user permission to:
  • View the discovered entities in the data management UI

  • View the OTel collectors count in the data management UI
  • Read the discovered entities via OTel collectors in the data management UI

XXXX
READ_EVENTGrants user permission to retrieve and display a list of eventsXXXX
READ_FIELD_ALIASINGGrants user read access to aliasesXXXX
READ_GENERAL_SETTINGSGrants user permission to read the general settingsX
READ_GLOBAL_BUCKET_SEARCHGrants user permission to do a global searchXXXX
READ_GLOBAL_DATA_LINKGrants user permission to read data links and dashboard data linksXXXX
READ_INCIDENTGrants user permission to retrieve incidentsXXXX
READ_INSIGHTSGrants user permission to read Kubernetes insights based on metric data from the last 20 secondsXXXX
READ_INTEGRATIONGrants user permission to retrieve and display a list of integrationsXXXX
READ_LOG_OBSERVERGrants user read access to Log Observer Connect connections, saved queries, user preferences, logs data, and indices XXXX
READ_LOGS_PIPELINEGrants user permission to view the configured logs pipeline and processing rulesXX
READ_METRICGrants user permission to retrieve and display a list of metricsXXXX
READ_METRIC_RULESETGrants user permission to retrieve and display a list of metric rulesetsXXXX
READ_METRIC_USAGEGrants user permission to read metric usage for various domain objects, such as NamedTokens, Metrics, Charts, and Detectors. The user also requires read capabilities on such domain objects.XXXX
READ_METRIC, READ_METRIC_RULESETGrants user the permission to retrieve and display a list of metrics and metric rulesetsXXXX
READ_MUTING_RULEGrants user permission to retrieve and display a list of muting rulesXXXX
READ_NAMEDTOKENGrants user permission to retrieve and display a list of named tokensXX
READ_NAVIGATORGrants user permission to retrieve and display a list of navigatorsXXXX
READ_OPEN_APIGrants user permission to retrieve the o11y OpenAPI specification documentXXXX
READ_ORG_USERGrants user permission to:
  • create a new user

  • retrieve and display a list of existing users

XXXX
READ_ORGANIZATIONGrants user permission to see organization informationXXXX
READ_ORGANIZATION_OVERVIEWGrants user the permission to read organization overviewX
READ_ORGANIZATION_QUOTAGrants user permission to read the organization's quota settingsXXXX
READ_PACKAGEGrants user permission to read SFPackagesXXXX
READ_PARENT_ORGGrants user permission to retrieve and display its parent organizationX
READ_PERMISSIONGrants user permission to retrieve the business objects' permissionsXXXX
READ_PREFERENCESGrants user permission to read users' preferencesXXXX
READ_ROLEGrants user permission to retrieve and display a list of existing rolesXX
READ_RUM_BASIC_ACCESSGrants user permission to:
  • get the current custom indexed tags configuration

  • get a list of all known RUM standard tags

  • get a list of all organization IDs for the realm

  • get the top apps for a given org

  • get an error summary for each fingerprint in a list of semi-colon delimited error fingerprints

  • get the Druid metric family for a given metric name

  • cancel the job for a given search job ID (Returns a 202 if the request for cancellation is accepted or a 404 if the job doesn't exist)

  • get the results for a given span search job ID

  • get exemplar session IDs from Druid for a given time range and filters, then further hydrate the session IDs with session details from Presto

  • get MTSes from Druid for a time range and filters (Timestamps in the time series represent the end time of the interval returned)

  • start a job to get exemplars for a given URL config rule

  • cancel the job for a given exemplar job ID (Returns a 202 if the request for cancellation was accepted or a 404 if the job doesn't exist)

  • get the results from the job if given an exemplar job ID

  • get the current custom indexed tags definition for a given org ID

  • get the current URL config rules object for a given org ID

  • get the current URL config version object for a given org ID

  • get normalized URLS for a given URL

  • get a list of tag values for given filters (useful for populating type-ahead lists in a UI)

  • get the session chunk belonging to a span session for given session ID and chunk batch IDs

  • get spans for a given session ID and span ID from that session and its neighboring (+/-) spans with chunk start time

  • get session summary (start time, end time, tags, and session chunks) for a given span session ID

  • get SR scripts belonging to a given SR session ID

  • get SR data for a given SR session ID, script ID and offset

  • get customer usage data for the org for a given start and end time

  • start a job to get spans that match a given start time, end time, and filters

XXXX
READ_SECUREAPPGrants user permission to read APIs v2/secureapp/*. User can get a) the vulnerabilities associated with the packages in the running applications, b) the libraries and its details, and c) the services.XXXX
READ_SHAREABLE_SNAPSHOTGrants user permission to retrieve an existing shareable snapshotXXXX
READ_SLOGrants user permission to retrieve and display a list of objectivesXXXX
READ_SSOGrants user permission to retrieve Single Sign On connectionXXXX
READ_SUGGESTIONGrants user permission to use suggestions for entitiesXXXX
READ_SYNTHETICS_DOWNTIME_CONFIGURATIONGrants user permission to read synthetic downtime configurationsXXXX
READ_SYNTHETICS_PRIVATE_LOCATIONGrants user permission to read synthetic private locationXXXX
READ_SYNTHETICS_PRIVATE_LOCATION_TOKENGrants user permission to read synthetic private location tokenXXXX
READ_SYNTHETICS_TESTGrants user permission to read synthetic testsXXXX
READ_TAGGrants user permission to retrieve and display a list of tagsXXXX
READ_TEAMGrants user permission to retrieve and display a list of existing teamsXXXX
READ_TEAM_MEMBERGrants user permission to retrieve and display a list of existing team membersXXXX
READ_USAGEGrants user permission to view subscription usage dataXXXX
UPDATE_AUTOMATED_ARCHIVAL_SETTINGSGrants user permission to update existing automated archival settings for the org X
UPDATE_BASIC_UI_ACCESSGrants user permission to use basic UIXXXX
UPDATE_BUSINESS_JOURNEYGrants user permission to update Business JourneyXX
UPDATE_CHARTGrants user permission to make changes to an existing chartXX
UPDATE_CHILD_ORGGrants admin permission to update its child organization properties including subscription resource allocationX
UPDATE_CONFIGGrants user permission to update APM services filtersX
UPDATE_DASHBOARDGrants user permission to make changes to an existing dashboardXX
UPDATE_DASHBOARD_DATA_LINKGrants user permission to change existing dashboard data links or existing data linksXX
UPDATE_DASHBOARD_GROUPGrants user permission to make changes to an existing dashboard group. You must also assign the UPDATE_SHAREABLE_SNAPSHOT capability to allow the user to save the dashboard groupXX
UPDATE_DASHBOARD_PRIVATE_AREAGrants user permission to update dashboards in private areaXX
UPDATE_DEA_INSIGHTSGrants user permission to update RUM funnelsXX
UPDATE_DETECTORGrants user permission to make changes to an existing detectorXX
UPDATE_DIMENSIONGrants user permission to make changes to an existing dimensionXX
UPDATE_FIELD_ALIASINGGrants user permission to update or delete field aliasesXX
UPDATE_GLOBAL_DATA_LINKGrants user permission to update existing data links and existing dashboard data linksXX
UPDATE_GLOBAL_TEAM_MANAGERGrants user permission to:
  • create a new team

  • add members to existing teams where user is a team manager

  • add a user to a team

  • create team members as team manager

  • make changes to a team irrespective of being a team manager

  • update existing team members to team manager

XX
UPDATE_INCIDENTGrants user permission to clear an existing incidentXX
UPDATE_INTEGRATIONGrants user permission to make changes to an existing integrationX
UPDATE_LOGS_PIPELINEGrants user permission to update a logs pipeline with processing rulesXX
UPDATE_LOGS_QUERIESGrants user permission to create, update, and delete saved logs queriesXX
UPDATE_METRICGrants user permission to make changes to an existing metricXX
UPDATE_METRIC_RULESETGrants user permission to make changes to an existing metric rulesetXX
UPDATE_METRIC_RULESET_ROUTINGGrants user the permission to make changes to an existing metric ruleset's routing.X
UPDATE_MUTING_RULEGrants user permission to make changes to an existing muting rule objectXX
UPDATE_NAMEDTOKENGrants user permission to make changes to an existing named tokenX
UPDATE_NAVIGATORGrants user permission to make changes to an existing navigatorX
UPDATE_ORG_USERGrants user permission to make changes to an existing userX
UPDATE_ORGANIZATIONGrants user permission to make changes to an existing organization's detailsX
UPDATE_OTEL_MIGRATIONGrants user permission to run OTel migration from 1x to 2xX
UPDATE_PACKAGEGrants user permission to update an existing SFPackageXX
UPDATE_PREFERENCESGrants user permission to update the user''s preferencesXXXX
UPDATE_ROLEGrants user permission to make changes to an existing roleX
UPDATE_RUM_BROWSER_MAPPING_FILEGrants user permission to upload the RUM browser mapping fileXX
UPDATE_RUM_CONFIGGrants user permission to:
  • update the current custom indexed tag config for the given org

  • delete a given tag for a given org ID

  • pause indexing of a specified tag and org ID

  • launch a cardinality job for a given tag and org ID to analyze the specified tag for indexing

  • Enable the tag analyzed by the current cardinality job to be indexed for a given org ID

  • restart the current cardinality job for a given org ID

  • stop the current cardinality job for a given org ID

X
UPDATE_RUM_MOBILE_MAPPING_FILEGrants user permission to upload the RUM mobile mapping fileXX
UPDATE_RUM_URL_GROUPING_RULEGrants user permission to update the current URL config object (modify, add, or remove rules)XX
UPDATE_SECUREAPP_ALERTGrants user permission to update AlertingActions in SecureappXX
UPDATE_SERVICE_CENTRIC_VIEW_CONFIGGrants user permission to create or update an APM Services configuration for a serviceXX
UPDATE_SHAREABLE_SNAPSHOTGrants user permission to update an existing SFPackageXX
UPDATE_SLOGrants user permission to make changes to an existing service level objectiveXX
UPDATE_SYNTHETICS_DOWNTIME_CONFIGURATIONGrants user permission to update synthetic downtime configurationsXX
UPDATE_SYNTHETICS_TESTGrants user permission to update synthetic testsXX
UPDATE_TAGGrants user permission to make changes to an existing tagXX
UPDATE_TEAMGrants user permission to:
  • update existing teams

  • add members to existing teams where user is a team manager

  • make changes to a team irrespective of being a team manager

XX
UPDATE_TEAM_MEMBERGrants user permission to:
  • update existing members to team manager

  • create team members as team manager

  • make changes to a team irrespective of being a team manager

XX
WRITE_ENTITYGrants user permission to update a discovered entity in the data management UIXX