태그 글목록: htpasswd

[TIP] 아파치 인증 2015-04-22

간단하게 인증이 필요한 페이지를 개발하고자 할때 아파치에서 제공하는 인증기능을 사용할 수 있다. 디자인이 필요없고 서버단에서의 세션관리 기능을 구현할 필요가 없어 편리하다.
윈도우 리눅스 모두 가능하다.

 

1. 접근경로 최상위 폴더에 .htaccess파일을 생성하고 다음과 같이 설정한다.
AuthName "{인증명 - 인증창에 보여지게 됨}"
AuthType Basic  #인증유형 기본 Basic
AuthUserFile {인증정보저장 경로}/.htpasswd
#AuthGroupFile {그룹명}    # 그룹별 인증 원할경우
# GET POST 방식의 접근만 허용하도록 설정
<Limit GET POST>
   require valid-user   # 인증된 사람만이 접속을 허용
</Limit>
2. htpasswd 명령을 실행하여 사용자를 생성합니다.
# 최초 생성
{apache 경로}/bin/htpasswd -c .htpasswd {아이디}
# 아이디 추가
{apache 경로}/bin/htpasswd .htpasswd {아이디}
3. 인증창에 설정한 아이디 비밀번호를 입력해야만 접근이 가능함

apacheAuth

4. 인증된 상태로만 유지될 경우 보안에 문제가 생기므로 다음과 같이 로그아웃을 처리해야만 함
header('HTTP/1.1 401 Unauthorized', true, 401);
echo "{화면에 표시될 로그아웃 메시지 (※ html로 구성가능)}";
exit;