Skip to main content

Role-Based Access Control (RBAC)

The Role-Based Access Control (RBAC) feature allows the management of the administrators, who are the users of the admin panel. More specifically, RBAC manages the administrators' accounts and roles.

Administrator roles interfaceAdministrator roles interface
Identity Card of the Feature

Plan: RBAC is a free feature.
Role & permission: CRUD permissions in Roles > Settings - Users & Roles.
Activation: Available and activated by default.
Environment: Available in both Development & Production environment.

Configuration

The Roles sub-section of Administration panel displays all created roles for the administrators of your Strapi application.

From this interface, it is possible to:

By default, 3 administrator roles are defined for any Strapi application:

  • Author: to be able to create and manage their own content.
  • Editor: to be able to create content, and manage and publish any content.
  • Super Admin: to be able to access all features and settings. This is the role attributed by default to the first administrator at the creation of the Strapi application.

Creating a new role

On the top right side of the Administration panel > Roles interface, an Add new role button is displayed. It allows to create a new role for administrators of your Strapi application.

To create a new role, click on the Add new role button. Clicking on the Add new role button will redirect you to the roles edition interface, where you will be able to edit the role's details and configure its permissions (see Editing a role).

Tip

In the Roles interface, from the table, you can click on the duplicate button Duplicate icon to create a new role by duplicating an existing one.

Deleting a role

Administrator roles can be deleted from the Administration panel > Roles interface. However, they can only be deleted once they are no more attributed to any administrator of the Strapi application.

To delete a role:

  1. Click on the delete button Delete icon on the right side of the role's record.
  2. In the deletion window, click on the Confirm button to confirm the deletion.

Editing a role

Administrator roles edition interfaceAdministrator roles edition interface

The role edition interface allows to edit the details of an administrator role as well as configure in detail the permissions to all sections of your Strapi application. It is accessible from Administration panel > Roles either after clicking on the edit button Edit icon on the right side of a role's record, or after clicking on the Add new role button (see Creating a new role).

Caution

It isn't possible to edit the permissions of the Super Admin role. All configurations are in read-only mode.

Editing role's details

The details area of an administrator role editing interface allow to define the name of the role, and to give it a description that should help other administrators understand what the role gives access to.

Tip

In the top right corner, you can see a counter indicating how many administrators have been attributed the role.

To edit a role's details, follow the instructions from the table below:

Role detailsInstructions
NameWrite the new name of the role in the textbox.
DescriptionWrite the description of the role in the textbox.

Configuring role's permissions

The permissions area of an administrator role editing interface allows to configure in detail what actions an administrator can do for any part of the Strapi application. It is displayed as a table, split into 4 categories: Collection types, Single types, Plugins and Settings.

Collection and Single types

The Collection types and Single types categories respectively list all available collection and single types for the Strapi application. For each content-type, the administrators can have the permission to perform the following actions: create, read, update, delete and publish.

To configure Collection or Single types permissions for a role:

  1. Go to the Collection types or Single types category of the permissions table.
  2. Tick the box on the left of the name of the content-type to give access to. By default, all actions can be performed for all fields of the content-type.
  3. (optional) Untick the action-related boxes to prevent actions of your choice.
  4. (optional) Click the name of the content-type to display its full list of fields. Untick the field and action-related boxes to prevent access and/or action for the fields of your choice. If the Internationalization plugin is installed, define also what permissions should be granted for each available locale.
  5. Repeat steps 2 to 4 for each content-type available to which the role should give access.
  6. Click on the Save button on the top right corner.
Plugins and Settings

The Plugins and Settings categories both display a sub-category per available plugin or setting of the Strapi application. Each sub-category contains its own specific set of permissions.

To configure plugins or settings permissions for a role:

  1. Go to the Plugins or Settings category of the permissions table.
  2. Click on the name of the sub-category which permissions to configure, to display all available permissions.
  3. Tick the boxes of the permissions the role should give access to. You can refer to the table below for more information and instructions.

By default, plugins permissions can be configured for the Content-type Builder, the Upload (i.e. Media Library) plugin, the Content Manager, and Users Permissions (i.e. the Users & Permissions plugin allowing to manage end users). Each plugin has its own specific set of permissions.

Plugin namePermissions
Content-Releases
(Releases)
  • General
    • "Read" - gives access to the Releases feature
    • "Create" - allows to create releases
    • "Edit" - allows to edit releases
    • "Delete" - allows to delete releases
    • "Publish" - allows to publish releases
    • "Remove an entry from a release"
    • "Add an entry to a release"
Content-Manager
  • Single types
    • "Configure view" - allows to configure the edit view of a single type
  • Collection types
    • "Configure view" - allows to configure the edit view of a collection type
  • Components
    • "Configure Layout" - allows to configure the layout of a component
Content-Type-Builder
  • General
    • "Read" - gives access to the Content-type Builder plugin in read-only mode
Upload
(Media Library)
  • General
    • "Access the Media Library" - gives access to the Media Library plugin
    • "Configure view" - allows to configure the view of the Media Library
  • Assets
    • "Create (upload)" - allows to upload media files
    • "Update (crop, details, replace) + delete" - allows to edit uploaded media files
    • "Download" - allows to download uploaded media files
    • "Copy link" - allows to copy the link of an uploaded media file
