patch
-
Meal API Troubleshooting(API 보안 강화)프로젝트/개인프로젝트 2026. 3. 4. 14:05
🥗 Meal API 구현 중 발생한 설계 이슈 및 해결 (Troubleshooting)1. IDOR(Insecure Direct Object Reference) 취약점 방지문제 상황: 특정 식단 조회(GET /meals/:id) 시, 식단의 id값(UUID)만으로 조회할 경우 다른 사용자의 UUID를 추측하거나 입수하여 타인의 식단 기록을 열람할 위험이 있었습니다.해결 방법: 서비스 계층에서 조회 쿼리 작성 시, id와 함께 JWT에서 추출한 userId를 복합 조건으로 사용하도록 수정했습니다.코드 변화: // 변경 전: 단순 ID 조회const meal = await this.prisma.meal.findUnique({ where: { id } });// 변경 후: 소유권 검증 포함const meal..