WackoWiki

Access Control Lists (ACL)


Every page has three access control lists (ACLs), read, write and comment, which can be modified by the page owner (usually the user who created the page). read defines who is allowed to view the page, write defines who is allowed to edit it, and comment defines who is allowed to attach comments.


All ACLs are plain text lists containing a number of user names or the "*" placeholder representing “everyone”. Entries can be inverted by appending them with an exclamation mark. For example, while * means “everybody has access”, !* means “nobody has access”. The exclamation mark modifier works with user names, too, of course.


An empty list implies “nobody has access”. For example, if the write ACL only contains the line SomeGuy, only the SomeGuy user has access, but noone else. If it contains a line with * and another line with !SomeGuy, it means everybody has access except SomeGuy.


The read, write and comment ACLs are available for every page on the site; Custom PageHandlers can introduce extra ACLs as needed.


In WackoWiki you can edit the ACL for every page.


an ACL consists of

permissions


the values for each permission are:

Aliases AKA Groups

WackoWiki supports groups of users (aliases). Only site administrator can create and edit aliases.
To create alias, you need edit wakka.config.php like this:



This will create alias Admins with one member RomanIvanov and alias Oversite with RomanIvanov & AlekseyKulakov members.


Names of aliases are case independent.


Alias Admins is special. All of its members are admins, and, for example, can delete or rename any page.

Defaults

After installing the default value for every action is set to * – all users (even unregistered users) have access.


The defaults are stored in wakka.config.php:


eg: if you want only registered users to be able to edit a page change the default values to:


note: changing the defaults will only affect new created pages!
pages which were created before changing the defaults will keep there original acl!


If you want to change all acls you could do it with a simple sql query:

UPDATE wakka_acls SET list = "$" WHERE privilege = "write";

If some of the acl's have been set to specific users, it will be better to only update those pages where write privileges are currently set to 'allow all'

UPDATE wakka_acls SET list =  '$' WHERE privilege =  'write' AND list =  '*';


Questions:


I want to have the following defaults:
Owner is always the administrator, but also, everybody should have the right to edit the pages. How do I do this?