Roles
This page describes the role models used by Tenable products to control access to API endpoints.
Most Tenable products, including Tenable Vulnerability Management, Tenable Web App Scanning, Tenable Exposure Management, and Tenable PCI ASV, use a combination of user roles and custom roles:
- User Roles, a set of predefined roles.
- Custom Roles, a set of privileges you tailor to your organization.
Container Security uses a separate model, described in Container Security Roles. The Managed Security Service Provider (MSSP) endpoints use user roles only, described in Managed Security Service Provider Roles.
User Roles
User roles are a set of Tenable-provided privileges that are predefined. For more information about user roles, see Tenable-Provided Roles and Privileges in the Tenable Vulnerability Management User Guide.
TipTo determine user permissions for the current user, use the GET /users/{user_id} endpoint.
| Name | Value | Description |
|---|---|---|
| Read-Only | 0 | Users with this role can view information without being able to make changes, run scans, or manage settings. This role is often assigned to auditors, compliance officers, or executives who need visibility into vulnerability data without risk of accidental modifications. |
| Basic | 16 | Users with this role can view scan results and manage their user profile. |
| Scan Operator | 24 | In addition to basic user privileges, users with this role can create and run scans based on scan templates (policies) that were created by a standard user or higher. They can also analyze scan results. |
| Standard | 32 | Users with this role can create scans, scan templates (policies), and user target groups. |
| Scan Manager | 40 | In addition to standard user privileges, users with this role can manage scanners, agents, and exclusions. |
| Administrator | 64 | Users with this role have the same privileges as the standard user but can also manage users, groups, agents, asset data exports, vulnerability data exports, exclusions, system target groups, user target groups, access groups, and scanners. Additionally, administrators can view scans created by all users. |
Custom Roles
Custom roles are a custom set of privileges that allow you to tailor user privileges and access to resources on your Tenable Vulnerability Management instance that are specific to your organization's needs. For more information about custom roles, see Custom Roles in the Tenable Vulnerability Management User Guide.
When you create a custom role, you can add all or some of the privileges described in this section.
CautionYou must include the toggle privilege for an application alongside any other privilege for that application. If you omit it, the request fails with a
400response and anInvalid role_permission_stringerror. Where a category within an application has its own toggle privilege, you do not need to include it: Tenable adds it for you. Each section below lists the toggle privileges that apply to it.
NotePrivileges are hierarchical: a privilege that grants more also grants less. Assigning
VM.VM_SCAN.VM_SCAN.EDIT, for example, also grantsVM.VM_SCAN.VM_SCAN.READ. Endpoint documentation names the least privilege that permits a request, so a role that holds a broader privilege for the same entity satisfies it as well. To see the relationships for a privilege, use the List role permissions endpoint.
Platform Settings
Toggle privilege: none required.
NoteThe Access Control Create, Edit, and Delete privileges each grant Access Control Read. A role that holds any one of them can perform every Access Control write operation, so endpoint documentation names the privilege that matches the operation rather than the only privilege that permits it.
Account Management
| Entity | Action | Role Privilege String |
|---|---|---|
| Access Control | Read | PS.ACCT_MGMT.AM_ACCESS_CONTROL.READ |
| Access Control | Create | PS.ACCT_MGMT.AM_ACCESS_CONTROL.CREATE |
| Access Control | Delete | PS.ACCT_MGMT.AM_ACCESS_CONTROL.DELETE |
| Access Control | Edit | PS.ACCT_MGMT.AM_ACCESS_CONTROL.EDIT |
| Access Control | Export | PS.ACCT_MGMT.AM_ACCESS_CONTROL.EXPORT |
| Access Control Users | Read | PS.ACCT_MGMT.AM_ACCESS_CONTROL_USERS.READ |
| Activity Logs | Read | PS.ACCT_MGMT.ACTIVITY_LOGS.READ |
| Activity Logs | Export | PS.ACCT_MGMT.ACTIVITY_LOGS.EXPORT |
| Export | Manage All | PS.ACCT_MGMT.AM_EXPORT.MANAGE_ALL |
| General Settings | Read | PS.ACCT_MGMT.GENERAL_SETTINGS.READ |
| General Settings | Edit | PS.ACCT_MGMT.GENERAL_SETTINGS.EDIT |
| License Information | Read | PS.ACCT_MGMT.LICENSE_INFORMATION.READ |
| My Account | Read | PS.ACCT_MGMT.MY_ACCOUNT.READ |
| My Account | Edit | PS.ACCT_MGMT.MY_ACCOUNT.EDIT |
| Tags | Read | PS.ACCT_MGMT.TAGS.READ |
| Tags | Create | PS.ACCT_MGMT.TAGS.CREATE |
| Tags | Delete | PS.ACCT_MGMT.TAGS.DELETE |
| Tags | Edit | PS.ACCT_MGMT.TAGS.EDIT |
| Target Group | Read | PS.ACCT_MGMT.TARGET_GROUP.READ |
| Target Group | Create | PS.ACCT_MGMT.TARGET_GROUP.CREATE |
| Target Group | Delete | PS.ACCT_MGMT.TARGET_GROUP.DELETE |
| Target Group | Edit | PS.ACCT_MGMT.TARGET_GROUP.EDIT |
| Target Group | Export | PS.ACCT_MGMT.TARGET_GROUP.EXPORT |
Hexa
| Entity | Action | Role Privilege String |
|---|---|---|
| Hexa AI MCP | Use | PS.HEXA.HEXA_AI_MCP.USE |
| Hexa Vulnerability Management | Use | PS.HEXA.HEXA_VM.USE |
| Jamf Connection | Use | PS.HEXA.CONNECTION_JAMF.USE |
Exposure Management
Toggle privilege: EXPOSURE_MANAGEMENT.TOGGLE_EXPOSURE_MANAGEMENT.USE. Analytics privileges, that is, any Exposure View or Dashboards privilege, also require EXPOSURE_MANAGEMENT.ANALYTICS.TOGGLE_EXPOSURE_MANAGEMENT_ANALYTICS.USE, which Tenable adds for you when you assign one.
NoteThe Exposure Response privileges and the Vulnerability Management Exposure Response privileges permit the same operations, action for action. Assigning one set does not grant the other, so assign the set that matches the application your role is for.
Analytics
| Type | Action | Role Privilege String |
|---|---|---|
| Dashboards | Read | EXPOSURE_MANAGEMENT.ANALYTICS.DASHBOARD.READ |
| Dashboards | Write | EXPOSURE_MANAGEMENT.ANALYTICS.DASHBOARD.WRITE |
| Dashboards | Export | EXPOSURE_MANAGEMENT.ANALYTICS.DASHBOARD.EXPORT |
| Exposure View | Read | EXPOSURE_MANAGEMENT.ANALYTICS.EXPOSURE_VIEW.READ |
| Exposure View | Write | EXPOSURE_MANAGEMENT.ANALYTICS.EXPOSURE_VIEW.WRITE |
| Exposure View | Enable Builtin Card | EXPOSURE_MANAGEMENT.ANALYTICS.EXPOSURE_VIEW.ENABLE_BUILTIN_CARD |
| Exposure View | Export | EXPOSURE_MANAGEMENT.ANALYTICS.EXPOSURE_VIEW.EXPORT |
Attack Path
| Action | Role Privilege String |
|---|---|
| Read | EXPOSURE_MANAGEMENT.ATTACK_PATH.ATTACK_PATH.READ |
| Write | EXPOSURE_MANAGEMENT.ATTACK_PATH.ATTACK_PATH.WRITE |
Connectors
| Action | Role Privilege String |
|---|---|
| Read | EXPOSURE_MANAGEMENT.CONNECTOR.CONNECTOR.READ |
| Write | EXPOSURE_MANAGEMENT.CONNECTOR.CONNECTOR.WRITE |
Exposure Response
| Action | Role Privilege String |
|---|---|
| Read | EXPOSURE_MANAGEMENT.EM_ER.EM_ER.READ |
| Create | EXPOSURE_MANAGEMENT.EM_ER.EM_ER.CREATE |
| Delete | EXPOSURE_MANAGEMENT.EM_ER.EM_ER.DELETE |
| Edit | EXPOSURE_MANAGEMENT.EM_ER.EM_ER.EDIT |
| Export | EXPOSURE_MANAGEMENT.EM_ER.EM_ER.EXPORT |
Exposure Signals
| Action | Role Privilege String |
|---|---|
| Read | EXPOSURE_MANAGEMENT.EXPOSURE_SIGNAL.EXPOSURE_SIGNAL.READ |
| Write | EXPOSURE_MANAGEMENT.EXPOSURE_SIGNAL.EXPOSURE_SIGNAL.WRITE |
Inventory
| Action | Role Privilege String |
|---|---|
| Read | EXPOSURE_MANAGEMENT.INVENTORY.INVENTORY.READ |
| Write | EXPOSURE_MANAGEMENT.INVENTORY.INVENTORY.WRITE |
| Export | EXPOSURE_MANAGEMENT.INVENTORY.INVENTORY.EXPORT |
Tags
| Action | Role Privilege String |
|---|---|
| Read | EXPOSURE_MANAGEMENT.TAG.TAG.READ |
| Write | EXPOSURE_MANAGEMENT.TAG.TAG.WRITE |
| Export | EXPOSURE_MANAGEMENT.TAG.TAG.EXPORT |
Attack Surface Management
Toggle privilege: ASM.TOGGLE_ASM.USE.
| Entity | Action | Role Privilege String |
|---|---|---|
| Business | Manage | ASM.BUSINESS.MANAGE |
| Cloud Connectors | Manage | ASM.CLOUD_CONNECTORS.MANAGE |
| Inventory | Manage | ASM.INVENTORY.MANAGE |
Vulnerability Management
Toggle privilege: VM.TOGGLE_VM.USE. Scans privileges also require VM.VM_SCAN.TOGGLE_VM_SCAN.USE, and Sensors privileges VM.VM_SENSOR.TOGGLE_VM_SENSOR.USE. Tenable adds both category toggles for you when you assign a privilege that needs them.
Dashboards
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_DASHBOARD.VM_DASHBOARD.READ |
| Create | VM.VM_DASHBOARD.VM_DASHBOARD.CREATE |
| Delete | VM.VM_DASHBOARD.VM_DASHBOARD.DELETE |
| Edit | VM.VM_DASHBOARD.VM_DASHBOARD.EDIT |
| Export | VM.VM_DASHBOARD.VM_DASHBOARD.EXPORT |
| Share | VM.VM_DASHBOARD.VM_DASHBOARD.SHARE |
Explore
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_EXPLORE.VM_EXPLORE.READ |
| Delete | VM.VM_EXPLORE.VM_EXPLORE.DELETE |
| Edit ACR | VM.VM_EXPLORE.VM_EXPLORE.EDIT_ACR |
| Export | VM.VM_EXPLORE.VM_EXPLORE.EXPORT |
Exports
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_EXPORT.VM_EXPORT.READ |
| Delete | VM.VM_EXPORT.VM_EXPORT.DELETE |
| Enable/Disable | VM.VM_EXPORT.VM_EXPORT.DISABLE |
| Edit | VM.VM_EXPORT.VM_EXPORT.EDIT |
Exposure Response
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_ER.VM_ER.READ |
| Create | VM.VM_ER.VM_ER.CREATE |
| Delete | VM.VM_ER.VM_ER.DELETE |
| Edit | VM.VM_ER.VM_ER.EDIT |
| Export | VM.VM_ER.VM_ER.EXPORT |
Recast/Accept Rules
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_RECAST.VM_RECAST.READ |
| Create | VM.VM_RECAST.VM_RECAST.CREATE |
| Delete | VM.VM_RECAST.VM_RECAST.DELETE |
| Enable/Disable | VM.VM_RECAST.VM_RECAST.DISABLE |
| Edit | VM.VM_RECAST.VM_RECAST.EDIT |
| Export | VM.VM_RECAST.VM_RECAST.EXPORT |
Remediation
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_REMEDIATION.VM_REMEDIATION.READ |
| Create | VM.VM_REMEDIATION.VM_REMEDIATION.CREATE |
| Delete | VM.VM_REMEDIATION.VM_REMEDIATION.DELETE |
| Edit | VM.VM_REMEDIATION.VM_REMEDIATION.EDIT |
| Export | VM.VM_REMEDIATION.VM_REMEDIATION.EXPORT |
Reports
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_REPORT.VM_REPORT.READ |
| Create | VM.VM_REPORT.VM_REPORT.CREATE |
| Delete | VM.VM_REPORT.VM_REPORT.DELETE |
| Download | VM.VM_REPORT.VM_REPORT.DOWNLOAD |
| Edit | VM.VM_REPORT.VM_REPORT.EDIT |
| Generate | VM.VM_REPORT.VM_REPORT.GENERATE |
| Schedule | VM.VM_REPORT.VM_REPORT.SCHEDULE |
| Share | VM.VM_REPORT.VM_REPORT.SHARE |
Scans
| Type | Action | Role Privilege String |
|---|---|---|
| Managed Credential | Read | VM.VM_SCAN.VM_SCAN_MANAGED_CREDENTIAL.READ |
| Managed Credential | Create | VM.VM_SCAN.VM_SCAN_MANAGED_CREDENTIAL.CREATE |
| Managed Credential | Delete | VM.VM_SCAN.VM_SCAN_MANAGED_CREDENTIAL.DELETE |
| Managed Credential | Edit | VM.VM_SCAN.VM_SCAN_MANAGED_CREDENTIAL.EDIT |
| Managed Credential | Export | VM.VM_SCAN.VM_SCAN_MANAGED_CREDENTIAL.EXPORT |
| Nessus/Agent Scan | Read | VM.VM_SCAN.VM_SCAN.READ |
| Nessus/Agent Scan | Create | VM.VM_SCAN.VM_SCAN.CREATE |
| Nessus/Agent Scan | Delete | VM.VM_SCAN.VM_SCAN.DELETE |
| Nessus/Agent Scan | Edit | VM.VM_SCAN.VM_SCAN.EDIT |
| Nessus/Agent Scan | Export | VM.VM_SCAN.VM_SCAN.EXPORT |
| Nessus/Agent Scan | Launch | VM.VM_SCAN.VM_SCAN.LAUNCH |
| Nessus/Agent Scan | Submit PCI | VM.VM_SCAN.VM_SCAN.SUBMIT_PCI |
| Scan Exclusion | Read | VM.VM_SCAN.VM_SCAN_EXCLUSION.READ |
| Scan Exclusion | Create | VM.VM_SCAN.VM_SCAN_EXCLUSION.CREATE |
| Scan Exclusion | Delete | VM.VM_SCAN.VM_SCAN_EXCLUSION.DELETE |
| Scan Exclusion | Edit | VM.VM_SCAN.VM_SCAN_EXCLUSION.EDIT |
| Scan Exclusion | Export | VM.VM_SCAN.VM_SCAN_EXCLUSION.EXPORT |
| Shared Collections | Read | VM.VM_SCAN.VM_SCAN_SHARED_COLLECTION.READ |
| Shared Collections | Create | VM.VM_SCAN.VM_SCAN_SHARED_COLLECTION.CREATE |
| Shared Collections | Delete | VM.VM_SCAN.VM_SCAN_SHARED_COLLECTION.DELETE |
| Shared Collections | Edit | VM.VM_SCAN.VM_SCAN_SHARED_COLLECTION.EDIT |
| Tenable-provided Scan Template | Use | VM.VM_SCAN.VM_SCAN_TENABLE_TEMPLATE.READ |
| User-defined Scan Template | Read | VM.VM_SCAN.VM_SCAN_USER_TEMPLATE.READ |
| User-defined Scan Template | Create | VM.VM_SCAN.VM_SCAN_USER_TEMPLATE.CREATE |
| User-defined Scan Template | Delete | VM.VM_SCAN.VM_SCAN_USER_TEMPLATE.DELETE |
| User-defined Scan Template | Edit | VM.VM_SCAN.VM_SCAN_USER_TEMPLATE.EDIT |
| User-defined Scan Template | Export | VM.VM_SCAN.VM_SCAN_USER_TEMPLATE.EXPORT |
Sensors
| Type | Action | Role Privilege String |
|---|---|---|
| Agent Group | Read | VM.VM_SENSOR.AGENT_GROUP.READ |
| Agent Group | Create | VM.VM_SENSOR.AGENT_GROUP.CREATE |
| Agent Group | Delete | VM.VM_SENSOR.AGENT_GROUP.DELETE |
| Agent Group | Edit | VM.VM_SENSOR.AGENT_GROUP.EDIT |
| Linking Key | Read | VM.VM_SENSOR.LINKING_KEY.READ |
| Linking Key | Create | VM.VM_SENSOR.LINKING_KEY.CREATE |
| Nessus Agent | Read | VM.VM_SENSOR.VM_AGENT.READ |
| Nessus Agent | Delete | VM.VM_SENSOR.VM_AGENT.DELETE |
| Nessus Agent | Edit | VM.VM_SENSOR.VM_AGENT.EDIT |
| Nessus Agent | Export | VM.VM_SENSOR.VM_AGENT.EXPORT |
| Nessus Network Monitor | Read | VM.VM_SENSOR.VM_NETWORK_MONITOR.READ |
| Nessus Network Monitor | Delete | VM.VM_SENSOR.VM_NETWORK_MONITOR.DELETE |
| Nessus Network Monitor | Edit | VM.VM_SENSOR.VM_NETWORK_MONITOR.EDIT |
| Nessus Network Monitor | Export | VM.VM_SENSOR.VM_NETWORK_MONITOR.EXPORT |
| Nessus Scanner | Read | VM.VM_SENSOR.VM_SCANNER.READ |
| Nessus Scanner | Delete | VM.VM_SENSOR.VM_SCANNER.DELETE |
| Nessus Scanner | Edit | VM.VM_SENSOR.VM_SCANNER.EDIT |
| Nessus Scanner | Export | VM.VM_SENSOR.VM_SCANNER.EXPORT |
| Network | Read | VM.VM_SENSOR.NETWORK.READ |
| Network | Create | VM.VM_SENSOR.NETWORK.CREATE |
| Network | Delete | VM.VM_SENSOR.NETWORK.DELETE |
| Network | Edit | VM.VM_SENSOR.NETWORK.EDIT |
| Network | Export | VM.VM_SENSOR.NETWORK.EXPORT |
| Scanner Group | Read | VM.VM_SENSOR.SCANNER_GROUP.READ |
| Scanner Group | Create | VM.VM_SENSOR.SCANNER_GROUP.CREATE |
| Scanner Group | Delete | VM.VM_SENSOR.SCANNER_GROUP.DELETE |
| Scanner Group | Edit | VM.VM_SENSOR.SCANNER_GROUP.EDIT |
| Scanner Group | Export | VM.VM_SENSOR.SCANNER_GROUP.EXPORT |
| Web Application Scanner | Read | VM.VM_SENSOR.VM_WAS_SCANNER.READ |
| Web Application Scanner | Delete | VM.VM_SENSOR.VM_WAS_SCANNER.DELETE |
| Web Application Scanner | Edit | VM.VM_SENSOR.VM_WAS_SCANNER.EDIT |
| Web Application Scanner | Export | VM.VM_SENSOR.VM_WAS_SCANNER.EXPORT |
Vulnerability Intelligence
| Action | Role Privilege String |
|---|---|
| Read | VM.VM_INTELLIGENCE.VM_INTELLIGENCE.READ |
| Export | VM.VM_INTELLIGENCE.VM_INTELLIGENCE.EXPORT |
Web App Scanning
Toggle privilege: WAS.TOGGLE_WAS.USE.
NoteThe Managed Credential and Recast/Accept Rule privileges grant access to both Vulnerability Management and Web App Scanning operations for those entities.
| Entity | Action | Role Privilege String |
|---|---|---|
| Asset | Create | WAS.ASSET.CREATE |
| Managed Credential | Read | WAS.SCAN_CREDENTIAL.READ |
| Managed Credential | Manage | WAS.SCAN_CREDENTIAL.MANAGE |
| Recast/Accept Rule | Read | WAS.RECAST_RULE.READ |
| Recast/Accept Rule | Manage | WAS.RECAST_RULE.MANAGE |
| Tenable-provided Scan Template | Use | WAS.SCAN_WAS_SYSTEM_TEMPLATE.USE |
| User-defined Scan Template | Read | WAS.SCAN_WAS_USER_TEMPLATE.READ |
| User-defined Scan Template | Manage | WAS.SCAN_WAS_USER_TEMPLATE.MANAGE |
| Web Application Scan | Read | WAS.SCAN_WAS.READ |
| Web Application Scan | Manage | WAS.SCAN_WAS.MANAGE |
| Web Application Scan | Import | WAS.SCAN_WAS.IMPORT |
| Web Application Scan | Submit PCI | WAS.SCAN_WAS.SUBMIT_PCI |
PCI ASV
Toggle privilege: PCI.TOGGLE_PCI.USE.
| Entity | Action | Role Privilege String |
|---|---|---|
| New Scan Results | Read | PCI.PCI_SCAN.READ |
| New Scan Results | Write | PCI.PCI_SCAN.WRITE |
| New Scan Results | Delete | PCI.PCI_SCAN.DELETE |
| In Remediation | Read | PCI.PCI_REMEDIATION.READ |
| In Remediation | Write | PCI.PCI_REMEDIATION.WRITE |
| In Remediation | Delete | PCI.PCI_REMEDIATION.DELETE |
| In Remediation | Submit | PCI.PCI_REMEDIATION.SUBMIT_PCI |
| Attestations | Read | PCI.ATTESTATION.READ |
| Attestations | Write | PCI.ATTESTATION.WRITE |
| ASV Review | Read | PCI.ASV_REVIEW.READ |
| ASV Review | Write | PCI.ASV_REVIEW.WRITE |
Managed Security Service Provider Roles
The Managed Security Service Provider (MSSP) endpoints use the user roles described in User Roles and have no custom role privileges. The List role permissions endpoint returns no MSSP privileges, and MSSP is not one of the applications you can select for a custom role.
Each MSSP endpoint states the user role it requires. Tenable evaluates that role in the MSSP partner container.
Container Security Roles
Tenable Enclave Security uses a separate, permission-based role model for Container Security that is independent of the Vulnerability Management and Web App Scanning role system described above.
Each Container Security role has a set of permissions that are enabled or disabled by default. Administrators can assign these roles to users to control access to Container Security features. Additionally, administrators can create custom roles and assign specific Container Security permissions to tailor access for their organization's needs. For more information about Container Security permissions, see Permissions.
The following table lists the default Container Security roles and their enabled permissions:
| Role | Manage Roles and Users | Manage Scanners | Schedule Scans | Export Data | Run Reports | View Application | Manage Policies | View Logs | Exposure Response Manager |
|---|---|---|---|---|---|---|---|---|---|
| Auditor | No | No | No | No | No | No | No | No | No |
| Container Security Administrator | Yes | No | No | No | No | No | No | Yes | No |
| Credential Manager | No | No | No | No | No | No | No | No | No |
| Executive | No | No | No | No | No | No | No | No | No |
| Exposure Response Manager | No | No | No | Yes | Yes | Yes | No | No | Yes |
| Security Analyst | No | No | No | Yes | Yes | Yes | No | No | Yes |
| Security Manager | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| Vulnerability Analyst | No | No | No | No | No | No | No | No | No |
Updated 5 days ago
