• Document Up to Date
  • Updated On 4.0.0

Roles and Permissions

To access CrafterCMS, a user must be allowed access rights to certain areas of the project (access rights/ permissions). For example, if a user wants to create, edit or submit content, the user needs to have those specific permissions. Here, we see that the user requires multiple permissions. For simplicity, permissions are grouped together into roles. A role is a set of allowed actions/activities. An author role, for example, has access to create, edit and submit content.

To define permissions for users, they need to be a member of a group. A group is a collection of users with a role assigned. Groups are used to simplify management as changes made to the rights of the group applies to all the users belonging to that group. For our example above of a user that wants to create, edit or submit content, the user should be assigned to a group with the author role.

Out of the box, CrafterCMS supports the following roles/groups:

Role

Group

Description

system_admin

system_admin

Has access to everything in the CMS, such as all the projects, users, groups, etc. in addition to the admin role

admin

site_admin

Has access to everything in the project such as project configurations, creating/editing layouts, templates, taxonomies, content types, scripts, etc. in addition to the publisher role

author

site_author

Has access to create, edit or submit content in a project

developer

site_developer

Has access to access to creating/editing layouts, templates, taxonomies, content types, scripts, etc., project configurations in addition to the publisher role in a project

reviewer

site_reviewer

Has the ability to approve and reject workflow, but don’t have access to the author role in a project

publisher

site_publisher

Has the ability to approve and reject workflow, in addition to the author role in a project

Permissions and roles can be setup for each project, and for the entire application itself. Note that the system_admin role applies to the entire application and the rest of the default roles applies to a project.

See Groups Management for more information on administrating groups.

Projects

To edit permissions for a project role, in Studio, from the Sidebar, click on projectTools -> Configuration -> Permission Mapping. See Permission Mappings for more information on permissions and the default permissions assigned to roles.

To add/edit a role for a project, in Studio, from the Sidebar, click on projectTools -> Configuration -> Role Mapping. See Role Mappings for more information.

The items for interaction/tools available from the Sidebar depending on the user role can be configured in Studio, from the Sidebar, click on projectTools -> Configuration -> User Interface Configuration. See User Interface Configuration for more information.

Global

To add/edit a global role/group, see Global Role Mappings Config for more information.

To add/edit global permissions for a role, see Global Permission Mappings Config for more information.

The items for interaction/tools available from the mainMenu Main Menu depending on the user role can be configured by opening the global-menu-config.xml file under CRAFTER_HOME/data/repos/global/configuration using your favorite editor.