← ADR 목록

관리자 인증: DB users + RS256 JWT

관리자 인증은 DB users, bcrypt, RS256 JWT, CLI seed 방식으로 시작한다.

보안승인결정일 2026년 5월 8일

배경

MVP는 단일 관리자 운영 체제지만, 프로젝트 생성/수정/공개 상태 토글을 보호할 인증이 필요했다.

결정

DB 사용자 테이블과 RS256 JWT를 사용하고, 관리자 계정은 CLI로만 생성한다.

근거

DB 사용자 테이블은 확장 가능하고, RS256은 향후 별도 검증 서비스에 공개 키를 전달할 수 있는 선택지를 남긴다.

결과

회원가입 API 없이 `create_admin` CLI로만 계정을 만들고, 보호된 요청마다 DB에서 사용자를 다시 확인한다.

상세 기록

맥락

MVP는 단일 관리자 운영 체제지만, 프로젝트 생성, 수정, 공개 상태 토글을 보호할 인증 방식이 필요했다.

결정

DB 사용자 테이블과 RS256 JWT를 사용한다. 관리자 계정은 CLI로만 생성한다.

근거

DB 사용자 테이블은 단일 계정에서 시작해도 확장 가능하고, RS256은 공개 키 기반 검증 경로를 열어둔다.

결과

회원가입 API는 만들지 않는다. python -m portfolio_home.scripts.create_admin으로만 관리자 계정을 만들고, 보호된 요청은 매번 DB에서 사용자를 재확인한다.