로그인 시 역할 주입
DB의 user.role을 토큰에 담고 기본 역할은 user로 고정합니다.
token.role
세션에 role을 넣은 뒤에도 페이지, 미들웨어, API Route Handler, Server Action이 같은 규칙을 읽어야 우회 요청을 막을 수 있습니다.
DB의 user.role을 토큰에 담고 기본 역할은 user로 고정합니다.
token.role
서버 컴포넌트와 클라이언트 훅이 같은 role 값을 읽게 합니다.
session.user.role
편집 버튼 숨김은 UX이며, 요청 자체를 막는 보안 장벽은 아닙니다.
canEdit
Route Handler와 Server Action에서 role, authorId를 다시 확인합니다.
403 Forbidden