session에 해당되는 글 1건
2009/03/06 :: [CakePHP] Auth Component를 사용하는데 난데없이 Logout 될때..
2009/03/06 16:09 :: 개발자 생활
오랜만에 CakePHP 관련된 글을 올리네요. 오늘은 사용자 인증 관련된 Component인 Auth Component에 대해서 적어봅니다.
Auth 컴포넌트를 쓰면 쉽게 로긴 회원 관리등을 구현할 수 있습니다.
관련글은
http://book.cakephp.org/view/172/Authentication
여기를 참조하시면 되구요.
그런데 쓰다보면 몰르고 request를 두번 날린다던가 (클릭을 두번해버려서) 그런경우에 저절로 logout 되는 현상이 있습니다.
이게 무슨 문제인가 Auth에서는 Session Component를 사용하고 있고 timeout도 기본 120초 x 10초 로 되어있는데 ...
timeout 설정은 config/core.php에 Session.timeout 란에 120이 기본으로 되있고 Security.level에 따라서 timeout 값이 늘어납니다. Security.level에는 low, midium, high 가 있는데 각각 Session.timeout 값에 300초, 100초, 10초를 곱해준 값이 실제 timeout 값이 됩니다. 그런데 level 중에 high에는 그외에 다른 게 있는데요.
주석에는
라고 되어 있습니다. 이 말인 즉 request 마다 세션 id가 생성된다는건데요. 내부적으로 세션 id가 어떻게 관리되는지 는 모르겠지만 기본적으로 request마다 다른 세션이라는 얘기가 됩니다.
그래서 위의 문제를 해결하기 위해서는 Security.level 를 midium 이하로 설정해야 저런 문제가 없네요 ^^
자세한거는 소스를 좀더 봐야겠네요
Auth 컴포넌트를 쓰면 쉽게 로긴 회원 관리등을 구현할 수 있습니다.
관련글은
http://book.cakephp.org/view/172/Authentication
여기를 참조하시면 되구요.
그런데 쓰다보면 몰르고 request를 두번 날린다던가 (클릭을 두번해버려서) 그런경우에 저절로 logout 되는 현상이 있습니다.
이게 무슨 문제인가 Auth에서는 Session Component를 사용하고 있고 timeout도 기본 120초 x 10초 로 되어있는데 ...
timeout 설정은 config/core.php에 Session.timeout 란에 120이 기본으로 되있고 Security.level에 따라서 timeout 값이 늘어납니다. Security.level에는 low, midium, high 가 있는데 각각 Session.timeout 값에 300초, 100초, 10초를 곱해준 값이 실제 timeout 값이 됩니다. 그런데 level 중에 high에는 그외에 다른 게 있는데요.
주석에는
CakePHP session IDs are also regenerated between requests if 'Security.level' is set to 'high'.
라고 되어 있습니다. 이 말인 즉 request 마다 세션 id가 생성된다는건데요. 내부적으로 세션 id가 어떻게 관리되는지 는 모르겠지만 기본적으로 request마다 다른 세션이라는 얘기가 됩니다.
그래서 위의 문제를 해결하기 위해서는 Security.level 를 midium 이하로 설정해야 저런 문제가 없네요 ^^
자세한거는 소스를 좀더 봐야겠네요
이올린에 북마크하기

