Web Permissions Plugin

View and edit web permissions

This plugin provides a centralised interface to TWiki permissions.

Web permissions are presented as a matrix that has columns of webs and rows of users. For each web, you can control which users can view or change that web. All user webs, every registered user (except admin users), and every group (except admin groups) are shown in the matrix.

To interactivly edit topic permissions, it adds an "Edit topic ACLs" option to the "More Actions" page.

Web Permissions

This interface allows you to control
Viewing Editing

This control model is very useful in cases such as a web per project environment. In this case you will probably want to give team members change access to the specific projects they are working on. The plugin gives you a simple, one page interface, for handling these permissions.

The plugin tries very hard to keep the permissions specification you started with, though it does move them to METADATA.

Topic Permissions

All Users and Groups




THIS PLUGIN REQUIRES TWiki-4.0.0 or later

Syntax Rules

The web permissions matrix can be viewed (and edited) by entering %WEBPERMISSIONS% anywhere in a topic. You have to have admin rights to view/edit the matrix.

The WEBPERMISSIONS TWiki variable accepts the following parameters:

  • repeatheads - if set to a number, headings will be repeated every this number of rows. This is very useful when you have a lot of users and groups.
  • webs - a comma-separated list of webs to show. Default is to show all webs.
  • users - a comma-separated list of users (and groups) to show. Default is to show all users and groups.
Both webs and users lists can use wildcards. A star (*) in a name will match any number of characters - so Brian* will match all users and groups whose names start with Brian. *Group will match all users or groups whose name ends in Group. If you put a minus sign (-) before a name in either list, then the next expression will be treated as a filter e.g. -Secret will exclude the name Secret from the list, and *Group will exclude all names ending in Group from the list.

Use the following form to select the subset of webs and users you want to display. If you have admin rights, and the plugin is installed, you will see the matrix below the form:

Select the webs, users and groups you want to change permissions for from the list below. Ctrl+click and Shift+click work as normal.


Similarly the topic permissions tool can be viewed (and edited) by entering %TOPICPERMISSIONS% anywhere in a topic. You can also add an "Edit ACLS" option to the "More topic actions" screen by adding webpermissions to the front of the SKIN setting (e.g. Set SKIN=webpermissions,pattern)

Plugin Settings

By default, the plugin only supports VIEW and CHANGE permissions on webs. You can change the set of access modes handled by the plugin by defining a configuration variable (in LocalSite.cfg) to be a comma-separated list of access modes. For example,
$TWiki::cfg{Plugins}{WebPermissionsPlugin}{modes} = 'VIEW,CHANGE,RENAME';
See TWikiAccessControls for more information on what access modes can be used to control.

Plugin Installation Instructions

You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server where TWiki is running.

Like many other TWiki extensions, this module is shipped with a fully automatic installer script written using the BuildContrib.

  • If you have TWiki 4.2 or later, you can install from the configure interface (Go to Plugins->Find More Extensions)
  • If you have any problems, then you can still install manually from the command-line:
    1. Download one of the .zip or .tgz archives
    2. Unpack the archive in the root directory of your TWiki installation.
    3. Run the installer script ( perl <module>_installer )
    4. Run configure and enable the module, if it is a plugin.
    5. Repeat for any missing dependencies.
  • If you are still having problems, then instead of running the installer script:
    1. Make sure that the file permissions allow the webserver user to access all files.
    2. Check in any installed files that have existing ,v files in your existing install (take care not to lock the files when you check in)
    3. Manually edit LocalSite.cfg to set any configuration variables.

Plugin Info

Another great TWiki extension from the WikiRing - working together to improve your wiki experience!

Many thanks to the following sponsors for supporting this work:

Plugin Author: TWiki:Main.CrawfordCurrie & TWiki:Main.SvenDowideit, http://wikiring.com
Copyright: © 2006, Evolved Media Network, Spanlink Communications and WikiRing?
License: GPL (GNU General Public License)
Plugin Version: 15867 (04 Dec 2007)
Change History:  
4 Dec 2007 TWikibug:Item4901 fixed templates TWikibug:Item5072 added users parameter to select a subset of users/groups in the web permissions interface
8 Sep 2007 Updated for TWiki-4.2.0
July 2006 add Topic ACLs user interface via More topic actions - SvenDowideit@WikiRing.com
10216 TWikibug:Item2291 - Added repeatheads and webs parameters
9048 TWikibug:Item1766 - corrected problems with passing incorrect parameters to setACLs and not interpreting values from the form correctly.
8877 TWikibug:Item1701 - first release
Demo Url: http://demo.wikiring.com/twiki/bin/view/Demo/TopicPermissionsDemo
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/WebPermissionsPlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/WebPermissionsPluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/WebPermissionsPluginAppraisal

Related Topics: TWikiPlugins, DeveloperDocumentationCategory, AdminDocumentationCategory, TWikiPreferences

Topic attachments
I Attachment Action Size Date Who Comment
gifgif CHANGE.gif manage 0.5 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
gifgif VIEW.gif manage 0.5 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
jsjs WebPermissionsPlugin.js manage 3.5 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
pngpng downarrow.png manage 0.2 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
pngpng leftarrow.png manage 0.2 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
gifgif logo.gif manage 20.2 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
pngpng rightarrow.png manage 0.2 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
pngpng uparrow.png manage 0.2 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
pngpng wikiringlogo20x20.png manage 1.3 K 2007-12-04 - 12:33 TWikiAdminUser Saved by install script
Topic revision: r2 - 2008-09-13 - 22:42:33 - TWikiAdminUser

This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.WebPermissionsPlugin