| Joomla 1.6 ACL: Users, User Groups, Core Permissions, and Access Levels |
| Tuesday, 21 December 2010 10:12 |
|
In order to understand how to configure ACL (access control levels) for your website, you must first understand how ACL fits together.
You may have seen my diagram describing this around the internet:
UsersUsers are the easy part to understand. Users are you, your friends, your colleagues, and everyone with the ability to access your website. In Joomla 1.6, even those without a login are considered users. Users are created via the Create New User screen in Joomla. They can be assigned to user groups. Unlike Joomla 1.5, users may belong to multiple user groups if desired. User GroupA user group is a group of users, plain and simple! The group is comprised of the users assigned to it. Core permissions are also assigned to the user group. All users within a user group are treated equally in regards to permissions. If you want a user to have different permissions than other users, then you would assign that user to their own group. Core PermissionsCore permissions are assigned to the user group and allow users to perform specific tasks. All users within the user group share the same settings. These tasks include:
Note that the ability to view specific content on the front end (also called a "read" permission in other CMSs) is NOT included in the core permissions. Reading is configured in a separate system. Core permissions may be set to one of three states: Allow, Deny, or Inherit.
Public is the bottom level user group. By default, the public group has no state set on any core permission. This acts as a deny, but it's a deny that can be overridden at higher inheritance levels. Public is the parent for all user groups, and this group cannot be deleted. Access LevelsAccess levels (also called "viewing access levels" in some places in the Joomla administrator interface) controls who sees what content on the front end of the website. This is a separate but parallel system to the other permissions. By default, Joomla has three access levels: Public, Registered, and Special. Public content may be viewed by anyone without a login. Registered content may be viewed with a login only. Special content is content viewed by Authors and higher level user groups. Remember that these default access levels correspond to the default user groups. You may delete any access level (except public), and you may assign or remove user groups from any of these levels. Access levels do not inherit their permissions. If you have an article, and you set it to be viewable by publishers only, then only those users in the publisher user group may view it. Even super users cannot view that article! (However, as a super user, you are able to edit this article on the back end.) OK, got it!Now that you have the overview of the four parts of ACL, including users, user groups, core permissions, and access levels, you're ready to start with an example of how to configure common problems with ACL. I'll cover some of these in coming posts. Jen Kramer is the president of 4Web, a New England based consultancy specializing in highly customized Joomla websites. Jen has authored many lynda.com instructional videos and written a book on the topic. |
If you want Joomla training delivered to the comfort of your own home, then you need to join Joomlashack University - an affordable online Joomla training course taught by the world's leading experts in Joomla education.