Web Permissions Plugin

View and edit web permissions

This plugin provides a centralised interface to Foswiki 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
VIEW = CHANGE =
AlbumsSinglesReviewsStatistics
AnnieLennox
BillyBragg
ColinTowns
DavidSoul
EaglesGroup
VIEW = CHANGE =
AlbumsSinglesReviewsStatistics
AnnieLennox
BillyBragg
ColinTowns
DavidSoul
EaglesGroup


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

Editors

Viewers

       

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.

WEBPERMISSIONS

The WEBPERMISSIONS TML 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.

VIEW VIEWCHANGE CHANGE
Cannot edit: No authorised users in 'guest'

ALERT! When using the plugin with sub-web permissions, beware of access control settings that are
finalised in parent webs, as these settings will override settings in subwebs. Use the %SHOWPREFERENCE% macro to review preference settings (not available on all Foswiki versions).

TOPICPERMISSIONS

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,
$Foswiki::cfg{Plugins}{WebPermissionsPlugin}{modes} = 'VIEW,CHANGE,RENAME';
See AccessControl 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.

Open configure, and open the "Extensions" section. Use "Find More Extensions" to get a list of available extensions. Select "Install".

If you have any problems, or if the extension isn't available in configure, then you can still install manually from the command-line. See http://foswiki.org/Support/ManuallyInstallingExtensions for more help.

To access the Topic Permission editor, add webpermissions to the SKIN setting in SitePreferences . e.g. Set SKIN=webpermissions,pattern)

Plugin Info

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

Many thanks to the following sponsors for supporting this work:

Author: Foswiki:Main.CrawfordCurrie & Foswiki:Main.SvenDowideit, http://wikiring.com
Copyright: © 2006, Evolved Media Network, Spanlink Communications and WikiRing
License: GPL (GNU General Public License)
Version: 7708 (2010-06-09)
Release: 9 Jun 2010
Change History:  
9 Jun 2010 Foswikitask:Item1484: Aaron Scamehorn finished porting
21 Apr 2009 Foswikitask:Item1484: Sven Dowideit, Crawford Currie, ported to Foswiki
Dependencies: None
Plugin Home: http://foswiki.org/Extensions/WebPermissionsPlugin
Feedback: http://foswiki.org/Extensions/WebPermissionsPluginDev
Appraisal: http://foswiki.org/Extensions/WebPermissionsPluginAppraisal

Related Topics: DefaultPreferences, SitePreferences, DeveloperDocumentationCategory, AdminDocumentationCategory, DefaultPreferences, SitePreferences
Topic revision: r1 - 23 Jun 2010, UnknownUser - This page was cached on 17 May 2019 - 13:23.

THE UNIVERSITY OF UTAHSPENCER S. ECCLES HEALTH SCIENCES LIBRARY
10 N. 1900 E. SALT LAKE CITY, UT 84112 • 801.581.7535
Ideas, requests, problems regarding Eccles Health Sciences Library wiki? Send feedback