User:Jeblad/Access in a research wiki

From mediawiki.org

Access in a research wiki diverges from an ordinary wiki in that some users are unknown (unknown users), some are known (writers), some has some kind of qualifications and are able to lead the work (reviewers) and some have a more technical and administrative role (sysops). Both registered and unregistered users might be unknown, it is only after due checking of the credentials someone can be acknowledged as "known". This might not be that someome in fact checks out where an user lives, it can be a peer review of previous articles that establishes this identification of credentials.

If a wiki uses patrolling a known user (writer) will typically be an autopatroller. An user that is given the rights to do peer review (reviewer) of other users work will typically be a patroller. In this scheme an unknown user will be red-flagged and then be easilly spotted by the patrollers.

If a wiki uses FlaggedRevs a known user will be an writer and an user doing peer review will be a reviewer. In this scheme all works presented for the reader can be enforced to be according to certain quality criterias.

The sysop in both of the previous schemes wil be primarily an administrative and technical role. This makes it possible for sysops to focus on the wiki technicalities, and leave the research aspect to the writers and reviewers. Normally this is a situation that is strongly wanted as sysops will be a scarce resource in most research establishments.

Configuration[edit]

As noted there are two different approaches.

Patrolling, 1.5 upwards[edit]

// Implicit group for all visitors
$wgGroupPermissions['*'    ]['createaccount']   = true;
$wgGroupPermissions['*'    ]['read']            = true;
$wgGroupPermissions['*'    ]['edit']            = false; // set this to 'true' to allow anonymous edits
$wgGroupPermissions['*'    ]['createpage']      = false;
$wgGroupPermissions['*'    ]['createtalk']      = false;

// This will add the autopatrol group
$wgGroupPermissions['writer']['autopatrol']     = true;

// This will add the patrol group
$wgGroupPermissions['reviewer']['patrol']       = true;
$wgGroupPermissions['reviewer']['rollback']     = true;
$wgGroupPermissions['reviewer']['autopatrol']   = true;

// This will give bureaucrats, sysops and patrol access to the Special:Userrights page
$wgGroupPermissions['bureaucrat']['userrights'] = true;
$wgGroupPermissions['sysop']['userrights']      = true;
$wgGroupPermissions['reviewer']['userrights']   = true;

// This will restrict bureaucrats, sysops and patrol to add/remove only the specified groups in the Special:Userrights page
$wgAddGroups['bureaucrat'] = array( 'bureaucrat', 'sysop', 'bot', 'reviewer', 'writer' );
$wgAddGroups['sysop'] = array( 'reviewer', 'writer' );
$wgAddGroups['reviewer'] = array( 'writer' );
$wgRemoveGroups['bureaucrat'] = array( 'bureaucrat', 'sysop', 'bot', 'reviewer', 'writer' );
$wgRemoveGroups['sysop'] = array( 'reviewer', 'writer' );
$wgRemoveGroups['reviewer'] = array( 'writer' );

// Make protection levels
$wgRestrictionLevels = array( '', 'autoconfirmed', 'writer', 'reviewer', 'sysop' );
$wgGroupPermissions['writer']['writer'] = true; // set this to 'false' to disallow writers to change protection level
$wgGroupPermissions['reviewer']['reviewer'] = true;
$wgGroupPermissions['sysop']['sysop'] = true;

If you add additional levels (e.g. 'docwriters') those can be named via editing the content of 'MediaWiki:Protect-level-docwriters'.

See also[edit]