회원 인증 로그인 시스템 보안 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

회원 인증 로그인 시스템 보안 정보

PHP 회원 인증 로그인 시스템 보안

본문

php.ini 에서 register_globals=off 하시면 , 일단 보안이 되구요.
세션을 사용시 $_SESSION 이나 $HTTP_SESSION_VARS[] 형태로 사용하여야 합니다.
 
왼쪽에 PHP4.1.1 아래 관련 게시물 주욱 보시면 됩니당
 
글구 회원 비번은 md5() 로 암호화 하시구요. 쿠키는 사용하지 마세요.
회원이 비번을 잊어 버렸을 경우는 회원 email 주소로 새로운 비번을 쏴주시구요.
 
세션의 경우 회원id 세션과 회원 비번 md5 암호화 한 세션 , 2개 로 비교 하세요.
회원 레벨..준회원..정회원..관리자 등이 있을 경우는 3개 로 비교 하시구요.
1개 로만 절대로 비교 하시지 말구요 !
 
회원 정보 수정 시 form 에서 맨아래 무조건 회원 비번을 1번더 묻게 하시구요. ^^
 
register_globals=off  하셨나요?
$_SESSION 은 PHP4.1.0 이상 입니다.
 
세션의 경우는 /tmp 폴더에 저장 하시지 마세요. php.ini 에서 세션저장 장소를 바꾸세요.
session지시자 아래 있슴다.
/tmp 는 너무 알려 져서 좋지 않습니다. !
 
register_globals=off 를 하지 않더라도..여러가지로 보안을 취할 수 있습니다.
$REQUEST_METHOD 를 체크 하는 방법 하구요.
$HTTP_REFERER 를 체크 하는 방법 하구요.
PHP강좌 게시판에서 http 나 request 로 검색 하시구요. 왼쪽에 PHP 보안 메뉴 아래 쪽에 보세용 ^^
 
세션 생성시 $userid 를 생성 하고, $userpass=md5($userpass); 로 생성 해서,
2개 값이 있는지 비교 하구요.. isset() 등으로 비교 하시는 것이 좋구요.
 
$userpass 값은 32 자 인지 확인 하시면 됩니다. md5() 로 해슁 하면 32자가 됩니당.
 
if((session_is_registered(username)) && (session_is_registered(user_id)))
session_is_registered() 를 사용하시구요..
 
$pw 도 암호화 하세용..!!!
비교는
 
if($pw==md5($pw넘어온값) && isset($pw넘어온값))
이런식으로 체크 하시구용...^^
 
좀더 고심해 보시고 응용해보세요 ^^
 
 
$tpass=md5("pw008");
if(($id == "id007") && (md5($pw) == $tpass) && isset($pw) && isset($id)){
 
이런 식으로 ^^  
 
추천
1

댓글 1개

전체 5,397
개발자팁 내용 검색

회원로그인

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