제가 이용중인 웹서비스에서 알림톡을 받아 알림톡 내부의 링크 버튼을 클릭하면 카카오톡 내부에서 인앱 브라우저로 연결이 됩니다. 인앱 브라우저를 사용하여 해당 서비스에 로그인을 해두고 다음날 알림톡을 받았을때 여전히 로그인 세션이 유지 되어 있는것을 확인 하였습니다.
혹시 이와같이 카톡 브라우저로 어떤 서비스에 로그인을 했을때 해당 세션이 계속 유지 되는 경우는 알림톡을 받은 카카오톡 대화창을 나가기 하지 않고 계속 유지하고 있는경우에 하나의 세션 스토리지로 인식하여 처리가 되는건가요?
인앱 브라우져 세션 정책이 궁금합니다.
1개의 좋아요
Hello, @johndoe2383
the session management in KakaoTalk’s in-app browser:
- Session Management:
- KakaoTalk’s in-app browser maintains its own browser session data
- These session data are independent of regular mobile browsers
- Local Storage and Session Storage can be used
- Cookies are stored separately from regular browsers
- Session Continuity:
- The session continues as long as the KakaoTalk application remains open
- Closing the chat window does not terminate the session
- Completely closing and reopening KakaoTalk usually preserves the session
- However, clearing application data will end the session
- Security Recommendations:
- Set automatic session timeout for sensitive data
- Provide users with a secure logout option
- Request additional verification for critical operations
- Technical Details:
// Session check example
if (isKakaoBrowser()) {
// Session management specific to KakaoTalk browser
sessionStorage.setItem('lastActive', Date.now());
// End session after specific duration
setTimeout(checkSession, 30 * 60 * 1000); // 30 minutes
}
Note: This behavior may vary depending on the KakaoTalk version and device/operating system settings. It’s recommended to always implement extra security measures for critical applications.
Additional notes for developers:
- The in-app browser behaves similarly to a WebView
- Session persistence is tied to the KakaoTalk app’s lifecycle
- Consider implementing additional authentication for sensitive operations
- Be aware that different devices may handle sessions differently
1개의 좋아요
감사합니다. 큰 틀에서 이해가 충분히 가능한 답변이었습니다.
간단한 조건을 기반으로 추가문의를 드리고 싶습니다.
- 유저가 카카오톡 인앱 브라우저로 A서비스에 로그인을 하였다.
- 유저가 3일 후 인앱 브라우저로 접속하는 경우 세션이 유지되어 있고 로그인 상태이다.
- 유저가 7일 후 인앱 브라우저로 접속하는 경우 세션이 유지되어 있고 로그인 상태이다.
- 유저가 30일 후 인앱 브라우저로 접속하는 경우 세션이 유지되어 있고 로그인 상태이다.
- 유저가 90일 후 인앱 브라우저로 접속하는 경우 세션이 유지되어 있고 로그인 상태이다.
- 유저가 2~5번 조건 사이에 어플리케이션 데이터를 삭제하는 경우 세션은 유지되지 않으며, 로그인은 해제된다.
마지막으로 어플리케이션 데이터 삭제는 카카오톡 내부의 임시 데이터 삭제를 의미하는 것 인가요?
1개의 좋아요
Hello, @johndoe2383 Let me explain you in detail about deleting KakaoTalk application data and session management:
- Deleting Application Data:
- Yes, the “deleting application data” you mentioned refers to deleting KakaoTalk’s cache and temporary data
- This process includes:
- Browser cookies
- Local Storage data
- Session Storage data
- Cached web pages
- WebView data
- Session Behavior:
- KakaoTalk’s internal browser (WebView) uses its own storage
- Sessions are stored indefinitely by default
- However, this data is deleted in the following cases:
- When the user clears the application data
- When the application is uninstalled and reinstalled
- When the application data is cleared from the device settings
- Security Recommendations:
// Security check for long-term sessions
const lastLoginCheck = () => {
const lastLogin = localStorage.getItem('lastLoginDate');
const daysSinceLogin = calculateDaysDifference(lastLogin, new Date());
if (daysSinceLogin > 30) {
// Require additional authentication for sessions older than 30 days
requestReAuthentication();
}
}
Note: For applications that contain sensitive data, it is recommended that you implement your own session management mechanism to prevent such long session exposures.
1개의 좋아요
Thank you, your reply is very helpful. Thank you again for your detailed response.
1개의 좋아요
You’re welcome, if you need more information and help, please open a new topic and tag me, I’ll be happy to help.
1개의 좋아요