2. Module functionality, roles, access rights


Every user in the system has at least one role and user's active role determines, to which methods of modules this user has access right.
In a new installed Allmice CMS website there are by default three roles: admin, authenticated and anonymous.
The role admin has by default all the access rights for all the functionality and admin role maximal access rights can not be changed through user interface.
Other roles have by default minimal access rights so that unauthenticated user having role anonymous can log in to be admin user having role admin.

The functionality of the modules can be accessed through the module methods (which are also called module events or sometimes module pages). E.g. [path-to-your-site]/page/add-page is URL to Page module's method to add a new page to the website.
The role access rights are determining, what module method is available for which user role (i.e. what module event can be accessed by which user role).
Depending on a module's functionality a module may have entries, which have unique id numbers.
In the similar way as every module method can be made accessible to different users through their user role, also every module entry can be made accessible to different users.

Example to explain module methods, entries and access rights

For example let's assume, that you have installed a website called Pets and you wish to have there a page describing cats. Using above mentioned method [path-to-your-site]/page/add-page you will add a new page. Let's assume, that the system relates this module entry to id number 3. Such page can then be displayed using Page module view method through URL [path-to-your-site]/page/view/3. If you wish it to be visible on this URL for unauthenticated user (role anonymous), then you must give two permissions (i.e. access rights). One access right for role anonymous to access Page module method view and another access right to role anonymous to access Page module entry, which id is 3.

How to give access rights to module methods

Click in "Admin General Menu" on the link "Manage Access".
This will load "Manage access rights" page.
From drop-down menu "Select module" choose the module, which access rights you wish to change.
From another drop-down menu "Select role" choose the role, which you wish to change the access rights for.

Scroll down to the table, where all the methods of the chosen module are listed.
In column "Change access" tick the rows of the methods, which you wish to make accessible for the chosen role.

How to give access rights to module entries

The module, which entries need access right, should have methods, where such access right can be given.
For example Page module's entries can be given and changed using above mentioned method [path-to-your-site]/page/add-page or [path-to-your-site]/page/edit-any-page/[page-id].

Previous: 1. Explore Allmice CMS functionality | Next: 3. Terminology
General logic of Allmice CMS
1. Explore Allmice CMS functionality
2. Module functionality, roles, access rights
3. Terminology