용자에게 권한을 주기위해 서버에서 쿠키 또는 세션값을 지정하여 클라이언트에 부여하게 됩니다. 물론 로그인등의 사용자 인증을 거친 뒤겠죠. 일정 시간이 지나고 쿠키만료에 의한 자동으로 세션을 파괴하여 사용자의 접근을 막기 위한 방법에 대하여 알아보겠습니다. php 언어를 사용한 예제입니다. 우선 간략한 프로세스를 보면 다음과 같을 것입니다.
# 쿠키 세션 삭제(파괴) 프로세스
1. 접속된 사용자의 쿠키 또는 세션 변수 확인
2. 설정된 쿠키 시간의 만료 여부를 체크
3. 쿠키 만료시 로그아웃 프로세스를 실행
4. 3번에 위해 세션, 쿠키 모두 삭제됨
# 쿠키 만료, 세션 파괴 예제소스 보기
# 쿠키 세션 삭제(파괴) 프로세스
1. 접속된 사용자의 쿠키 또는 세션 변수 확인
2. 설정된 쿠키 시간의 만료 여부를 체크
3. 쿠키 만료시 로그아웃 프로세스를 실행
4. 3번에 위해 세션, 쿠키 모두 삭제됨
# 쿠키 만료, 세션 파괴 예제소스 보기
if (!isset($_COOKIE['name'])) {
unset($_SESSION['name']);
}
위 코드는 설정된 쿠키가 존재하는지를 우선 확인합니다. 그리고 만약 설정된 시간이 초과하여 해당 쿠키가 존재한지 않는다면(위에서는 name) unset 함수를 사용하여 해당하는 세션 변수를 삭제합니다.
세션변수만 삭제하였지만 경우에 따라 세션에 관련된 모든 정보를 삭제하는 경우도 필요할 수 있고 아니면 등록한 세션 변수가 상당히 많을 수도 있을것입니다. 그래서 쿠키가 없는 경우 로그아웃 페이지로 강제로 이동시켜 처리하는 경우도 있습니다.