2012-02-27 9 views
1

私たちのwikiには、そのページの割り当てられた所有者以外の人による編集から保護したいと思うページはほとんどありません。個々のWikiページの権限を設定するにはどうすればよいですか?

現在MediaWiki v1.15.4が稼働しており、当面は1.18にアップデートすることはできません。

ありがとうございます。

編集:権限を明確にするために、グループ単位ではなく個々のユーザーに対して権限を設定する必要があります。

答えて

1

私は、デフォルトのシステムよりも柔軟性が必要な同様の問題がありました。私は(mediawikiの拡張に埋め込まれた)、このスクリプトによって、これを解決:

// check each page for gossip permissions 
$wgHooks['ArticlePageDataBefore'][] = 'GossipProtection_check_permissions'; 

/** 
* ArticlePageDataBefore hook 
* 
* $article: article that is requested 
* ($fields: not important) 
*/ 
function GossipProtection_check_permissions($article, $fields) { 
    global $wgUser; 
    $title = $article->getTitle()->mTextform; 
    if(is_gossip_page($title)) 
     if(!this_user_is_allowed_on_page($title)) 
      die('You are not allowed on this page'); 
    return true; 
} 

しかし、MediaWikiの保護サービスを使用することはもちろん、オフよりエレガントです。たとえば、許可されたユーザーのグループを作成できます。

関連する問題