미디어위키 – 사용자권한 – 권한설정예제

http://www.mediawiki.org/wiki/Manual:Preventing_access

미디어위키(Mediawiki)를 사용하다 보니, 사용자별로 권한을 지정하거나,

로그인상태에서만 페이지가 보이게 하고 싶어졌다. 어디선가 이 설정을 복사해다 약간 고쳐썼던 것 같다.

다음 예제를 약간 고쳐서 LocalSettings.php에 추가한 후 사용하면 된다.

1
<?
$wgShowIPinHeader = false;
# For non-logged in users
// Implicit group for all visitors,로그인하지 않은 상태에서 권한을 제한한다.
$wgWhitelistRead = array(“Main Page”, “Special:Userlogin”, “-“, “MediaWiki:Monobook.css”);
$wgGroupPermissions[‘*’][‘createaccount’] = true; $wgGroupPermissions[‘*’][‘read’] = false;
$wgGroupPermissions[‘*’][‘edit’] = false;
$wgGroupPermissions[‘*’][‘createpage’] = false;
$wgGroupPermissions[‘*’][‘createtalk’] = false;

// Implicit group for all logged-in accounts,
//로그인상태이더라도, 그룹이 지정되지 않았을 경우 권한을 제한한다.
$wgGroupPermissions[‘user’][‘read’] = false;
$wgGroupPermissions[‘user’][‘edit’] = false;
$wgGroupPermissions[‘user’][‘createpage’] = false; $wgGroupPermissions[‘user’][‘createtalk’] = false;
$wgGroupPermissions[‘user’][‘move’] = false;
$wgGroupPermissions[‘user’][‘upload’] = false;
$wgGroupPermissions[‘user’][‘upload_by_url’] = false;
$wgGroupPermissions[‘user’][‘delete’] = false;
$wgGroupPermissions[‘user’][‘import’] = false;// Permission to change users’ group assignments,
//권한제어를 bureaucrat 계정에서 할 수 있다.
$wgGroupPermissions[‘bureaucrat’][‘userrights’] = true;

// Group for all logged-in accounts who had their email confirmed and have been
// accepted as readers. wiki_reader 권한을 지정한다.
$wgGroupPermissions[‘wiki_reader’][‘read’] = true; $wgGroupPermissions[‘wiki_reader’][‘edit’] = false;
$wgGroupPermissions[‘wiki_reader’][‘createpage’] = false;
$wgGroupPermissions[‘wiki_reader’][‘createtalk’] = true;
$wgGroupPermissions[‘wiki_reader’][‘move’] = false;
$wgGroupPermissions[‘wiki_reader’][‘upload’] = false;
$wgGroupPermissions[‘wiki_reader’][‘upload_by_url’] = false;
$wgGroupPermissions[‘wiki_reader’][‘delete’] = false;
$wgGroupPermissions[‘wiki_reader’][‘import’] = false;

// Group for all logged-in accounts who had their email confirmed and have been
// accepted as editors. wiki_editor 그룹에 대해 권한을 지정한다.
$wgGroupPermissions[‘wiki_editor’][‘read’] = true; $wgGroupPermissions[‘wiki_editor’][‘edit’] = true;
$wgGroupPermissions[‘wiki_editor’][‘createpage’] = true;
$wgGroupPermissions[‘wiki_editor’][‘createtalk’] = true;
$wgGroupPermissions[‘wiki_editor’][‘move’] = true;
$wgGroupPermissions[‘wiki_editor’][‘upload’] = true;
$wgGroupPermissions[‘wiki_editor’][‘upload_by_url’] = true;
$wgGroupPermissions[‘wiki_editor’][‘delete’] = true;
$wgGroupPermissions[‘wiki_editor’][‘import’] = true;// sysop 그룹의 권한을 제어한다.
$wgGroupPermissions[‘sysop’][‘read’] = true;
$wgGroupPermissions[‘sysop’][‘edit’] = true;
$wgGroupPermissions[‘sysop’][‘createpage’] = true;
$wgGroupPermissions[‘sysop’][‘createtalk’] = true;
$wgGroupPermissions[‘sysop’][‘move’] = true;
$wgGroupPermissions[‘sysop’][‘upload’] = true;
$wgGroupPermissions[‘sysop’][‘upload_by_url’] = true;
$wgGroupPermissions[‘sysop’][‘delete’] = true;
$wgGroupPermissions[‘sysop’][‘import’] = true;$wgGroupPermissions[‘sysop’][‘protect’] = true;
$wgGroupPermissions[‘sysop’][‘block’] = true;
$wgGroupPermissions[‘sysop’][‘siteadmin’] = true;
$wgGroupPermissions[‘sysop’][‘rollback’] = true;
?>

You may also like

댓글 남기기