Client UI
클라이언트 역할 검사는 버튼 노출을 조절할 뿐 최종 보안 경계가 아니다
UI에서 편집 버튼을 숨겨도 서버 요청은 직접 보낼 수 있다. 서버 액션이나 API에서 같은 권한을 다시 검사해야 한다.
UI에서 판단할 수 있는 것
관리자에게만 관리 버튼 표시
작성자에게만 편집 버튼 표시
로딩 중에는 권한 판정 보류
canEdit = role === 'admin' || userId === authorId
서버에서 다시 확인할 것
세션이 실제로 있는가
role이 필요한 권한을 만족하는가
리소스 소유자가 맞는가
버튼 숨김만으로 보호하지 않는다