사용자 세션 관리
사용자 세션 관리는 사용자와 관리자가 활성 로그인 상태를 검토하고 필요할 때 세션을 취소할 수 있도록 도와줍니다.
Logto에서는 세 가지 일반적인 경로를 통해 세션을 관리할 수 있습니다:
- Account API: 제품 계정 설정 페이지에서 최종 사용자가 직접 관리할 수 있도록 지원합니다.
- Management API: 관리 또는 지원 도구에서 모든 사용자의 세션을 관리할 수 있도록 지원합니다.
- Admin Console: 별도의 도구 개발 없이 Logto Console에서 운영자가 직접 워크플로우를 수행할 수 있습니다.
올바른 API 선택하기
| 시나리오 | 권장 API |
|---|---|
| 로그인한 사용자가 자신의 활성 세션을 직접 관리하도록 허용 | Account API |
| 관리자 또는 지원팀이 특정 사용자의 세션을 관리하도록 허용 | Management API |
| 운영자가 Logto Console에서 직접 세션을 관리하도록 허용 | Admin Console |
활성 세션 보기
Account API (셀프 서비스)
Account API의 세션 엔드포인트를 사용하여 현재 사용자의 활성 세션 목록을 조회할 수 있습니다.
- 참고 섹션: 사용자 세션 관리
- 엔드포인트:
GET /api/my-account/sessions
이 기능을 최종 사용자에게 제공하기 전에, Account center 설정에서 세션 관리가 활성화되어 있고, 앱이 필요한 Account API 스코프를 요청하는지 확인하세요.
Management API (관리 도구)
관리 시스템에서 대상 사용자의 세션 목록이 필요할 때 Management API를 사용하세요.
- 참고 섹션: 사용자 세션 관리
- 엔드포인트:
GET /api/users/{userId}/sessions - 선택적 상세 엔드포인트:
GET /api/users/{userId}/sessions/{sessionId}
세션 취소하기
Account API (최종 사용자가 자신의 세션 취소)
최종 사용자는 자신의 세션 목록에서 특정 세션을 취소할 수 있습니다.
- 참고 섹션: 사용자 세션 관리
- 엔드포인트:
DELETE /api/my-account/sessions/{sessionId}
민감한 작업의 경우, Account API 세션 관리는 접근 전에 최근 사용자 인증이 필요합니다. 자세한 내용은 Step-up 인증 (Authentication)을 참고하세요.
Management API (관리자가 사용자 세션 취소)
관리자는 사용자 ID와 세션 ID를 통해 대상 사용자의 세션을 취소할 수 있습니다.
- 참고 섹션: 사용자 세션 관리
- 엔드포인트:
DELETE /api/users/{userId}/sessions/{sessionId}
Admin Console
팀이 Logto Console에서 직접 사용자를 관리하는 경우, 사용자 상세 페이지에서 활성 세션을 검토하고 특정 세션을 취소할 수 있습니다.
- 참고 섹션: 사용자 활성 세션 관리
관련 리소스
세션 사용자 승인 앱 (grants) 관리Account API로 계정 설정: 사용자 세션 관리
Management API로 계정 설정: 사용자 세션 관리
사용자 관리: 사용자 활성 세션 관리