감사 로그와 소프트 딜리트로 관리자 API 안전성 확보 경험
팀 프로젝트에서 관리자 전용 API를 설계하면서 보안 관련 엔드포인트의 특수성을 처음 체감했습니다. 일반 사용자 API와 달리 권한 범위와 감사 로그 요구가 훨씬 엄격했는데, 모든 관리자 액션에 누가 언제 무엇을 했는지를 기록하는 Audit Log 테이블을 별도로 설계했습니다. 자산 관리 기능에서는 리소스 상태 변경 API에 낙관적 잠금을 적용해 동시 수정 충돌을 방지했습니다.
관리자 콘솔 API에서 가장 중요한 건 되돌릴 수 없는 작업에 대한 확인 단계인데, 삭제 요청에 소프트 딜리트와 확인 코드를 요구하는 방식을 추가했습니다. 지금도 권한이 높은 API를 설계할 때는 감사 가능성을 설계 단계에서 먼저 고려하는 습관을 유지하고 있습니다.