This is how role based authorization works
- 역할 기반 권한 부여는 사용자 권한을 관리하는 핵심 메커니즘입니다. 🔑
- 사용자가 웹사이트에 접근할 때, 쿠키를 통해 세션 ID를 전달하여 사용자를 식별합니다. 🍪
- 세션 ID는 데이터베이스에서 사용자 ID와 연결되어, 사용자의 역할 정보를 가져옵니다. 🗄️
- 사용자의 역할에 따라 특정 페이지나 기능에 대한 접근 권한이 결정됩니다. 🛡️
- 로그인 과정에서 서버는 쿠키를 설정하여 사용자 브라우저에 세션 ID를 저장합니다. ✍️
- 세션은 만료 시간을 가지며, 사용자가 활발하게 활동하는 경우 자동으로 갱신될 수 있습니다. 🔄
- Tanstack Start 프로젝트에서 세션 토큰을 생성하고 쿠키에 저장하는 방법을 예시로 보여줍니다. 💻
- 관리자 권한이 필요한 기능은 미들웨어를 통해 사용자의 역할이 관리자인지 확인합니다. ⚙️
- 세션 토큰을 데이터베이스에서 조회하여 유효성을 검사하고, 만료 여부를 확인합니다. ⏳
- 사용자 ID를 기반으로 사용자 정보를 조회하여 역할 정보를 확인합니다. 👤
- 역할 기반 권한 부여는 API 토큰이나 JWT 토큰을 사용하여 구현될 수도 있습니다. 🌐
- Google OAuth를 사용하는 경우, Google로부터 사용자 정보를 받아 세션을 설정합니다. ✉️