Manual:Diretus di uzuári
Diretus di uzuári é pirmisons (sima kapasidadi pa idita pájinas o pa blokia uzuáris) ki podi dadu pa grupus di uzuári diferenti. MídiaUiki tene un difinison padron di diretus di uzuári i grupus di uzuári, mas es podi kustumizadu. Es pájina ta splika diretus padron di uzuári, i modi ki es podi kustumizadu.
For information about how to add and remove individual wiki users from groups, see Djuda:Diretus di uzuári i di grupus di uzuári and Manual:Difini grupus di uzuári na MídiaUiki.
Changing group permissions
A default MediaWiki installation assigns certain rights to default groups (see table at #List of permissions).
You can change the default rights by editing the $wgGroupPermissions array in LocalSettings.php with the following syntax:
$wgGroupPermissions['group']['right'] = true /* o false */;
$wgGroupPermissions will be set in includes/DefaultSettings.php, but it is not present in LocalSettings.php. You will then need to add it in that file.If a member has multiple groups, they get all the permissions from each of the groups they are in.
All users, including anonymous users, are in the * group; all registered users are in the user group.
In addition to the default groups, you can arbitrarily create new groups using the same array.
Izénplus
This example will disable viewing of all pages not listed in $wgWhitelistRead, then re-enable for registered users only:
$wgGroupPermissions['*']['read'] = false;
# The following line is not actually necessary, since it's in the defaults. Setting '*' to false doesn't disable rights for groups that have the right separately set to true!
$wgGroupPermissions['user']['read'] = true;
This example will disable editing of all pages, then re-enable for users with confirmed email addresses only:
# Disable for everyone.
$wgGroupPermissions['*']['edit'] = false;
# Disable for users, too: by default 'user' is allowed to edit, even if '*' is not.
$wgGroupPermissions['user']['edit'] = false;
# Make it so users with confirmed email addresses are in the group.
$wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED;
# Hide group from user list.
$wgImplicitGroups[] = 'emailconfirmed';
# Finally, set it to true for the desired group.
$wgGroupPermissions['emailconfirmed']['edit'] = true;
Creating a new group and assigning permissions to it
Custom groups can be created. A group is created implicitly, by just assigning it rights in $wgGroupPermissions[ 'group-name' ] where group-name is the actual name of the group.
From MW 1.12, you can create your own groups into which users are automatically promoted (as with autoconfirmed) using $wgAutopromote.
Additionally to assigning permissions, you should create these three wiki pages with fitting content:
- MediaWiki:Group-<group-name> (content:
Name of the group) - MediaWiki:Group-<group-name>-member (content:
Name of a member of the group) - MediaWiki:Grouppage-<group-name> (content:
Name of the group page)
By default, bureaucrats can add users to, or remove them from, any group.
However, if you are using $wgAddGroups and $wgRemoveGroups, you may need to customize those instead.
Examples
This example will create an arbitrary projectmember group that can block users and delete pages, and whose edits are hidden by default in the recent changes log:
$wgGroupPermissions['projectmember']['bot'] = true;
$wgGroupPermissions['projectmember']['block'] = true;
$wgGroupPermissions['projectmember']['delete'] = true;
'random-group' or 'random_group' instead of 'random group'. Moreover it is recommended to only use lowercase letters to create a group.In this example, you would probably also want to create these pages:
- MediaWiki:Group-projectmember (content:
Project members) - MediaWiki:Group-projectmember-member (content:
Project member) - MediaWiki:Grouppage-projectmember (content:
Project:Project Members)
This will ensure that the group will be referred to as "Project members" throughout the interface, and a member will be referred to as a "Project member", and overviews will link the group name to Project:Project members.
This example disables write access (page editing and creation) by default, creates a group named writer, and grants it write access.
Users can be manually added to this group via Special:UserRights:
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['createpage'] = false;
$wgGroupPermissions['writer']['edit'] = true;
$wgGroupPermissions['writer']['createpage'] = true;
In this example, you would probably also want to create these pages:
- MediaWiki:Group-writer (content:
Writers) - MediaWiki:Group-writer-member (content:
Writer) - MediaWiki:Grouppage-writer (content:
Project:Write)
List of permissions
The following user rights are available in the latest version of MediaWiki. If you are using an older version, look at Special:Version on your wiki and see if your version is covered in the "Versions" column.
| Right | Description | User groups that have this right by default | Versions |
|---|---|---|---|
| <span id="Reading">Reading | |||
| read | Le pájinas – when set to false, override for specific pages with $wgWhitelistRead
Setting the user right
'read' to false only restricts access to wiki pages (such as articles and talk pages). Uploaded files (including images, files, docs) under the $wgUploadPath subdirectories will always remain publicly accessible via direct URL access by default.To restrict access to uploaded files, refer to the instructions in Manual:Image authorization and img_auth.php. |
*, user | 1.5+ |
| <span id="Editing">Editing | |||
| applychangetags | Aplika itikétas djuntu ku alterasons – requires the edit right
|
user | 1.25+ |
| autocreateaccount | Kuneta otumatikamenti ku un kónta stérnu di uzuári - a more limited version of createaccount
|
— | 1.27+ |
| createaccount | Kiria nobus kónta di uzuári – register / registration | *, sysop | 1.5+ |
| createpage | Kiria pájinas (kes ki ka é pájina di kunbérsu) – requires the edit right
|
*, user | 1.6+ |
| createtalk | Kiria pájinas di kunbérsu – requires the edit right
|
*, user | 1.6+ |
| delete-redirect | Ilimina radiresonamentus di ravizon úniku (note that this is not needed if the group already has the delete right)
|
— | 1.36+ |
| edit | Idita pájinas – requires the read right
|
*, user | 1.5+ |
| editsemiprotected | Idita pájinas purtejidu kumó (semi protected) – without cascading protection – requires the edit right
|
autoconfirmed, bot, sysop | 1.22+ |
| editprotected | Idita pájinas purtejidu kumó (fully protected) – without cascading protection – requires the edit right
|
sysop | 1.13+ |
| minoredit | Marka idisons kuma pikénu – requires the edit right
|
user | 1.6+ |
| move | Ranumia pájinas – requires the edit right
|
user, sysop | 1.5+ |
| move-categorypages | Ranumia katigurias – requires the move right
|
user, sysop | 1.25+ |
| move-rootuserpages | Ranumia pájina raís di uzuáris – requires the move right
|
user, sysop | 1.14+ |
| move-subpages | Ranumia pájinas ku si subipájinas – requires the move right
|
user, sysop | 1.13+ |
| movefile | Ranumia fixerus – requires the move right as well
|
user, sysop | 1.14+ |
| reupload | Subustitui fixerus izistenti – requires the upload right
|
user, sysop | 1.6+ |
| reupload-own | Subustitui fixerus izistenti nviadu pa mésmu uzuári – requires the upload right (note that this is not needed if the group already has the reupload right)
|
— | 1.11+ |
| reupload-shared | Subustitui lukalmenti fixerus na rapuzitóri di mídia kunpartidjadu – (if one is set up) with local files (requires the upload right)
|
user, sysop | 1.6+ |
| sendemail | Nvia kureiu iletróniku pa otus uzuári | user | 1.16+ |
| upload | Nvia fixerus – requires the edit right and $wgEnableUploads to be true
|
user, sysop | 1.5+ |
| upload_by_url | Nvia fixerus di un nderésu URL – requires the upload right (Prior to 1.20 it was given to sysops)
|
— | 1.8+ |
| <span id="Management">Management | |||
| autopatrol | Modifies certain actions performed by the permission holder, automatically marking them as "patrolled" – Depends on $wgUseRCPatrol, $wgUseNPPatrol, $wgUseFilePatrol
|
bot, sysop | 1.9+ |
| bigdelete | Ilimina pájinas ku stóriku grandi (as determined by $wgDeleteRevisionsLimit) – requires the delete right
|
sysop | 1.12+ |
| block | Blokia o disblokia otus uzuári di diretu di idita – Block options include preventing editing and registering new accounts, and autoblocking other users on the same IP address | sysop | 1.5+ |
| blockemail | Blokia o disblokia un uzuári di ason di nvia un kureiu iletróniku – allows preventing use of the Special:Emailuser interface when blocking – requires the block right
|
sysop | 1.11+ |
| browsearchive | Piskiza pájinas iliminadu – through Special:Undelete – requires the deletedhistory right
|
sysop | 1.13+ |
| changetags | Kirsenta o ramovi itikétas arbitrári na tudu ravizon ndividual i antrada di rajistu – currently unused by extensions | user | 1.25+ |
| delete | Ilimina pájinas 1.5-1.11allows the deletion or undeletion of pages 1.12+allows the deletion of pages (for undeletions, there is now the undelete right, see below)
|
sysop | 1.5+ |
| deletedhistory | Udja antradas di stóriku iliminadu, sin sis testu susiadu | sysop | 1.6+ |
| deletedtext | Udja testu iliminadu i alterasons entri ravizons iliminadu – requires the deletedhistory right
|
sysop | 1.16+ |
| deletelogentry | Ilimina i rastora antradas di rajistu spisífiku – allows deleting/undeleting information (action text, summary, user who made the action) of specific log entries – requires the deleterevision right
|
suppress | 1.20+ |
| deleterevision | Ilimina i rastora ravizons di pájina spisífiku – allows deleting/undeleting information (revision text, edit summary, user who made the edit) of specific revisions (Split into deleterevision and deletelogentry in 1.20)
|
suppress | 1.6+ |
| editcontentmodel | Idita mudelu di kuntiúdu di un pájina – requires the edit right
|
user | 1.23.7+ |
| editinterface | Idita nterfási di uzuári – contains interface messages. For editing sitewide CSS/JSON/JS, there are now segregate rights, see below. – requires the edit right
|
sysop, interface-admin | 1.5+ |
| editmyoptions | Idita bus prifirénsa | * | 1.22+ |
| editmyprivateinfo | Idita bus dadu privadu (izénplus: kureiu iletróniku, nómi berdaderu) i sulisita kureiu iletróniku pa radifinison di palabra-pasi – also hides the "Change Password", but not other ways to change the password – requires the viewmyprivateinfo right
|
* | 1.22+ |
| editmyusercss | Idita bus fixeru CSS di uzuári – prior to 1.31 it was assigned to everyone (i.e. *) (note that this is not needed if the group already has the editusercss right) – requires the edit right
|
user | 1.22+ |
| editmyuserjs | Idita bus fixeru JavaScript di uzuári – prior to 1.31 it was assigned to everyone (i.e. *) (note that this is not needed if the group already has the edituserjs right) – requires the edit right
|
user | 1.22+ |
| editmyuserjsredirect | Idita bus fixeru JavaScript di uzuári ki é radiresonamentus (note that this is not needed if the group already has the edituserjs right) – requires the edit right
|
— | 1.34+ |
| editmyuserjson | Idita bus fixeru JSON di uzuári (note that this is not needed if the group already has the edituserjson right) – requires the edit right
|
user | 1.31+ |
| editmywatchlist | Idita bu lista di pájinas biziadu (ozerba ma alguns ason ta kuntinua ta kirsenta pájinas, mésmu sin es diretu) – requires the viewmywatchlist right
|
user | 1.22+ |
| editsitecss | Idita CSS di sáiti nter – requires the editinterface right
|
interface-admin | 1.32+ |
| editsitejs | Idita JavaScript di sáiti nter – requires the editinterface right
|
interface-admin | 1.32+ |
| editsitejson | Idita JSON di sáiti nter – requires the editinterface right
|
sysop, interface-admin | 1.32+ |
| editusercss | Idita fixerus CSS di otus uzuári – requires the edit right
|
interface-admin | 1.16+ |
| edituserjs | Idita fixerus JavaScript di otus uzuári – requires the edit right
|
interface-admin | 1.16+ |
| edituserjson | Idita fixerus JSON di otus uzuári – requires the edit right
|
sysop, interface-admin | 1.31+ |
| hideuser | Blokia o disblokia un nómi di uzuári, pa sukundi-l o txa-l vizívi pa públiku – Only users with 1000 edits or less can be suppressed by default – requires the block right
Use |
suppress | 1.10+ |
| ignore-restricted-groups | Igunora kundisons pa idita sértus grupu di uzuáris rastrinjidu – Only applies to groups the user would be otherwise able to change, based on userrights right and the contents of $wgAddGroups.
|
— | 1.46+ |
| markbotedits | Marka idisons ravertidu kumó idisons di robô – see Manual:Rollback – requires the rollback right
|
sysop | 1.12+ |
| mergehistory | Djunta stóriku di pájinas – requires the edit right
|
sysop | 1.12+ |
| pagelang | Altera linga di pájina – $wgPageLanguageUseDB must be true
|
— | 1.24+ |
| patrol | Mark certain actions as "patrolled" – depends on $wgUseRCPatrol, $wgUseNPPatrol, $wgUseFilePatrol
|
sysop | 1.5+ |
| patrolmarks | Udja markasons di patrudjamentu di alterasons rasenti (note that this is not needed if the group already has the patrol right)
|
— | 1.16+ |
| protect | Altera kunfigurasons di purteson i idita pájinas ki tene purteson in kaskata – requires the edit right
|
sysop | 1.5+ |
| rollback | Disfasi déntu faxi kes idison di últimu uzuári ki idita un pájina spisífiku – requires the edit right
|
sysop | 1.5+ |
| suppressionlog | Udja rajistus privadu | suppress | 1.6+ |
| suppressrevision | Udja, sukundi i izibi ravizons spisífiku di pájina di kolker uzuári – Prior to 1.13 this right was named hiderevision – requires the deleterevision right
|
suppress | 1.6+ |
| unblockself | Disblokia si própi – Without it, an administrator that has the capability to block cannot unblock themselves if blocked by another administrator | sysop | 1.17+ |
| undelete | Rastora un pájina – requires the deletedhistory right
|
sysop | 1.12+ |
| userrights | Idita tudu diretu di uzuári – allows the assignment or removal of all(*) groups to any user. (*)With |
bureaucrat | 1.5+ |
| userrights-interwiki | Idita diretu di uzuári na otus uiki – requires the userrights right
|
— | 1.12+ |
| viewmyprivateinfo | Udja bus dadu privadu (izénplus: kureiu iletróniku, nómi berdaderu) | * | 1.22+ |
| viewmywatchlist | Udja bu lista di pájinas biziadu | user | 1.22+ |
| viewsuppressed | Udja ravizons sukundidu fetu pa kolker uzuári – i.e. a more narrow alternative to suppressrevision (note that this is not needed if the group already has the suppressrevision right)
|
suppress | 1.24+ |
| <span id="Administration">Administration | |||
| deletechangetags | Ilimina itikétas di bazi di dadus – currently unused by extensions | sysop | 1.28+ |
| import | Nporta pájinas di otus uiki – "transwiki" – requires the edit right
|
sysop | 1.5+ |
| importupload | Nporta pájinas di un fixeru karagadu – This right was called importraw in and before version 1.5 – requires the edit right
|
sysop | 1.5+ |
| managechangetags | Kiria i (diz)ativa itikétas – currently unused by extensions | sysop | 1.25+ |
| renameuser | Ranumia uzuáris (formerly was part of the Renameuser extension) | bureaucrat | 1.40+ |
| siteadmin | Blokia i disblokia bazi di dadus – which blocks all interactions with the web site except viewing. (not available by default) | — | 1.5+ |
| unwatchedpages | Udja un lista di pájinas non patrudjadu – lists pages that no user has watchlisted | sysop | 1.6+ |
| <span id="Technical">Technical | |||
| apihighlimits | Uza limitis supirior na kunsultas ku API | bot, sysop | 1.12+ |
| autoconfirmed | Ka ser afetadu pa limitis di frikuénsa di idison baziadu na nderésus di IP – used for the autoconfirmed group; see the other table below for more information (note that this is not needed if the group already has the noratelimit right)
|
autoconfirmed, bot, sysop | 1.6+ |
| bot | Ser tratadu kuma un pursésu otumatizadu – edits and logged actions are hidden from recent changes, can optionally be viewed | bot | 1.5+ |
| ipblock-exempt | Igunora blokeius di IP, blokeius otumátiku i blokeius di faxa di IP | sysop | 1.9+ |
| nominornewtalk | Ka dizankadia abizu di mensájis nobu dispos di fasedu idisons pikénu na pájinas di kunbérsu – requires the minoredit right
|
bot | 1.9+ |
| noratelimit | Ka ser afetadu pa limitis di frikuénsa di idison – not affected by rate limits (prior to the introduction of this right, the configuration variable $wgRateLimitsExcludedGroups was used for this purpose)
|
sysop, bureaucrat | 1.13+ |
| override-export-depth | Sporta pájinas, nkluzivi pájinas ligadu, ti un purfundidadi di 5 With this right, you can define the depth of linked pages at Special:Export. Otherwise, the value of $wgExportMaxLinkDepth, which is 0 by default, will be used.
|
— | 1.15+ |
| suppressredirect | Non kiria un radiresonamentu di nómi bédju kantu un pájina é ranumiadu – requires the move right
|
bot, sysop | 1.12+ |
Predefined groups
The following groups are available in the latest version of MediaWiki. If you are using an older version then some of these may not be implemented.
| Group | Description | Default rights | Versions |
|---|---|---|---|
| * | All users (including anonymous). | createaccount, createpage, createtalk, edit, editmyoptions, editmyprivateinfo, read, viewmyprivateinfo | 1.5+ |
| temp | Temporary user accounts (T330816) | Similar to * group
|
1.41+ |
| user | Registered accounts. Does not include temporary accounts. | applychangetags, changetags, createpage, createtalk, edit, editcontentmodel, editmyusercss, editmyuserjs, editmyuserjson, editmywatchlist, minoredit, move, move-categorypages, move-rootuserpages, move-subpages, movefile, purge, read, reupload, reupload-shared, sendemail, upload, viewmywatchlist | 1.13+ |
| autoconfirmed | Registered accounts at least as old as $wgAutoConfirmAge and having at least as many edits as $wgAutoConfirmCount.
|
autoconfirmed, editsemiprotected | 1.6+ |
| bot | Accounts with the bot right (intended for automated scripts). | autoconfirmed, autopatrol, apihighlimits, bot, editsemiprotected, nominornewtalk, suppressredirect | 1.5+ |
| sysop | Users who by default can delete and restore pages, block and unblock users, etc. | apihighlimits, autoconfirmed, autopatrol, bigdelete, block, blockemail, browsearchive, createaccount, delete, deletedhistory, deletedtext, editinterface, editprotected, editsemiprotected, editsitejson, edituserjson, import, importupload, ipblock-exempt, managechangetags, markbotedits, mergehistory, move, move-categorypages, move-rootuserpages, move-subpages, movefile, noratelimit, patrol, protect, reupload, reupload-shared, rollback, suppressredirect, unblockself, undelete, unwatchedpages, upload | 1.5+ |
| interface-admin | Users who can edit sitewide CSS and JavaScript. | editinterface, editsitecss, editsitejs, editsitejson, editusercss, edituserjs, edituserjson | 1.32+ |
| bureaucrat | Users who can change the rights of other users by default and therefore have full access of the entire wiki. | noratelimit, renameuser, userrights | 1.5+ |
| suppress | deletelogentry, deleterevision, hideuser, suppressionlog, suppressrevision, viewsuppressed | 1.13+ |
Removing predefined groups
MediaWiki out of the box comes with a number of predefined groups. Most of these groups can be removed by unsetting the according array keys, among them $wgGroupPermissions[ 'group-name' ]. For details, see below.
Example
This example will eliminate the bureaucrat group entirely.
It is necessary to ensure that all six of these variables are unset for any group that one wishes to remove from being listed at Special:ListGroupRights; however, merely unsetting $wgGroupPermissions will suffice to remove it from Special:UserRights.
unset( $wgGroupPermissions['bureaucrat'] );
unset( $wgRevokePermissions['bureaucrat'] );
unset( $wgAddGroups['bureaucrat'] );
unset( $wgRemoveGroups['bureaucrat'] );
unset( $wgGroupsAddToSelf['bureaucrat'] );
unset( $wgGroupsRemoveFromSelf['bureaucrat'] );
This code will not work if any extension that modifies the default rights for the bureaucrat group, such as Extension:AntiSpoof, is installed.
More broadly, to disable a user group created by an extension, the above code needs to run after all extensions have been registered.
This used to be possible by registering an extension function in LocalSettings.php:
$wgExtensionFunctions[] = function() use ( &$wgGroupPermissions ) {
unset( $wgGroupPermissions['oversight'] );
unset( $wgGroupPermissions['flow-bot'] );
};
However, this no longer works reliably due to T275334.
user
With the above mechanism, you can remove the groups sysop, bureaucrat, bot, interface-admin, suppress, which - if used - can be assigned through the usual user permission system.
However, it is currently impossible to remove the user group.
This group is not assigned through the usual permission system.
Instead, every registered user automatically is a member of that group.
Diretus padron
The default rights are defined in MainConfigSchema.php.
- Default values in the current alpha version (HEAD, version 1.46)
- Default values in the latest stable version (branch REL1_45, version 1.45)
- Additional rights: you should be able to list all the permissions available on your wiki by running
PermissionManager::getAllRights().
Adding new rights
Information for coders only follows.
If you're adding a new right in core, for instance to control a new special page, you are required to add it to the list of available rights in PermissionManager.php, $coreRights (example).
If you're doing so in an extension, you instead need to use $wgAvailableRights.
You probably also want to assign it to some user group by editing $wgGroupPermissions described above.
If you want this right to be accessible to external applications by OAuth or by bot passwords, then you will need to add it to a grant by editing $wgGrantPermissions.
// create projectmember-powers right
$wgAvailableRights[] = 'projectmember-powers';
// add projectmember-powers to the projectmember-group
$wgGroupPermissions['projectmember']['projectmember-powers'] = true;
// add projectmember-powers to the 'basic' grant so we can use our projectmember powers over an API request
$wgGrantPermissions['basic']['projectmember-powers'] = true;
You also need to add right-[name] and action-[name] interface messages to /languages/i18n/en.json (with documentation in qqq.json).
The right-* messages can be seen on Special:ListGroupRights and the action-* messages are used in a sentence like "You do not have permission to ...".
See also
- Special:ListGroupRights – Links to this help page and might contain not yet documented rights
- Djuda:Diretus di uzuári i di grupus di uzuári – Help page describing use of the Special:Userrights interface (for bureaucrats)
- Manual:Difini grupus di uzuári na MídiaUiki – Information about managing and the assignment of user groups.
- Manual:$wgNamespaceProtection
- Manual:$wgAutopromote
- Manual:$wgAddGroups, Manual:$wgRemoveGroups
- Manual:Preventing access – Examples
- Manual:Establishing a hierarchy of bureaucrats
- Category:User rights extensions – Many extensions relating to user rights