API:Einschränkung der API-Nutzung
Appearance
Outdated translations are marked like this.
Diese Seite ist Teil der Dokumentation der MediaWiki action API. |
Es gibt mehrere Wege, um die Nutzung der API (oder Teilen davon) auf bestimmte Benutzergruppen einzuschränken oder komplett zu deaktivieren. Einige davon erfordern die Änderung von Benutzergruppenrechten.
Module deaktivieren
Du kannst bestimmte Module für alle Benutzer deaktivieren, indem du eine Zeile zu LocalSettings.php
hinzufügst.
Was exakt du hinzufügen musst, hängt von dem Typ des Moduls ab, das du deaktivieren möchtest:
- Für
action=
Module, benutze$wgAPIModules ['modulename'] = 'ApiDisabled';
- Für
prop=
Module, benutze$wgAPIPropModules ['modulename'] = 'ApiQueryDisabled';
- Für
list=
Module, benutze$wgAPIListModules ['modulename'] = 'ApiQueryDisabled';
- Für
meta=
Module, benutze$wgAPIMetaModules ['modulename'] = 'ApiQueryDisabled';
Beispiele
Um es für alle zu deaktivieren, die keine Administratoren sind, nutze action=edit
:
$wgAPIModules['edit'] = 'ApiDisabled';
Um den Zugriff auf eine API-Aktion einzuschränken, füge folgende Hook zu ApiCheckCanExecute hinzu:
static function onApiCheckCanExecute( $module, $user, &$message ) {
$moduleName = $module->getModuleName();
if (
$moduleName == 'action' &&
!in_array( 'right', $user->getRights() )
) {
$message = 'apierror-action-notallowed';
return false;
}
return true;
}
Ersetze 'action'
, 'right'
und 'apierror-action-notallowed'
durch die passenden Werte.