MediaWiki/Benutzerrechte: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „MediaWiki:“ durch „MediaWiki/“
Zeile 88: Zeile 88:
== Liste der Berechtigungen ==
== Liste der Berechtigungen ==
Die folgenden Benutzerrechte sind bei der neusten Version von MediaWiki verfügbar: Wird eine ältere Version benutzt, kann die Version des Wikis mittels Special:Version mit dem Eintrag in der Spalte „Versionen“ verglichen werden.
Die folgenden Benutzerrechte sind bei der neusten Version von MediaWiki verfügbar: Wird eine ältere Version benutzt, kann die Version des Wikis mittels Special:Version mit dem Eintrag in der Spalte „Versionen“ verglichen werden.
{| class="wikitable sortable"
{| class="wikitable sortable big"
!Recht
!Recht
!Beschreibung
!Beschreibung

Version vom 2. Juni 2024, 22:17 Uhr

Benutzerrechte sind bestimmte Berechtigungen (wie das Bearbeiten von Seiten oder das Sperren von Benutzern), die zu verschiedenen Benutzergruppen zugeordnet werden können. MediaWiki wird mit Standardeinstellungen für Benutzer- und Benutzergruppenrechte ausgeliefert. Diese können allerdings angepasst werden. Diese Seite beschreibt die Standardrechte und -gruppen und erklärt, wie diese angepasst werden.

Informationen darüber, wie einzelne Wiki-Benutzer zu Gruppen hinzufügt und aus Gruppen entfernt werden können, finden sich unter Help:Benutzerrechte und Benutzergruppen und Manual:Einstellungen für Benutzergruppen in MediaWiki.

Gruppenberechtigungen ändern

Eine Standardinstallation ordnet bestimmte Rechte zu Standardgruppen zu (siehe unten). Sie können die Standardrechte ändern, indem Sie das $wgGroupPermissions in LocalSettings.php mit der Syntax bearbeiten.

$wgGroupPermissions['group']['right'] = true /* oder false */;

Bei einer Standardinstallation wird $wgGroupPermissions in includes/DefaultSettings.php gesetzt, aber es ist nicht in LocalSettings.php vorhanden. Es muss dann in dieser Datei hinzufügt werden.

Gehört ein Mitglied mehreren Gruppen an, so erhält es alle Berechtigungen aus jeder Gruppe, in der es sich befindet. Alle Benutzer, einschließlich der anonymen Benutzer, sind in der '*'-Gruppe; alle registrierten Benutzer sind in der 'user'-Gruppe. Zusätzlich zu den Standardgruppen können beliebig neue Gruppen mit dem gleichen Array erstellt werden.

Beispiele

Dieses Beispiel deaktiviert die Anzeige von allen Seiten, die nicht in $wgWhitelistRead aufgeführt werden, und aktiviert sie wieder nur für registrierte Benutzer:

$wgGroupPermissions['*']['read'] = false;
# Die folgende Zeile ist nicht notwendig, da sie bereits in der Voreinstellung vorhanden ist. Die Belegung von '*' mit <code>false</code> entzieht den Benutzergruppen, die das Recht separat zugewiesen bekommen haben, nicht das entsprechende Recht.
$wgGroupPermissions['user']['read'] = true;

Dieses Beispiel deaktiviert Bearbeitung aller Seiten, dann wieder nur für registrierte Benutzer mit bestätigter E-Mail-Adresse aktiviert:

# Deaktivieren für alle.
$wgGroupPermissions['*']['edit'] = false;
# Auch für Benutzer deaktivieren: Nach der Voreinstellung dürfen Benutzer bearbeiten, auch wenn <code>*</code> das nicht können.
$wgGroupPermissions['user']['edit'] = false;
# Konfiguration der Gruppe, sodass E-Mail-bestätigte Benutzer in dieser Gruppe sind.
$wgAutopromote['emailconfirmed'] = APCOND_EMAILCONFIRMED;
# Ausblendung der Gruppe von der Benutzerliste.
$wgImplicitGroups[] = 'emailconfirmed';
# Abschließend das Bearbeiten für diese Benutzergruppe erlauben.
$wgGroupPermissions['emailconfirmed']['edit'] = true;

Erstellung einer neuen Gruppe und Zuweisung von Berechtigungen

Neue Benutzergruppen werden erstellt, indem Berechtigungen für den entsprechenden Gruppennamen in $wgGroupPermissions[ 'group-name' ] definiert werden, wobei <group-name> der tatsächliche Name der Gruppe ist.

Zusätzlich zur Zuweisung der Berechtigungen sollten diese drei Wiki-Seiten entsprechend angelegt werden:

  • MediaWiki/Group-<group-name> (Inhalt: Name der Gruppe)
  • MediaWiki/Group-<group-name>-member (Inhalt: Bezeichnung der Gruppenmitglieder)
  • MediaWiki/Grouppage-<group-name> (Inhalt: Name der Gruppenseite)

Gemäß den Voreinstellungen können Bürokraten Benutzer zu beliebigen Gruppen hinzufügen und aus diesen entfernen. Wenn Handbuch:$wgAddGroups und Handbuch:$wgRemoveGroups benutzt werden, muss diese Angabe angepasst werden.

Beispiele

Dieses Beispiel erstellt eine willkürliche „Projektmitglieder“-Gruppe, die Benutzer blockieren und Seiten löschen kann und deren Bearbeitungen im Änderungsprotokoll der letzten Bearbeiten standardmäßig ausgeblendet sind:

$wgGroupPermissions['projectmember']['bot'] = true;
$wgGroupPermissions['projectmember']['block'] = true;
$wgGroupPermissions['projectmember']['delete'] = true;

Der Name darf keine Leerzeichen enthalten, so sind 'random-group' oder 'random_group' anstelle von 'random group' zu verwenden. Außerdem wird empfohlen, bei der Erstellung einer Gruppe nur Kleinbuchstaben zu verwenden.

In diesem Beispiel ist es sinnvoll, auch folgende Seiten zu erstellen:

  • MediaWiki/Group-projectmember (Inhalt: Projektmitglieder)
  • MediaWiki/Group-projectmember-member (Inhalt: Projektmitglied)
  • MediaWiki/Grouppage-projectmember (Inhalt: Projekt:Projektmitglieder)

Dadurch wird sichergestellt, dass die Gruppe als „Projektmitglieder“ in der Schnittstelle bezeichnet wird, und ein Mitglied wird als „Projektmitglied“ bezeichnet werden, und Übersichten werden den Gruppennamen zu Projekt:Projektmitglieder verlinken.

In diesem Beispiel wird der Schreibzugriff (Seitenbearbeitung und -erstellung) standardmäßig ausgeschaltet, eine Gruppe „Write“ erstellt und dieser Schreibzugriff gegeben. Die Benutzer können manuell mittels Special:UserRights dieser Gruppe hinzugefügt werden.

$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['createpage'] = false;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['createpage'] = false;
$wgGroupPermissions['writer']['edit'] = true;
$wgGroupPermissions['writer']['createpage'] = true;

In diesem Beispiel ist es sinnvoll, auch folgende Seiten zu erstellen:

  • MediaWiki/Group-writer (Inhalt: Writers)
  • MediaWiki/Group-writer-member (Inhalt: Writer)
  • MediaWiki/Grouppage-writer (Inhalt: Projekt:Write)

Entfernen vordefinierter Gruppen

MediaWiki enthält eine Anzahl vordefinierter Gruppen. Ein Großteil dieser Gruppen kann durch das Löschen der Zuweisungen wie $wgGroupPermissions[ '<group-name>' ] entfernt werden. Für Details, siehe unten.

Beispiele

Dieses Beispiel wird die Gruppe Bürokrat vollständig auflösen. Es ist notwendig um sicherzustellen, dass alle sechs dieser Variablen für jede Gruppe ungesetzt sind, das man sich wünscht, das man bei Special:ListGroupRights aufgeführt ist zu entfernen; allerdings $wgGroupPermissions lediglich zurückzusetzen reicht aus, um sie von Special:UserRights zu entfernen. Dieser Code sollte nach einer require_once-Zeile eingefügt werden, die Erweiterungen wie Extension:AntiSpoof hinzufügt, die Code enthält, der Bürokraten standardmäßig Gruppenberechtigungen gibt.

unset( $wgGroupPermissions['bureaucrat'] );
unset( $wgRevokePermissions['bureaucrat'] );
unset( $wgAddGroups['bureaucrat'] );
unset( $wgRemoveGroups['bureaucrat'] );
unset( $wgGroupsAddToSelf['bureaucrat'] );
unset( $wgGroupsRemoveFromSelf['bureaucrat'] );

Einige Erweiterungen fügen Benutzerrechte hinzu (bspw. Flow, Semantic MediaWiki, etc.). Hier ist es notwendig, eine Zuweisung in LocalSettings.php vorzunehmen, um diese Rechte wieder zu entfernen.

$wgExtensionFunctions[] = function() use ( &$wgGroupPermissions ) {
    unset( $wgGroupPermissions['oversight'] );
    unset( $wgGroupPermissions['flow-bot'] );
};

Bemerkung zur Benutzergruppe „user“

Mit den oben beschriebenen Maßnahmen können die Benutzergruppen Administrator, Bürokrat und Bot entfernt werden, welche für gewöhnlich über das gewöhnliche Benutzerrechtesystem vergeben werden. Momentan ist es jedoch unmöglich die Benutzergruppe user zu entfernen. Die Gruppenmitgliedschaft wird nicht über das Benutzerrechtesystem vergeben. Stattdessen wird jeder angemeldete Benutzer automatisch Mitglied. Dies ist in MediaWiki festgeschrieben und kann nicht einfach geändert werden.

Liste der Berechtigungen

Die folgenden Benutzerrechte sind bei der neusten Version von MediaWiki verfügbar: Wird eine ältere Version benutzt, kann die Version des Wikis mittels Special:Version mit dem Eintrag in der Spalte „Versionen“ verglichen werden.

Recht Beschreibung Die Benutzergruppen haben dieses Recht in der Voreinstellung. Versionen
Lesen
read Seiten lesen - Wenn das Recht entzogen ist, können einzelne Seiten mit der Einstellung $wgWhitelistRead ausgenommen werden.
Warnung: Setting the user right "read" (allow viewing pages) to false will only protect wiki (article, talk, ...) pages, but uploaded files (images, files, docs... in the $wgUploadPath subdirectories) will always remain readable via direct access by default.

Use the information from Manual:Image authorization and img_auth.php pages when you have the need to restrict image views and file download access to only logged-in users.

*, user 1.5+
Bearbeiten
applychangetags Markierungen zusammen mit den Änderungen anwenden - erfordert das „edit“-Recht user 1.25+
autocreateaccount Automatische Anmeldung mit einem externen Benutzerkonto - Eine stärker begrenzte Version von createaccount 1.27+
createaccount Benutzerkonto erstellen - register / registration *, sysop 1.5+
createpage Seiten erstellen (die keine Diskussionsseiten sind) - erfordert das „edit“-Recht *, user 1.6+
createtalk Diskussionsseiten erstellen - erfordert das „edit“-Recht *, user 1.6+
delete-redirect Löschen einer Weiterleitung mit einer Version (dies ist nicht erforderlich, wenn die Gruppe bereits das Recht auf delete hat) 1.36+
edit Seiten bearbeiten *, user 1.5+
editsemiprotected Seiten bearbeiten, die als „Allow only autoconfirmed users“ geschützt sind - ohne kaskadierenden Schutz - requires the edit right autoconfirmed, bot, sysop 1.22+
editprotected Seiten bearbeiten, die als „Allow only administrators“ geschützt sind - ohne kaskadierenden Schutz - requires the edit right sysop 1.13+
minoredit Bearbeitungen als klein markieren - erfordert das „edit“-Recht user 1.6+
move Seiten verschieben - erfordert das „edit“-Recht user, sysop 1.5+
move-categorypages Kategorieseiten verschieben - erfordert das „move“-Recht user, sysop 1.25+
move-rootuserpages Haupt-Benutzerseiten verschieben - erfordert das „move“-Recht user, sysop 1.14+
move-subpages Seiten inklusive Unterseiten verschieben - erfordert das „move“-Recht user, sysop 1.13+
movefile Dateien verschieben - erfordert das „move“-Recht und $wgAllowImageMoving sollte true sein user, sysop 1.14+
reupload Überschreiben einer vorhandenen Datei - erfordert das „upload“-Recht user, sysop 1.6+
reupload-own Überschreiben einer zuvor selbst hochgeladenen Datei - erfordert das „upload“-Recht (nicht erforderlich, wenn die Benutzergruppe bereits über das Recht reupload verfügt) 1.11+
reupload-shared Lokales Überschreiben einer in einem gemeinsam genutzten Repositorium vorhandenen Datei - (falls ein solches existiert) mit Dateien im Wiki (erfordert das „upload“-Recht) user, sysop 1.6+
sendemail E-Mails an andere Benutzer senden user 1.16+
upload Dateien hochladen - erfordert das „edit“-Recht und die Eigenschaft $wgEnableUploads muss auf true gesetzt sein user, sysop 1.5+
upload_by_url Dateien von einer URL-Adresse hochladen - erfordert das „upload“-Recht (vor der Version 1.20 an Sysop vergeben) 1.8+
Verwaltung
bigdelete Seiten mit großer Versionsgeschichte löschen (wie in $wgDeleteRevisionsLimit festgelegt) - erfordert das „delete“-Recht sysop 1.12+
block Sperren oder Entsperren von Benutzern für die Bearbeitung - Sperreinstellungen umfassen das Verhindern vom Bearbeiten und Erstellen neuer Benutzerkonten sowie automatisches Sperren anderer Benutzer mit der selben IP-Adresse sysop 1.5+
blockemail Sperren oder Entsperren eines Benutzers für das Senden von E-Mails - ermöglicht es, die Verwendung von Special:Emailuser zu verhindern, wenn eine Benutzersperre angelegt wird – erfordert das „$block“-Recht sysop 1.11+
browsearchive Nach gelöschten Seiten suchen - mittels Special:Undelete - erfordert das „deletedhistory“-Recht sysop 1.13+
changetags Beliebige Markierungen zu einzelnen Versionen und Logbucheinträgen hinzufügen und entfernen - derzeit von Erweiterungen nicht genutzt user 1.25+
delete Seiten löschen 1.5–1.11: ermöglicht das Löschen und Wiederherstellen von Seiten

1.12+: ermöglicht das Löschen von Seiten für Wiederherstellungen gibt es nun das 'undelete'-Recht (s. u.)

sysop 1.5+
deletedhistory Gelöschte Versionen in der Versionsgeschichte ansehen, ohne zugehörigen Text sysop 1.6+
deletedtext Gelöschte Texte und Versionsunterschiede zwischen gelöschten Versionen ansehen sysop
deletelogentry Einzelne Logbuch-Einträge löschen und wiederherstellen - ermöglicht das Löschen und Wiederherstellen von Informationen (wie Eintragung, Zusammenfassung, durchführender Benutzer) in spezifischen Logbuch-Einträgen – erfordert das Recht deleterevision suppress 1.20+
deleterevision Einzelne Versionen einer Seite löschen und wiederherstellen - ermöglicht das Löschen und Wiederherstellen von Informationen wie Textänderung, Zusammenfassung, entsprechender Benutzer einzelner Versionen einer Seite (in der Voreinstellung nicht verfügbar) Ab Version 1.20 in deleterevision und deletelogentry untergliedert suppress 1.6+
editcontentmodel Das Inhaltsmodell einer Seite bearbeiten - erfordert das „edit“-Recht user 1.23.7+
editinterface Systemnachrichten und Benutzeroberflächen bearbeiten - enthält Textbausteine der Benutzeroberfläche Zur Bearbeitung systemweiter CSS-, JSON- und JS-Definitionen gibt es nun einzelne Rechte (s.u.). - erfordert das „edit“-Recht sysop, interface-admin 1.5+
editmyoptions Eigene Einstellungen bearbeiten * 1.22+
editmyprivateinfo Eigene private Daten bearbeiten (beispielsweise E-Mail-Adresse, bürgerlicher Name) und E-Mails zum Zurücksetzen des Passworts anfordern - blendet auch die Option "Passwort ändern" aus, aber andere Möglichkeiten zur Änderung des Passworts nicht - erfordert das „viewmyprivateinfo“-Recht * 1.22+
editmyusercss Eigene Benutzer-CSS-Dateien bearbeiten - vor Version 1.31 an alle vergeben (nicht notwendig, wenn die Gruppe bereits über das editusercss-Recht verfügt) - erfordert das „edit“-Recht user 1.22+
editmyuserjs Eigene Benutzer-JavaScript-Dateien bearbeiten - vor Version 1.31 an alle vergeben (nicht notwendig, wenn die Gruppe bereits über das edituserjs-Recht verfügt) - erfordert das „edit“-Recht user 1.22+
editmyuserjsredirect Eigene Benutzer-JavaScript-Dateien bearbeiten, die Weiterleitungen sind (dies ist nicht erforderlich, wenn die Gruppe bereits das Recht edituserjs hat) - erfordert das „edit“-Recht 1.34+
editmyuserjson Eigene Benutzer-JSON-Dateien bearbeiten (nicht notwendig, wenn die Gruppe bereits über das edituserjson-Recht verfügt) - erfordert das „edit“-Recht user 1.31+
editmywatchlist Eigene Beobachtungsliste bearbeiten (beachte, dass einige Aktionen auch ohne dieses Recht Seiten hinzufügen) - erfordert das „viewmywatchlist“-Recht * 1.22+
editsitecss Wikiweit CSS bearbeiten - setzt das „editinterface“-Recht voraus interface-admin 1.32+
editsitejs Wikiweites JavaScript bearbeiten - erfordert das „editinterface“-Recht interface-admin 1.32+
editsitejson Wikiweites JSON bearbeiten - setzt das „editinterface“-Recht voraus sysop, interface-admin 1.32+
editusercss Fremde CSS-Dateien bearbeiten - erfordert das „edit“-Recht interface-admin 1.16+
edituserjs Fremde JavaScript-Dateien bearbeiten - setzt das „edit“-Recht voraus interface-admin 1.16+
edituserjson JSON-Dateien anderer Benutzer bearbeiten - erfordert das „edit“-Recht sysop, interface-admin 1.31+
hideuser Sperren oder Entsperren eines Benutzernamens, Verstecken oder Wiederanzeigen vor der Öffentlichkeit - Nur Benutzer mit nicht mehr als 1000 Bearbeitungen (Voreinstellung) können unsichtbar gemacht werden. - erfordert das „block“-Recht

Mit $wgHideUserContribLimit kann das abgeschaltet werden.

suppress 1.10+
markbotedits Schnell zurückgesetzte Bearbeitungen als Bot-Bearbeitung markieren - siehe Manual:Rollback - erfordert das „rollback“-Recht sysop 1.12+
mergehistory Versionsgeschichten von Seiten vereinen - erfordert das „edit“-Recht sysop 1.12+
pagelang Seitensprache ändern - $wgPageLanguageUseDB muss auf "true" gesetzt sein. 1.24+
patrol Fremde Bearbeitungen als kontrolliert markieren - $wgUseRCPatrol muss auf "true" gesetzt sein. sysop 1.5+
patrolmarks Kontrollmarkierungen in den letzten Änderungen sehen 1.16+
protect Schutzeinstellungen ändern und kaskadengeschützte Seiten bearbeiten - erfordert das „edit“-Recht sysop 1.5+
rollback Schnelles Zurücksetzen - setzt das „edit“-Recht voraus sysop 1.5+
suppressionlog Private Logbücher ansehen suppress 1.6+
suppressrevision Bestimmte Versionen vor jedem Benutzer verstecken, wiederherstellen und anschauen - Vor Version 1.13 hieß die Berechtigung hiderevision. - setzt das „deleterevision“-Recht voraus suppress 1.6+
unblockself Sich entsperren - Ohne es kann ein Administrator mit dem Recht Benutzer zu sperren sich selbst nicht entsperren, wenn er/sie von einem anderen Administrator gesperrt wurde. sysop 1.17+
undelete Seiten wiederherstellen - erfordert das „deletedhistory“-Recht sysop 1.12+
userrights Benutzerrechte verwalten - Erlaubt die Vergabe oder den Entzug aller* Benutzergruppen an einen Benutzer.


*Mit $wgAddGroups und $wgRemoveGroups kann die Vergabe bzw. der Entzug einzelner Benutzergruppen selektiv festgelegt werden.

bureaucrat 1.5+
userrights-interwiki Benutzerrechte in anderen Wikis verwalten - requires the userrights right 1.12+
viewmyprivateinfo Eigene private Daten ansehen (beispielsweise E-Mail-Adresse, bürgerlicher Name) * 1.22+
viewmywatchlist Eigene Beobachtungsliste ansehen * 1.22+
viewsuppressed Vor jedem Benutzer versteckte Versionen ansehen - folglich eine eingeschränkte Version von "suppressrevision", welches dieses Recht einschließt suppress 1.24+
Verwaltung
autopatrol Eigene Bearbeitungen automatisch als kontrolliert markieren - $wgUseRCPatrol muss auf "true" gesetzt sein. bot, sysop 1.9+
deletechangetags Markierungen aus der Datenbank löschen - derzeit nicht von Erweiterungen genutzt sysop 1.28+
import Seiten aus anderen Wikis importieren - „transwiki“ - erfordert das „edit“-Recht sysop 1.5+
importupload Seiten über Hochladen von Dateien importieren - Das Recht hieß bis einschließlich Version 1.5 "importraw". - erfordert das „edit“-Recht sysop 1.5+
managechangetags Markierungen erstellen und (de)aktivieren - derzeit nicht von Erweiterungen genutzt sysop 1.25+
siteadmin Datenbank sperren und entsperren - verhindert alle Interaktionen mit der Webseite außer Lesen (in den Voreinstellungen nicht verfügbar) 1.5+
unwatchedpages Liste der unbeobachteten Seiten ansehen - zeigt alle Seiten, die auf keiner Beobachtungsliste stehen sysop 1.6+
Technisches
apihighlimits Höhere Limits in API-Abfragen bot, sysop 1.12+
autoconfirmed Keine Beschränkung durch IP-basierte Limits - in Benutzung durch die „autoconfirmed“-Gruppe, siehe untenstehende Tabelle (note that this is not needed if the group already has the noratelimit right) autoconfirmed, bot, sysop 1.6+
bot Behandlung als automatischer Prozess - kann gegebenenfalls angesehen werden bot 1.5+
ipblock-exempt Ausnahme von IP-Sperren, automatischen Sperren und Rangesperren sysop 1.9+
nominornewtalk Kleine Bearbeitungen an Diskussionsseiten führen zu keiner „Neue Nachrichten“-Anzeige - setzt das „minoredit“-Recht voraus bot 1.9+
noratelimit Keine Beschränkung durch Limits - 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 Exportiere Seiten einschließlich verlinkter Seiten bis zu einer Tiefe von 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.

?
suppressredirect Beim Verschieben die Erstellung einer Weiterleitung unterdrücken - erfordert das move-Recht bot, sysop 1.12+
writeapi Benutzung der API mit Schreibzugriff - setzt das „edit“-Recht voraus *, user, bot 1.13+

Obwohl diese Berechtigungen unterschiedliche Handlungen beschränken, werden teilweise mehrere Berechtigungen für das Ausführen einer Aktion benötigt. Beispielsweise ist es nicht sinnvoll, Benutzern das Bearbeiten von Seiten zu erlauben, das Lesen aber zu verbieten, da sie die Seiten erst lesen müssen, um sie bearbeiten zu können (unter der Annahme, dass keine Seiten vom Leseverbot ausgenommen sind). Es ist nicht sinnvoll, das Hochladen zu erlauben und das Bearbeiten zu verbieten, da beim Hochladen implizit eine Beschreibungsseite angelegt wird.

Benutzergruppen

Die folgenden Benutzerrechte sind bei der neusten Version von MediaWiki verfügbar: In älteren Versionen sind unter Umständen nicht alle Gruppen enthalten.

Gruppe Beschreibung Benutzerrechte in der Voreinstellung Versionen
* alle Benutzer (auch nicht angemeldete) createaccount, createpage, createtalk, edit, editmyoptions, editmyprivateinfo, editmywatchlist, read, viewmyprivateinfo, viewmywatchlist, writeapi 1.5+
temp Temporary user accounts (T330816) Similar to * group 1.41+
user angemeldete Benutzer applychangetags, changetags, createpage, createtalk, edit, editcontentmodel, editmyusercss, editmyuserjs, editmyuserjson, minoredit, move, move-categorypages, move-rootuserpages, move-subpages, movefile, purge, read, reupload, reupload-shared, sendemail, upload, writeapi
autoconfirmed angemeldete Benutzer mit mindestens $wgAutoConfirmCount Bearbeitungen, deren Konten mindestens so alt sind wie in $wgAutoConfirmAge festgelegt autoconfirmed, editsemiprotected 1.6+
bot Konten mit bot-Rechten (für automatisierte Bearbeitungen) autoconfirmed, autopatrol, apihighlimits, bot, editsemiprotected, nominornewtalk, suppressredirect, writeapi 1.5+
sysop Benutzer, die per Voreinstellungen Seiten löschen und wiederherstellen, Benutzer sperren und entsperren und Ähnliches können 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 Benutzer, die wiki-weite Änderungen an CSS- und JS-Skripten vornehmen können editinterface, editsitecss, editsitejs, editsitejson, editusercss, edituserjs, edituserjson 1.32+
bureaucrat Benutzer, die per Voreinstellung die Rechte anderer Benutzer ändern können noratelimit, userrights 1.5+
suppress deletelogentry, deleterevision, hideuser, suppressionlog, suppressrevision, viewsuppressed

Seit MediaWiki 1.12, können eigene Benutzergruppen erstellt werden, in die die Benutzer automatisch eingefügt werden (vgl. „autoconfirmed“ bzw. „emailconfirmed“) mittels $wgAutopromote. Eine neue Benutzergruppe kann sogar dadurch erstellt werden, dass lediglich Benutzerrechte mit ihr assoziiert werden.

Voreingestellte Berechtigungen

Die voreingestellten Berechtigungen sind in MainConfigSchema.php festgelegt.

  • Voreingestellte Werte in der HEAD-Version: https://phabricator.wikimedia.org/diffusion/MW/browse/master/includes/MainConfigSchema.php
  • Die Standardwerte der letzten stabilen Veröffentlichung von MediaWiki, Version 1.41, sind hier verfügbar: https://phabricator.wikimedia.org/diffusion/MW/browse/REL1_41/includes/MainConfigSchema.php
  • Zusätzliche Rechte: Alle verfügbaren Rechte können aufgelistet werden, indem User::getAllRights() ausgeführt wird.

Neue Benutzerrechte erstellen

Es folgen Informationen nur für Kodierer.

Wird ein neues Recht im core hinzugefügt, beispielsweise, um eine neue Spezialseite zu steuern, muss es zur Liste der verfügbaren Rechte in PermissionManager.php hinzugefügt werden, $coreRights (Beispiel). Wird dies in einer Erweiterung getan, ist stattdessen $wgAvailableRights zu verwenden.

Wahrscheinlich soll es auch einer Benutzergruppe zugewiesen werden, indem $wgGroupPermissions, wie oben beschrieben, bearbeitet wird.

Soll dieses Recht auch für externe Anwendungen über OAuth oder Bot-Passwörter zugänglich sein, ist es einem Grant hinzufügen, was durch Bearbeitung der $wgGrantPermissions geschieht.

// erstelle projectmember-powers-Recht
$wgAvailableRights[] = 'projectmember-powers';

// Hinzufügen von Projektmitarbeiter-Befugnissen zur Projektmitarbeiter-Gruppe
$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 ...".

Siehe auch

  • Special:ListGroupRights – links to this help page and might contain not yet documented rights
  • Help:Benutzerrechte und Benutzergruppen – help page describing use of the Special:Userrights interface (for bureaucrats)
  • Manual:Einstellungen für Benutzergruppen in MediaWiki – Informationen über die Verwaltung und Zuweisung von Benutzergruppen.
  • Handbuch:$wgNamespaceProtection
  • Handbuch:$wgAutopromote
  • Handbuch:$wgAddGroups, Handbuch:$wgRemoveGroups
  • Zugriff verhindern – Beispiele
  • Manual:Establishing a hierarchy of bureaucrats
  • Kategorie:Benutzerrechtserweiterungen – viele Erweiterungen zu Benutzerrechten