특정 아이피에서 로그인을 쉽게 할 수 있을까요?

특정 아이피에서 로그인을 쉽게 할 수 있을까요?

QA

특정 아이피에서 로그인을 쉽게 할 수 있을까요?

그누보드5(영카트) 버전

5.5.15

본문

특정 아이피 에서는 비번을 1글자 이상만 입력하면 (빈 값만 아니면) 로그인 가능하게 할 수 있나요?

여기서 조건을 하나만 더한다면 관리자아이디의 경우

이 질문에 댓글 쓰기 :

답변 4

가능은한데, 실 서비스에서는 보안 문제가 있을 수 있습니다.

그누보드5의 로그인 처리는 /bbs/login_check.php에서 하는데, 여기를 조금 수정하면 됩니다.

 


// /bbs/login_check.php 파일 상단 부분에 추가
// 허용할 IP 목록 (여러개 가능) $allowed_ips = array('127.0.0.1', '192.168.1.100'); // 본인 IP로 변경
// 현재 접속 IP $current_ip = $_SERVER['REMOTE_ADDR'];
// 관리자 계정인지 체크 $is_admin_id = ($mb_id == 'admin'); // 관리자 ID가 admin인 경우
// 특정 IP + 관리자 계정일 때 비밀번호 체크 스킵 if (in_array($current_ip, $allowed_ips) && $is_admin_id && !empty($mb_password)) { // 비밀번호 1글자 이상만 입력되면 통과 $password_check_skip = true; } else { $password_check_skip = false; } 

그리고 비밀번호 체크하는 부분을 찾아서 조건문으로 감싸주면 됩니다:

 // 기존의 비밀번호 체크 부분을 찾아서... // if (!login_password_check($mb, $mb_password, $mb['mb_password'])) 이런 부분을
if (!$password_check_skip) { // 기존 비밀번호 체크 로직 if (!login_password_check($mb, $mb_password, $mb['mb_password'])) { alert('가입된 회원아이디가 아니거나 비밀번호가 틀립니다.\n비밀번호는 대소문자를 구분합니다.'); } }

adm/_common.php 파일에 추가

위치는 include_once ('../common.php'); 여기 아래 적당한 곳에..

 

$possible_ip = 'xxx.xxx.xxx.xxx'; // 아이피 입력
if ($_SERVER['REMOTE_ADDR'] != $possible_ip) {
    alert('접근 권한이 없습니다.', G5_URL);
}

참고 http://gnustudy.com/bbs/board.php?bo_table=gnu_tip&wr_id=172

어드민 페이지 접근 권한 문제라기 보다는 제가 관리하는 사이트가 10개 있다면
아이디는 admin 패스워드는 아무글자나 입력하면 로그인 되었으면 합니다.
다시 말하면 비밀번호 체크를 안하는 거죠

$ip = ['123.123.10.11','12.11.11.11']; // 회사내 허용할아이피
$user = ['test123','test1010']; // 특정회원
if(in_array($member['mb_id'], $user)){
if(in_array($_SERVER["REMOTE_ADDR"], $ip)){
 //게시판 1,2,3,4 보이게
}else{
// 게시판 1,2 보이게
}
}else{
 //특정회원이 아님
} 이렇게는 안되나요?

답변을 작성하시기 전에 로그인 해주세요.
전체 129,406 | RSS
QA 내용 검색

회원로그인

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