在一个大型的网站建设中,访问权限控制是十分重要的一部分。一个CMS系统能否适应复杂的权限要求很大程度上说明了这个CMS的成熟程度,很高兴,Joomla J3.x的权限控制机制几乎能轻松实现任何的定制要求。最近使用joomla完成了一个大型杂志社的网站,在这个案例中客户对权限控制提出了很苛刻的要求,为此特地深入的分析和学习了joomla的ACL原理,感觉学到了很多,因此,决定写此系列教程,希望对joomla爱好者能有所启发。
什么是ACL?
Joomla权限控制,业内一般称作ACL,你使用google检索相关权限控制资料的时候,搜索关键词joomla ACL就会获得你需要的内容了。 ACL是Access Control List的简写。中文意思就是访问控制列表。
ACL是干什么用的?
简单来说就是控制哪一些用户能够访问网站的哪一些内容。下面是一些常用的场景:
- 未登录用户只能看A分类中的文章,登录之后他可以同时看到A分类和B分类中的文章。
- A管理员只能修改和编辑A分类中的文章,B管理员只能在B分类中的文章。
- 限制普通用户不能看到某一个导航菜单。
总得来说就是控制访问权限
Joomla中的ACL?
joomla中将ACL分类两种控制,一种是控制你能看到什么,另外一种是你能执行什么操作。请注意这两种是有本质的出别,只有在理解清楚了这两点之后,你才能明白joomla后台有关权限控制意思。
你能看到什么
比如说,你想让未登录的用户不能访问B分类中的文章,那么这个就属于你能看到什么
你能执行什么操作
比如说,你想让A用户只能管理(编辑,修改,但不能删除)A分类中的文章,那么这个就属于你能做什么了
Joomla中设置ACL的地方
joomla设置ACL的地方就是权限。最重要和最常见的一个ACL的地方是全局设置。登录后台->系统->全局设置->权限。如图:
本文是joomla权限控制系列教程的第一节,如果对joomla权限控制感兴趣,那么请进行阅读下一节。
另外,值得一提的是joomla2.5X之前的ACL设计并不好,本文是基于joomla2.5X和以后的J3.x来讨论的。