MediaWiki 特定ページのアクセス制限

MediaWikiをカスタマイズしていてよくある要望に、
「このページは管理者以外はアクセスできないようにして欲しい」
というものがあります。

Wikiの基本概念は、『誰でも閲覧・編集できる』ですので、実現させるにはひと手間かかります。

MediaWikiには、「MediaWiki:」や「Template:」などの名前空間と呼ばれるものが付いた、特別なページがあります。
代表的なものとして、「MediaWiki:sidebar」(メニューの編集ページ)があります。

この名前空間は新しく追加することができます。
また、名前空間に対してアクセス制限をかけるExtensionがあります。
この2つを組み合わせて、「管理者以外はアクセスできないようにする」ことができます。

下記アドレスから、Extensionをダウンロードし、extensionフォルダに追加します。

http://www.mediawiki.org/wiki/Extension:Lockdown/ja

LocalSettings.phpに下記の行を追加します。

require_once( “$IP/extensions/Lockdown/Lockdown.php” );

LocalSettings.phpに下記の行を追加します。

#「Private」という名前空間を作成する。
$wgExtraNamespaces[100] = ‘Private’;
$wgExtraNamespaces[101] = ‘Private_talk’;
#「Private」の全ての権限を管理者のみに与える
$wgNamespacePermissionLockdown[100]['*'] = array(’sysop’);
$wgNamespacePermissionLockdown[101]['*'] = array(’sysop’);

これで、管理者のみがPrivate:○○○というページが作成でき、管理者以外はそのページにアクセスできません。
もっと細かく設定すれば便利に使えると思います。

コメントは受け付けていません。