개발 slecs

입금 매칭

목차

입금 매칭 및 파트너 권한/설정 개선

입금 매칭 및 파트너 권한/설정 개선 기능을 구현했음.

배경

기능 확장에 따라 관리 편의성과 사용자 경험을 높이기 위해 구현했음.

구현 방식

내부 클래스 6개를 작성했음.

코드 예시

// 핵심 로직
public void execute(Request request) {
    validate(request);

    Result result = process(request);

    saveResult(result);
    log.info("처리 완료: {}", result.getId());
}

검토 포인트

기능 추가 시 엣지케이스와 예외 처리를 먼저 정의하면 나중에 버그를 줄일 수 있음. 특히 null 처리와 상태 전환 조건을 명확히 해야 함.

정리

총 6개 파일 변경으로 기능을 완성했음. 정상 동작 확인 후 배포했음.

보안 고려사항

이번 변경에서 보안 측면을 함께 검토했음.

입력 검증: 외부에서 들어오는 파라미터는 항상 서버에서 재검증함. 클라이언트 검증만으로는 부족함.

권한 확인: 요청자가 해당 리소스에 접근 권한이 있는지 확인했음. 타인의 데이터를 조회/수정하는 API는 소유자 확인이 필수임.

// 소유자 확인 예시
if (!resource.getOwnerId().equals(loginUserId)) {
    throw new AccessDeniedException("접근 권한이 없습니다");
}

로그: 민감한 데이터(금액, 개인정보)는 로그에 마스킹해서 남겼음.

다음

댓글 0

첫 댓글 달아줘.