로그 ip 확인 로직 수정

This commit is contained in:
2026-01-23 11:03:27 +09:00
parent fe15750ddf
commit 76339c80ed
2 changed files with 11 additions and 2 deletions

View File

@@ -4,9 +4,11 @@ import com.kamco.cd.kamcoback.common.enums.StatusType;
import com.kamco.cd.kamcoback.common.enums.error.AuthErrorCode;
import com.kamco.cd.kamcoback.common.exception.CustomApiException;
import com.kamco.cd.kamcoback.common.utils.HeaderUtil;
import com.kamco.cd.kamcoback.config.api.ApiLogFunction;
import com.kamco.cd.kamcoback.postgres.entity.MemberEntity;
import com.kamco.cd.kamcoback.postgres.repository.members.MembersRepository;
import jakarta.servlet.http.HttpServletRequest;
import java.util.Optional;
import lombok.RequiredArgsConstructor;
import org.mindrot.jbcrypt.BCrypt;
import org.springframework.security.authentication.AuthenticationProvider;
@@ -60,7 +62,11 @@ public class CustomAuthenticationProvider implements AuthenticationProvider {
// front에서 전달한 사용자 ip 등록
HttpServletRequest req = (attr != null) ? attr.getRequest() : null;
String ip = (req != null) ? HeaderUtil.get(req, "X-Forwarded-For") : null;
String ip =
(req != null)
? Optional.ofNullable(HeaderUtil.get(req, "kamco-user-ip"))
.orElseGet(() -> ApiLogFunction.getXFowardedForIp(req))
: null;
UsernamePasswordAuthenticationToken token =
new UsernamePasswordAuthenticationToken(userDetails, null, userDetails.getAuthorities());

View File

@@ -11,6 +11,7 @@ import com.kamco.cd.kamcoback.postgres.repository.log.AuditLogRepository;
import jakarta.servlet.http.HttpServletRequest;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Optional;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.MethodParameter;
@@ -75,7 +76,9 @@ public class ApiResponseAdvice implements ResponseBodyAdvice<Object> {
return body;
}
String ip = ApiLogFunction.getXFowardedForIp(servletRequest);
String ip =
Optional.ofNullable(HeaderUtil.get(servletRequest, "kamco-user-ip"))
.orElseGet(() -> ApiLogFunction.getXFowardedForIp(servletRequest));
Long userid = null;
String loginAttemptId = null;