묻고답하기
사이트 최고 관리자가 특정 모듈의 최고 관리자의 권한을 제한하는 방법은?
2009.12.02 15:13
특정 게시판만 한 회원에게 최고 관리자 권한을 주려 했습니다만..
그 게시판에 대한 모든 권한이 열려 문제가 됩니다.
예를들어 포인트제로 운영되고 있는 사이트에서.
특정 게시판의 관리권한을 가지고 있는 회원이 그 게시판의 글 작성시 포인트량을 조절하면
사실상 자신의 포인트를 마음껏 조절할수 있게 됩니다.
또한 통합 RSS도 마음대로 편입시킬수 있구요.
어떻게 방법이 없을까요?
댓글 2
-
유아원
2009.12.02 17:15
-
뮤랑이
2009.12.02 17:19
관리권한은 그룹단위 아닌가요? -
강선희
2009.12.02 17:24
해당 게시판의 최고 관리자에게만 노출 시키는 방법입니다.
해당 게시판 관리자는 게시물 관리만 할수 있겠죠.
modules/board/skins/해당스킨/header.html
<!--// 관리자이면 설정 버튼 출력 -->
<!--@if($grant->manager && $module_info->display_setup_button != 'N')-->
<li class="setup"><a href="./{getUrl("act','dispBoardAdminBoardInfo')}">{$lang->cmd_setup}</a></li>
<!--@end-->첫째줄을
<!--@if($grant->manager && $module_info->display_setup_button != 'N')-->
아래와 같이 변경
<!--@if($logged_info->is_admin == 'Y' && $module_info->display_setup_button != 'N')-->
다른 방법으로는
modules/board/tpl/header.html 에 보시면
<li <!--@if($act=='dispBoardAdminBoardInfo'||$act=='dispBoardAdminInsertBoard'+ ')-->class="on"<!--@end-->><a href="./{getUrl("act'+ ','dispBoardAdminBoardInfo'+ ')}">{$lang->cmd_view_info}</a>class="on"> href="./{getUrl("act','dispBoardAdminCategoryInfo')}">{$lang->cmd_manage_category}</a></li>
<li <!--@if($act=='dispBoardAdminExtraVars')-->class="on"<!--@end-->><a href="./{getUrl("act','dispBoardAdminExtraVars')}">{$lang->extra_vars}</a></li>
<li <!--@if($act=='dispBoardAdminListSetup')-->class="on"<!--@end-->><a href="./{getUrl("act','dispBoardAdminListSetup')}">{$lang->cmd_list_setting}</a></li>
<li <!--@if($act=='dispBoardAdminGrantInfo')-->class="on"<!--@end-->><a href="./{getUrl("act','dispBoardAdminGrantInfo')}">{$lang->cmd_manage_grant}</a></li>
<li <!--@if($act=='dispBoardAdminBoardAdditionSetup')-->class="on"<!--@end-->><a href="./{getUrl("act','dispBoardAdminBoardAdditionSetup')}">{$lang->cmd_addition_setup}</a></li>
<li <!--@if($act=='dispBoardAdminSkinInfo')-->class="on"<!--@end-->><a href="./{getUrl("act','dispBoardAdminSkinInfo')}">{$lang->cmd_manage_skin}</a></li>라는 부분이 있습니다.
순서데로 게시판정보,분류관리,확장변수,목록설정,권한관리,추가설정,스킨관리 입니다.
게시판관리자가 관리할수 없는 관리메뉴에
<!--@if($logged_info->is_admin == 'Y' && $module_info->display_setup_button != 'N')--><li>해당관리메뉴</li>!--@end-->
하시면 해당 관리메뉴 버튼은 최고 관리자에게만 노출됩니다.
위의 방법들은 해당 관리자가 관리페이지 url을 알고 들어올경우에는 막지 못하므로,
그럴 경우에는 해당 관리 페이지에 권한 체크를 해주어야됩니다.
-
뮤랑이
2009.12.02 17:45
소스를 한번 뜯어야 겠군요^^ 답변 감사합니다~
특정 게시판에서 최고관리자 권한을 주지마시고, 그냥 '관리권한'만 줘보세요.