Skip to content

feat(auth): 로그인 시 기존 세션 회수 제거 — 디바이스별 동시 세션 허용 - #86

Merged
mack-erel merged 2 commits into
mainfrom
claude/device-specific-logout-lm6hyr
Jul 20, 2026
Merged

feat(auth): 로그인 시 기존 세션 회수 제거 — 디바이스별 동시 세션 허용#86
mack-erel merged 2 commits into
mainfrom
claude/device-specific-logout-lm6hyr

Conversation

@mack-erel

Copy link
Copy Markdown
Owner

로그인(비밀번호)·MFA·패스키 인증 성공 시마다 revokeOtherSessions 로
동일 사용자의 다른 활성 세션을 전부 폐기하는 단일 세션 정책이 걸려 있어,
계정당 세션이 항상 1개뿐이었고 어느 디바이스에서든 로그아웃하면
사실상 전체 로그아웃처럼 동작했다.

세 로그인 경로에서 revokeOtherSessions 호출을 제거해 디바이스별
동시 세션을 허용한다. /logout 은 기존대로 현재 세션만 폐기하므로
이제 로그아웃이 해당 디바이스에만 적용된다.

revokeOtherSessions 자체는 /account/sessions 의 "다른 세션 모두
로그아웃" 액션에서 계속 사용하므로 유지하고, 주석만 현행화했다.
비밀번호 재설정·관리자 조치 등의 전체 세션 폐기(revokeAllUserSessions)
경로는 변경 없음.

Co-Authored-By: Claude Fable 5 [email protected]
Claude-Session: https://claude.ai/code/session_01TsSxxBpi6pD5Du9yjnkJ7s

claude added 2 commits July 20, 2026 03:16
로그인(비밀번호)·MFA·패스키 인증 성공 시마다 revokeOtherSessions 로
동일 사용자의 다른 활성 세션을 전부 폐기하는 단일 세션 정책이 걸려 있어,
계정당 세션이 항상 1개뿐이었고 어느 디바이스에서든 로그아웃하면
사실상 전체 로그아웃처럼 동작했다.

세 로그인 경로에서 revokeOtherSessions 호출을 제거해 디바이스별
동시 세션을 허용한다. /logout 은 기존대로 현재 세션만 폐기하므로
이제 로그아웃이 해당 디바이스에만 적용된다.

revokeOtherSessions 자체는 /account/sessions 의 "다른 세션 모두
로그아웃" 액션에서 계속 사용하므로 유지하고, 주석만 현행화했다.
비밀번호 재설정·관리자 조치 등의 전체 세션 폐기(revokeAllUserSessions)
경로는 변경 없음.

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01TsSxxBpi6pD5Du9yjnkJ7s
/account/sessions 에 revokeAll 액션을 추가한다. 현재 세션을 포함한
사용자의 모든 세션과 모든 OIDC refresh token 을 폐기한다 — 관리자
강제 로그아웃(forceLogout)과 동일한 폐기 조합의 셀프서비스 버전.

- audit: sessions_revoked (detail.all=true, count)
- 보안 알림: sessions_revoked_all (best-effort)
- 현재 세션 포함 폐기이므로 쿠키 삭제 후 /login 으로 redirect
- UI: "다른 모든 기기에서 로그아웃" 아래에 확인 다이얼로그가 있는
  "모든 기기에서 로그아웃" 버튼 추가, i18n ko/en

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01TsSxxBpi6pD5Du9yjnkJ7s
@mack-erel
mack-erel merged commit e8d0627 into main Jul 20, 2026
6 checks passed
@mack-erel
mack-erel deleted the claude/device-specific-logout-lm6hyr branch July 20, 2026 03:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants