Extension:Access Control List

With the Access Control List extension (ACLe) you can restrict the access to different elements of your wiki for single users or entire user groups. It allows to easily configure and manage custom rights via a comprehensive GUI. Main features of the Access Control List extension are:
 * Access management to system features via graphical user interface.
 * Protection of namespaces (e.g. for pages in the 'template' namespace), categories (e.g. for articles in the category 'confidential') and single wiki pages.
 * Definition of user groups, "groups of groups" and group hierarchies.
 * Import and re-use of users and groups via LDAP (Lightweight Directory Access Protocol).
 * Combination of own permission sets out of system features.
 * Assignment of permission sets to groups or individual users.
 * Protection of semantic properties (e.g. to restrict access to the property 'salary').

The specific features of the ACLe are also listed at the page Category:Page specific user rights extensions. First versions of this extension have been developed within Project Halo and was part of the discontinued SMW+. The latest version was developed by W. Breiter (KIT).

Requirements

 * Access to the command prompt (you may not have access if you are on shared hosting)
 * MediaWiki 1.22+
 * 'Patch for Linux' - http://en.wikipedia.org/wiki/Patch_(Unix)
 * MySQL Database backend

Download
You can download the current version from https://github.com/HaloACL/HaloACL. Older versions can be found on sourceforge.

Installation

 * Download and extract the HaloACL ZIP archive.
 * Copy the folder 'HaloACL' into the extensions folder of MediaWiki.
 * Enable the HaloACL and memcache by adding the following lines to LocalSettings.php:

include_once "$IP/extensions/HaloACL/includes/HACL_Initialize.php"; enableHaloACL; $wgMainCacheType = CACHE_MEMCACHED; $wgMemCachedServers = array('localhost:11211');
 * 1) Shared memory settings (check if this is already set somewhere else in LocalSettings)


 * Open a command prompt
 * Change to MediaWiki's base directory and choose the patch command depending on your MediaWiki installation:

cd cp extensions/HaloACL/. cd includes patch -p1 < ../


 * If you are running SemanticMediaWiki, go to you SemanticMediaWikis directory

cd extensions/SemanticMediaWiki cp extensions/HaloACL/. cd includes patch -p1 < ../

Global Permissions
A HaloACL Permission is a group of MediaWiki Rights. Each Permission can be granted or denied to defined Groups.

Developers' Documentation

 * Requirements and Acceptance Criteria

Known issue
The current version of this extension is not compatible with Extension:WikiEditor. The Access Control List extension has its own Toolbar and it has a conflict with the WikiEditor toolbar. A temporary solution is described here.

General Disclaimer
The authors of this extension and affiliated persons accept no liability or responsibility to any person or organisation as a consequence of any reliance upon the proper functioning of the extension. For further details, see Security issues with authorization extensions.