API:Omezení použití API
Appearance
Outdated translations are marked like this.
Tato stránka je součástí dokumentace k API Action MediaWiki. |
Existuje několik způsobů, jak omezit používání (určitých částí) API na určité skupiny uživatelů nebo je úplně zakázat. Některé z nich vyžadují změnu oprávnění skupiny.
Deaktivace modulů
Jednotlivé moduly můžete zakázat všem uživatelům přidáním řádku do LocalSettings.php
.
Co přesně přidat závisí na typu modulu, který chcete deaktivovat:
- Pro moduly
action=
použijte$wgAPIModules ['modulename'] = 'ApiDisabled';
- Pro moduly
prop=
použijte$wgAPIPropModules ['modulename'] = 'ApiQueryDisabled';
- Pro moduly
list=
použijte$wgAPIListModules ['modulename'] = 'ApiQueryDisabled';
- Pro moduly
meta=
použijte$wgAPIMetaModules ['modulename'] = 'ApiQueryDisabled';
Příklady
Chcete-li zakázat použití action=edit
komukoli, kdo není sysop:
$wgAPIModules['edit'] = 'ApiDisabled';
Chcete-li omezit přístup k akci API, přidejte následující háček pro ApiCheckCanExecute :
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;
}
Nahraďte 'action'
, 'right'
a 'apierror-action-notallowed'
příslušnými hodnotami.