Users-Permissions
  • Roles
    • "Create" - allows to create end-user roles
    • "Read" - allows to see created end-user roles
    • "Update" - allows to edit end-user roles
    • "Delete" - allows to delete end-user roles
  • Providers
    • "Read" - allows to see providers
    • "Edit" - allows to edit providers
  • Email Templates
    • "Read" - allows to access the email templates
    • "Edit" - allows to edit email templates
  • Advanced settings
    • "Read" - allows to access the advanced settings of the Users & Permissions plugin
    • "Edit" - allows to edit advanced settings
👉 Path reminder to the Users & Permissions plugin:
General > Settings > Users & Permissions plugin
  1. Click on the Save button on the top right corner.

Setting custom conditions for permissions

For each permission of each category, a Settings icon Settings button is displayed. It allows to push the permission configuration further by defining additional conditions for the administrators to be granted the permission. There are 2 default additional conditions:

  • the administrator must be the creator,
  • the administrator must have the same role as the creator.
Note

Other custom conditions can be available if they have been created beforehand for your Strapi application (see Role-Based Access Control).

Custom conditionsCustom conditions

To set custom conditions:

  1. Click on the Settings icon Settings button of the permission already granted for the role.
  2. In the Define conditions window, each available permission can be customized with a specific condition. Click on the drop-down list related to the permission you want to customize.
  3. Define the custom condition for the chosen permission. You can either:
    • Tick the Default option for all available additional conditions to be applied.
    • Click on the arrow button Carret icon to see the available additional conditions and tick only the chosen one(s).
  4. Click on the Apply button.
Tip

Once a custom condition is set for a permission, a dot is displayed next to the permission's name and the Settings icon Settings button.

Caution

Custom conditions can only be set for permissions that have been ticked to be granted for the role. If not, when clicking the Settings icon Settings button, the window that opens will remain empty, as no custom condition option will be available.

Usage

The Users sub-section of Administration panel displays a table listing all the administrators of your Strapi application.

From this interface, it is possible to:

  • make a textual search 1 to find specific administrators,
  • set filters 2 to find specific administrators,
  • create a new administrator account (see Creating a new account) 3,
  • delete an administrator account (see Deleting an account),
  • or access information regarding an administrator account, and edit it (see Editing an account).

For each administrator listed in the table, their main account information are displayed, including name, email and attributed role. The status of their account is also indicated: active or inactive, depending on whether the administrator has already logged in to activate the account or not.

Tip

Sorting can be enabled for most fields displayed in the table. Click on a field name, in the header of the table, to sort on that field.

Creating a new account

On the top right side of the Administration panel > Users interface, a Mail icon Invite new user button is displayed. It allows to create a new administrator account for your Strapi application.

To create a new administrator account:

  1. Click on the Mail icon Invite new user button.
  2. In the Invite new user window, fill in the Details information about the new administrator:
User informationInstructions
First name(mandatory) Write the administrator's first name in the textbox.
Last name(mandatory) Write the administrator's last name in the textbox.
Email(mandatory) Write the administrator's complete email address in the textbox.
  1. Fill in the Login settings about the new administrator:
SettingInstructions
User's roles(mandatory) Choose from the drop-down list the role to attribute to the new administrator.
Connect with SSO(optional) Click TRUE or FALSE to connect the new administrator account with SSO.
  1. Click on the Invite user button in the bottom right corner of the Add new user window.
  2. A URL appears at the top of the window: it is the URL to send the new administrator for them to log in for the first time to your Strapi application. Click the copy button Duplicate icon to copy the URL.
  3. Click on the Finish button in the bottom right corner to finish the new administrator account creation. The new administrator should now be listed in the table.
Note

The administrator invitation URL is accessible from the administrator's account until it has been activated.

Deleting an account

Administrator accounts can be deleted from the Administration panel > Users interface. It is possible to delete one or several administrator accounts at the same time.

To delete an administrator:

  1. Click on the delete button Delete icon on the right side of the account's record, or select one or more accounts by ticking the boxes on the left side of the accounts' records then click on the Delete icon Delete button above the table.
  2. In the deletion window, click on the Confirm button to confirm the deletion.

Editing an account

Edit an administrator accountEdit an administrator account

The table displayed in the Administration panel > Users interface allows to access all information regarding each administrator, where it is also possible to edit that information.

To edit an administrator account:

  1. Click on the name of the administrator whose account you want to edit.
  2. In the Details area, edit your chosen account details:
User informationInstructions
First nameWrite the administrator's first name in the textbox.
Last nameWrite the administrator's last name in the textbox.
EmailWrite the administrator's complete email address in the textbox.
UsernameWrite the administrator's username in the textbox.
PasswordWrite the new administrator account's password in the textbox.
Confirm passwordWrite the new password in the textbox for confirmation.
ActiveClick on TRUE to activate the administrator's account.
  1. (optional) In the Roles area, edit the role of the administrator:
  • Click on the drop-down list to choose a new role, and/or add it to the already attributed one.
  • Click on the delete button Clear icon to delete an already attributed role.
  1. Click on the Save button in the top right corner.