BOARD

강좌·기초

그누보드 최고관리자 계정 변경 및 권한 상실 시 복구 방법

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 14회 작성일 26-09-15 00:38

본문

그누보드 최고관리자 계정 변경 및 권한 상실 시 복구 방법

그누보드 관리자 페이지에 접속할 수 있거나 권한을 완전히 상실했을 때 각각 최고관리자 계정을 안전하게 변경하고 복구하는 방법을 안내합니다.

관리자 페이지에서 최고관리자 계정 변경하기

기존 관리자 권한이 유지되어 있어 관리자 페이지에 정상 접속할 수 있다면 기본환경설정 메뉴에서 간단히 변경할 수 있습니다.

  1. 변경할 대상 회원의 권한 레벨을 10으로 설정합니다.
  2. 관리자페이지로 이동합니다.
  3. 환경설정 메뉴의 기본환경설정 화면으로 진입합니다.
  4. 최고관리자 선택 항목의 셀렉트 박스에서 방금 권한을 부여한 회원을 선택합니다.
  5. 확인 버튼을 누르면 즉시 최고관리자 권한이 이전됩니다.

관리자 권한 상실 시 강제 복구 방법

관리자 아이디가 삭제되었거나 g5_config 테이블의 cf_admin 필드 값이 비어버려 관리자 페이지 접근이 불가능할 때는 개별 설정 파일을 통해 임시로 권한을 복구할 수 있습니다.

복구 절차

  1. 관리자로 사용할 회원이 존재하지 않는다면 신규 가입을 진행하거나 기존 계정을 준비합니다.
  2. extend/user.config.php 파일을 열거나 생성하여 아래의 SQL 실행 코드를 추가합니다.
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

sql_query(" update {$g5['config_table']} set cf_admin = '회원id' ");
sql_query(" update {$g5['member_table']} set mb_level = '10' where mb_id = '회원id' ");
?>
  1. 그누보드의 아무 페이지나 브라우저에서 새로고침하여 코드가 실행되도록 합니다.
  2. 관리자 계정으로 정상 로그인되는지 확인합니다.

주의사항 및 다음 행동

  • extend/user.config.php 파일에 추가했던 복구용 코드는 로그인 확인 즉시 반드시 삭제해야 보안상 안전합니다.
  • 사용 중인 데이터베이스 환경에 따라 테이블 접두사가 다를 수 있습니다. data/dbconfig.php 파일을 열어 G5_TABLE_PREFIX 항목을 확인하고, 만약 g5_가 아니라면 코드 내의 {$g5['config_table']} 및 {$g5['member_table']} 대신 실제 접두사가 적용된 테이블명(예: prefix_config, prefix_member)으로 수정해야 합니다.

복구용 코드 실행 후 보안 조치

관리자 권한 복구를 위해 extend/user.config.php 파일에 추가했던 복구용 코드는 관리자 계정으로 정상 로그인되는 것을 확인한 즉시 반드시 삭제해야 합니다. 삭제하지 않을 경우 페이지를 새로고침할 때마다 권한 설정 쿼리가 반복 실행되어 DB 부하를 일으키거나, 타인이 해당 계정 권한을 임의로 변경할 수 있는 보안 취약점이 발생할 수 있습니다.

데이터베이스 테이블 접두사 확인 시 주의사항

운영 중인 데이터베이스 환경에 따라 테이블 접두사가 기본값(g5_)과 다를 수 있으므로 운영 중인 DB 환경을 미리 확인하는 것이 좋습니다.

상황별 판단 및 행동 가이드

  • 내 상황: 관리자 페이지에 정상 접속할 수 있는 경우
    • 선택 기준: 기존 관리자 권한 유지 중
    • 다음 행동: 대상 회원 레벨을 10으로 설정 후 [관리자 페이지 > 환경설정 > 기본환경설정]에서 최고관리자 변경
  • 내 상황: 관리자 권한을 상실하여 접근이 불가능한 경우
    • 선택 기준: 관리자 아이디 삭제 또는 cf_admin 필드 공백
    • 다음 행동: extend/user.config.php 파일에 복구 SQL 코드를 추가하고 페이지 새로고침 후, 로그인 확인 즉시 코드 삭제

실전 FAQ

  • Q. 복구용 코드를 실행했는데도 권한이 복구되지 않습니다.
    • A: 사용 중인 데이터베이스의 테이블 접두사가 기본값(g5_)과 다를 수 있습니다. 운영 중인 DB 환경을 확인하여 테이블명이 다르면 코드 내 테이블 접두사를 수정해야 합니다.
  • Q. 복구 코드를 삭제하지 않으면 어떤 문제가 발생하나요?
    • A: 페이지에 접속할 때마다 권한 설정 쿼리가 반복 실행되어 보안상 취약해질 수 있으므로, 반드시 로그인 확인 즉시 해당 코드를 삭제해야 합니다.

함께 보면 좋은 글

참고자료

기타 참고자료

댓글목록

등록된 댓글이 없습니다.