특정 아이피 에서는 비번을 1글자 이상만 입력하면 (빈 값만 아니면) 로그인 가능하게 할 수 있나요?
여기서 조건을 하나만 더한다면 관리자아이디의 경우
|
답변 4개 / 댓글 3개
채택된 답변
+20 포인트
6개월 전
가능은한데, 실 서비스에서는 보안 문제가 있을 수 있습니다.
그누보드5의 로그인 처리는 /bbs/login_check.php에서 하는데, 여기를 조금 수정하면 됩니다.
Copy
// /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; }
그리고 비밀번호 체크하는 부분을 찾아서 조건문으로 감싸주면 됩니다:
Copy
// 기존의 비밀번호 체크 부분을 찾아서... // 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
답변에 대한 댓글 3개
세진컴퓨터랜드
6개월 전
비버팩토리
6개월 전
$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{
//특정회원이 아님
} 이렇게는 안되나요?
$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{
//특정회원이 아님
} 이렇게는 안되나요?
답변을 작성하려면 로그인이 필요합니다.
아이디는 admin 패스워드는 아무글자나 입력하면 로그인 되었으면 합니다.
다시 말하면 비밀번호 체크를 안하는 거죠