Thingy 1.02 -- An enhanced UseMod Wiki spin-off. (C) 2003-2005 Julian Mehnle Michael Buschbeck ============================================================================== Thingy is an enhanced UseMod Wiki spin-off. License ------- Thingy is free software. You may use, modify, and distribute it under the GNU GPL (version 2 or later). Access Control Lists -------------------- Starting with 1.02, Thingy has basic ACL support. In restricted thingies (SetEnv THINGY_RESTRICTED 1), page-related actions may now be permitted on a page-by-page basis through ACL files. (However, there is no user interface for creating and editing such ACLs yet; for now they have to be maintained by hand.) An ACL file, similar to a page lock file, must be placed in the page database directory with the same name as the page file, but with the extension ".acl". ACLs for sub-pages must be stored in the main page's ACL file. An ACL consists of rules of the following form (similar to CSS syntax): '{' ':' [ ';' ... ] '}' is a shell glob pattern describing the names of the pages the rule applies to. The substring '.' means the name of the main page to which the ACL belongs. '/' can be used to denote sub-pages. The '*' wildcard matches arbitrary character sequences (except '/'). is the user name to which the following permissions apply. Currently, only the user "anonymous" is supported as a handle for all unauthenticated users, but in the future you will be able to specify registered (authenticated) usernames, too. is a set of permission symbols. The following permissions are supported: r - Read pages, even if they are marked #PRIVATE. w - Write existing pages. c - Create new pages. d - Delete pages. For example, permissions for the page "Foo" and its sub-pages could be granted by creating the file "page/F/Foo.acl" in the database dir, with the following content: . { anonymous: r } ./Test { anonymous: rwcd } ./* { anonymous: rwc } This means: - The page "Foo" may be read by everyone (even if it is marked private). - The page "Foo/Test" may be read, written, created, and deleted by everyone. - All other sub-pages may be read, written, and created -- but not deleted -- by everyone. # $Id$ # vim:tw=79