Příručka:$wgNamespaceProtection
Přístup: $wgNamespaceProtection | |
---|---|
Které jmenné prostory může kdo upravovat? |
|
Zavedeno od verze: | 1.10.0 (r19110) |
Odstraněno od verze: | stále se používá |
Povolené hodnoty: | (pole polí) |
Výchozí hodnota: | $wgNamespaceProtection = []; (1.14+)$wgNamespaceProtection[NS_MEDIAWIKI] = array( 'editinterface' ); (1.10 - 1.13) |
Další nastavení: Podle abecedy | Podle funkce |
Podrobnosti
Toto nastavení umožňuje wiki vyžadovat speciální oprávnění k úpravě některých jmenných prostorů.
Ve výchozím nastavení je jediným omezením to, že jmenný prostor MediaWiki mohou upravovat pouze uživatelé s oprávněním 'editinterface '
(standardně: sysops).
Klíče pole jsou čísla jmenného prostoru a hodnoty jsou jednoduchá pole názvů oprávnění. Pokud uvedete více než jedno oprávnění pro daný obor názvů, uživatel je musí mít všechna, aby mohl upravovat stránky v tomto oboru názvů.
Od 1.14 je jmenný prostor MediaWiki: bezpodmínečně chráněn pro uživatele s právem 'editinterface'
(stejně jako v předchozích verzích).
Toto je nastaveno v Setup.php a nemůže být změněno v LocalSettings.php , protože jinak je příliš snadné jej nastavit nesprávně a ponechat wiki nezabezpečenou.
Pokud chcete povolit jiným skupinám než sysopům upravovat jmenný prostor MediaWiki:, pak udělte právo 'editinterface'
těmto skupinám.
Není možné omezit přístup pro čtení k určitému jmennému prostoru pomocí $wgNamespaceProtection
.
(Viz Extension:Lockdown )
Příklad
Omezení úprav hlavního jmenného prostoru
$wgNamespaceProtection[NS_MAIN] = ['edit-main'];
To omezuje úpravy v hlavním jmenném prostoru na lidi ve skupině, která má oprávnění k úpravám.
Nastavení vlastních jmenných prostorů s omezeným přístupem pro zápis
define("NS_OFFICIAL", 100);
define("NS_OFFICIAL_TALK", 101);
$wgExtraNamespaces = [
NS_OFFICIAL => "Official",
NS_OFFICIAL_TALK => "Official_talk"
];
$wgNamespaceProtection[NS_OFFICIAL] = ['official-edit'];
$wgNamespaceProtection[NS_OFFICIAL_TALK] = ['official-talk-edit'];
$wgGroupPermissions['managers']['official-edit'] = true; // stránky v oficiálním jmenném prostoru mohou upravovat pouze manažeři
$wgGroupPermissions['employees']['official-talk-edit'] = true; // zaměstnanci mohou upravovat stránky ve jmenném prostoru Official_talk
$wgGroupPermissions['managers']['official-talk-edit'] = true; // stejně jako manažeři
Deaktivace diskusních stránek
Vzhledem k tomu, že "everyone
" není základním oprávněním, doslova každému bude odepřen přístup (včetně sysopů).
Všimněte si, že stále budete muset kartu odebrat jinými metodami (viz: Příručka:FAQ#Jak mohu přidat/odebrat karty na mé wiki? )
# Zakázat všechny základní jmenné prostory TALK
$wgNamespaceProtection[NS_TALK] = ['everyone'];
$wgNamespaceProtection[NS_USER_TALK] = ['everyone'];
$wgNamespaceProtection[NS_PROJECT_TALK] = ['everyone'];
$wgNamespaceProtection[NS_FILE_TALK] = ['everyone'];
$wgNamespaceProtection[NS_MEDIAWIKI_TALK] = ['everyone'];
$wgNamespaceProtection[NS_TEMPLATE_TALK] = ['everyone'];
$wgNamespaceProtection[NS_HELP_TALK] = ['everyone'];
$wgNamespaceProtection[NS_CATEGORY_TALK] = ['everyone'];
Související odkazy
- Kategorie:Rozšíření uživatelských práv pro konkrétní stránku — více rozšíření pro kontrolu přístupu ke stránce nějakým způsobem
- Extension:Lockdown — nastaví jakákoli oprávnění pro libovolnou skupinu na jmenný prostor
- Extension:NSFileRepo — nastaví oprávnění pro obrázky a soubory podle jmenného prostoru (vlastní ochrana jmenného prostoru místního úložiště souborů – na základě Extension:Lockdown )