그룹관리자 회원등록 권한 수정 > 그누3 팁자료실

그누3 팁자료실

그룹관리자 회원등록 권한 수정 정보

그누호환 그룹관리자 회원등록 권한 수정

본문

그누보드의 접근회원 설정 기능은 게시판의 그룹을 마치 클럽처럼 동작하게 할 수 있는 유용한 기능입니다. 그런데 2.65 기준으로 그룹관리자와 동일한 권한을 갖는 사람들만이 그룹관리자의 회원리스트에 나타나게 되어있습니다. 이 부분은 그룹관리자 이하 레벨의 회원의 리스트가 나타나게 한다든가, 모든 레벨의 회원들이 나타나는게 낫지 않을까 생각됩니다. 혹시 모든 레벨을 나타나게 할 경우 그룹관리자보다 높은 레벨의 회원, 예를 들어 최고관리자가 그룹에 못 들어가게 되는 경우가 있는 것인지도 모르겠습니다만- 일단 제쳐두고, 그룹관리자와 같거나 낮은 레벨을 가진 회원의 접근레벨을 설정할 수 있도록 소스를 수정해 봅시다. 하아- 서론이 길었습니다.

_admin/memberlist.php를 보면 21번째 줄에

if ($is_admin == 'group') {
  $sql_search .= " and mb_level = '$member[mb_level]' ";
}

라는 부분이 있군요. 여기를 다음처럼 수정하면 됩니다.

if ($is_admin == 'group') {
  $sql_search .= " and mb_level <= '$member[mb_level]' ";
}

이것으로 그룹관리자가 자신과 같은 레벨을 포함해서 자신보다 낮은 레벨들의 회원들에게 접근권한을 설정할 수 있게 되었습니다.

그리고 덤으로 드리는 팁입니다. 그룹관리자가 포인트를 줄 수 있는 기능을 빼고 싶다면 _admin/head.php에서 24번째 줄에 <tr><td height=20><a href='pointlist.php'><b>포인트관리</b></a></td></tr> 부분을 눈에 안보이게 하면 됩니다.

24번째 줄을 다음처럼 수정하세요.

<? if ($is_admin == 'default') { echo "<tr><td height=20><a href='pointlist.php'><b>포인트관리</b></a></td></tr>"; } ?>

물론 링크만 안보이게 한 것이기 때문에 그룹관리자가 직접 poinitlist.php를 호출한다면 권한이 있습니다. 이것까지 막고 싶다면 pointlist.php를  <? if ($is_admin == 'default') {  ~~  } ?>로 묶어버리면 되겠지요. 맨 뒤에 else를 넣어서 "이상한 짓 하지 마세요" 등으로 메세지를 띄워도 재미있을것 같네요. 경고창을 띄우고 뒤로 돌아가도록 해도 되겠지요. 글을 쓰다보니 경고창 쪽이 훨씬 재미있을 것 같군요. 프로그램 시작부에 admin의 권한이 default가 아니라면 경고창을 띄우게 하고 프로그램 이하 내용도 실행되지 않게 하는 것이 확실한 보안이 될것 같네요.
추천
4

댓글 전체

전체 1,026
그누3 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT