Kézikönyv:$wgNamespaceProtection

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:$wgNamespaceProtection and the translation is 96% complete.

Outdated translations are marked like this.
Other languages:
English • ‎français • ‎magyar • ‎polski • ‎中文 • ‎日本語
Namespaces: $wgNamespaceProtection
Ki és mely névtereket szerkeszthet?
Bevezetve:1.10.0 (r19110)
Eltávolítva:használatban
Megengedett értékek:(tömbök tömbje)
Alapértelmezett érték:$wgNamespaceProtection = []; (1.14+)
$wgNamespaceProtection[NS_MEDIAWIKI] = array( 'editinterface' ); (1.10 - 1.13)

Részletek

A beállítással egyes névtereket csak bizonyos felhasználói csoportok szerkeszthetnek. Alapértelmezésben az egyetlen ilyen korlátozás a MediaWiki-névtérben van, amelyet csak az editinterface jogosultsággal rendelkezők (alapértelmezésben az adminisztrátorok) módosíthatnak.

A tömbök kulcsai a névterek azonosítói, az értékek pedig a jogosultságnevek egyszerű tömbjei. Ha több mint egy jogosultságot rendelsz hozzá egy névtérhez, csak az összes, felsorolt joggal rendelkezők szerkeszthetik az abban lévő lapokat.

A MediaWiki 1.14 óta a korábbi verziókkal megegyezően a MediaWiki névteret feltétel nélkül csak az „editinterface” csoport tagjai módosíthatják. Ez a Setup.php -ban rögzített beállítás, és a LocalSettings.php -ban sem módosítható, mivel a hibás beállítás a wiki biztonságát veszélyeztetné. Ha szeretnéd, hogy az adminisztrátorokon kívül más is szerkeszthesse a MediaWiki névteret, akkor ezeknek a csoportoknak meg kell adnod az „editinterface” jogosultságot.

A $wgNamespaceProtection használatával nem lehetséges az olvashatóság korlátozása. (Lásd: Extension:Lockdown )

Példa

A fő névtér szerkeszthetőségének korlátozása

$wgNamespaceProtection[NS_MAIN]      = array( 'edit-main' );

A fenti kód hatására a fő névteret csak az „edit-main” jogosultsággal rendelkezők szerkeszthetik.

Egyedi névterek definiálása korlátozott írási joggal

define("NS_OFFICIAL", 100);
define("NS_OFFICIAL_TALK", 101);

$wgExtraNamespaces = 
    array(NS_OFFICIAL => "Official",
          NS_OFFICIAL_TALK => "Official_talk",
    );

$wgNamespaceProtection[NS_OFFICIAL]      = array( 'official-edit' );
$wgNamespaceProtection[NS_OFFICIAL_TALK] = array( 'official-talk-edit' );

$wgGroupPermissions['managers']['official-edit'] = true; // az Official névteret csak a „manager” csoportba tartozók módosíthatják
$wgGroupPermissions['employees']['official-talk-edit'] = true; // az „employees” csoport tagjai az Official_talk vitalapokra írhatnak
$wgGroupPermissions['managers']['official-talk-edit'] = true; // mint a „manager” joggal rendelkezők is

Vitalapok letiltása

Mivel „mindenki” jogosultság alapértelmezésben nem létezik, lényegében mindenki (az adminisztrátorok) is kizáródnak.

Vedd figyelembe, hogy a fület más módokon kell eltüntetned (lásd: $FAQ).

# Minden vitalap-névtér letiltása
$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'];


Lásd még