access_control3Add my vote for this tag admin_tool2Add my vote for this tag security2Add my vote for this tag user_interface1Add my vote for this tag create new tag
, view all tags

Web Permissions Plugin

View and edit web permissions


This plugin provides a centralized 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 interactively 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




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 topic permissions UI can be viewed (and edited) by entering %TOPICPERMISSIONS% anywhere in a topic (or accesing it via the 'More topic actions' page). You have to have write permissions to that topic to view/edit the UI.


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.

%WEBPERMISSIONS{webs="TWiki06x00,Main,Plugins" users="guest" repeatheads="10"}%


The topic permissions tool can be viewed (and edited) by entering %TOPICPERMISSIONS% anywhere in a topic.

To add an "Edit ACLS" option to the "More topic actions" screen add 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

  • For an automated installation, run the configure script and follow "Find More Extensions" in the in the Extensions section.

  • Or, follow these manual installation steps:
    • Download the ZIP file from the extension home on twiki.org (see below).
    • Unzip WebPermissionsPlugin.zip in your twiki installation directory.
    • Set the ownership of the extracted directories and files to the webserver user.
    • Install the dependencies (if any).

  • Plugin configuration and testing:
    • Run the configure script and enable the plugin in the Plugins section.
    • Configure additional plugin settings in the Extensions section if needed.
    • Test if the installation was successful using the examples provided.

To access the Topic Permission editor, add webpermissions to the SKIN setting in TWikiPreferences, such as Set SKIN=webpermissions,pattern

Plugin Info

Many thanks to the following sponsors for supporting this work:

Plugin Author: TWiki:Main.CrawfordCurrie & TWiki:Main.SvenDowideit
Copyright: © 2006, Evolved Media, Spanlink Communications and WikiRing;
© 2006-2013 TWiki:TWiki.TWikiContributor
License: GPL (GNU General Public License)
Plugin Version: 2013-06-18
Change History:  
2013-06-18 TWikibug:Item7154: Fix anchor issue; fix call to unofficial function -- TWiki:Main.PeterThoeny
2012-04-16 TWikibug:Item6868: Fix for error saving Topic ACLs; XHTML fixes; fix warnings -- TWiki:Main.PeterThoeny
2011-03-06 TWikibug:Item6655: XHTML fixes; Placing checkboxes before checkbox label to be compliant with web standards; better images for VIEW.gif VIEW.gif and CHANGE.gif CHANGE.gif -- TWiki:Main.PeterThoeny
2011-03-06 TWikibug:Item6655: Fix for TWiki-5.0 -- TWiki:Main.SzymonSobczyk
2010-05-26 TWikibug:Item6433: Doc improvements -- TWiki:Main.PeterThoeny
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@WikiRingPLEASENOSPAM.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
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 History Action Size Date Who Comment
Unknown file formatmd5 WebPermissionsPlugin.md5 r18 r17 r16 r15 r14 manage 0.2 K 2013-06-18 - 18:46 PeterThoeny  
Compressed Zip archivetgz WebPermissionsPlugin.tgz r18 r17 r16 r15 r14 manage 16.6 K 2013-06-18 - 18:46 PeterThoeny  
Compressed Zip archivezip WebPermissionsPlugin.zip r18 r17 r16 r15 r14 manage 22.6 K 2013-06-18 - 18:46 PeterThoeny  
Unknown file formatEXT WebPermissionsPlugin_installer r5 r4 r3 r2 r1 manage 4.1 K 2013-06-18 - 18:46 PeterThoeny  
Edit | Attach | Watch | Print version | History: r27 < r26 < r25 < r24 < r23 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r27 - 2013-10-16 - PeterThoeny
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.