> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/cortex-xsoar-8-on-prem/8.5/onboard-cortex-xsoar/onboard-and-configure-cortex-xsoar/step-4.-set-up-users-and-roles.md).

# Step 4. Set up users and roles

Cortex XSOAR uses role-based access control (RBAC) to manage roles with specific permissions for controlling user access. RBAC helps manage access to Cortex XSOAR components, so that users, based on their roles, are granted the minimal access required to accomplish their tasks.

#### Task 1. Create roles

Roles enable you to define permissions for specific components, such as incident data, playbooks, scripts, and jobs. For example, you can create a role that allows users to edit the properties of incidents, but not delete incidents. You can create new roles or customize out-of-the-box roles.

If you assign one or more roles to an incident, only users with those roles can view and interact with the incident. For example, you might have an incident with sensitive data that should only be accessible to Tier-1 analysts and managers.

Roles can also be used to define permissions for integration commands. On the Integration Permissions page, you can assign roles to specific integration instances (all commands for that instance) or specific integration instance commands. For example, you could assign the Generic Export Indicators Service integration instance the Account Admin role, or you could restrict certain commands in the Core Rest API to a specific role. For more information, see Integration Permissions.

1. Review out-of-the-box roles and role-based permissions.
2. Create a role.

For more information about out-of-the-box roles, permissions, and how to create roles, see [Roles management](/cortex-xsoar-8-on-prem/8.5/configure-cortex-xsoar/users-and-roles-management/roles-management.md).

#### Task 2. Create user groups

While roles can be assigned directly to users, we recommend instead creating user groups. Each user group has a single role associated with it, but each user group can contain multiple users, and user groups can be nested within each other, enabling you to further refine your RBAC requirements. Users can belong to multiple user groups.

For more information about user groups and how to create them, see [User group management](/cortex-xsoar-8-on-prem/8.5/configure-cortex-xsoar/users-and-roles-management/user-group-management.md).

After adding users, assign users to user groups or assign users to direct roles.

#### Task 3. Configure authentication

You can create users locally or by using SAML Single Sign-On (SSO) in the tenant. Users authenticate by doing one of the following:

* Authenticate locally by using a username and password
* SAML single sign-on SSO

  Users can be authenticated using your IdP provider such as Okta, Ping, or Azure AD. You can use any IdP that supports SAML 2.0.

For more information about setting up authentication, see [Set up authentication](/cortex-xsoar-8-on-prem/8.5/configure-cortex-xsoar/users-and-roles-management/set-up-authentication.md).

#### Task 4. Manage users

You can manage users, including resetting passwords, sending invitations, and removing users.

By default, users do not have roles assigned and do not automatically have access to tenant data until you assign them a role or add them as members of a user group that has an assigned role.

For more information about how to manage users, see [User management](/cortex-xsoar-8-on-prem/8.5/configure-cortex-xsoar/users-and-roles-management/user-management.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cortex-docs.paloaltonetworks.com/cortex-xsoar-8-on-prem/8.5/onboard-cortex-xsoar/onboard-and-configure-cortex-xsoar/step-4.-set-up-users-and-roles.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
