From 2b6a1d3267c0ead5b790cb5bd6a3ecd3b713cd52 Mon Sep 17 00:00:00 2001 From: Yoonji Lee Date: Thu, 13 Feb 2025 02:30:34 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=ED=86=A0?= =?UTF-8?q?=ED=81=B0=20=EB=B0=A9=EC=8B=9D=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../project/global/config/SecurityConfig.java | 9 ++-- .../CustomAuthenticationEntryPoint.java | 51 ------------------- 2 files changed, 5 insertions(+), 55 deletions(-) delete mode 100644 project/src/main/java/com/edison/project/global/security/CustomAuthenticationEntryPoint.java diff --git a/project/src/main/java/com/edison/project/global/config/SecurityConfig.java b/project/src/main/java/com/edison/project/global/config/SecurityConfig.java index 45dca55..81b77de 100644 --- a/project/src/main/java/com/edison/project/global/config/SecurityConfig.java +++ b/project/src/main/java/com/edison/project/global/config/SecurityConfig.java @@ -5,7 +5,6 @@ import com.edison.project.domain.member.dto.MemberResponseDto; import com.edison.project.domain.member.service.CustomOidcUserService; import com.edison.project.domain.member.service.MemberService; -import com.edison.project.global.security.CustomAuthenticationEntryPoint; import com.edison.project.global.security.CustomUserPrincipal; import com.edison.project.global.security.JwtAuthenticationFilter; import com.edison.project.global.util.JwtUtil; @@ -41,7 +40,6 @@ public class SecurityConfig { private final MemberService memberService; private final CustomOidcUserService customOidcUserService; private final JwtAuthenticationFilter jwtAuthenticationFilter; - private final CustomAuthenticationEntryPoint customAuthenticationEntryPoint; private final JwtUtil jwtUtil; @Bean @@ -60,8 +58,11 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti .failureHandler(this::oidcLoginFailureHandler) ) .exceptionHandling(exception -> - exception.authenticationEntryPoint(customAuthenticationEntryPoint) - ); + exception.authenticationEntryPoint((request, response, authException) -> { + response.sendError(HttpServletResponse.SC_UNAUTHORIZED, "Unauthorized"); + }) + ); + return http.build(); } diff --git a/project/src/main/java/com/edison/project/global/security/CustomAuthenticationEntryPoint.java b/project/src/main/java/com/edison/project/global/security/CustomAuthenticationEntryPoint.java deleted file mode 100644 index 0cb6220..0000000 --- a/project/src/main/java/com/edison/project/global/security/CustomAuthenticationEntryPoint.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.edison.project.global.security; - -import com.edison.project.common.response.ApiResponse; -import com.edison.project.common.status.ErrorStatus; -import com.fasterxml.jackson.databind.ObjectMapper; -import jakarta.servlet.http.HttpServletRequest; -import jakarta.servlet.http.HttpServletResponse; -import lombok.RequiredArgsConstructor; -import org.springframework.http.ResponseEntity; -import org.springframework.security.core.AuthenticationException; -import org.springframework.security.web.AuthenticationEntryPoint; -import org.springframework.stereotype.Component; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.io.IOException; - -@Component -@RequiredArgsConstructor -public class CustomAuthenticationEntryPoint implements AuthenticationEntryPoint { - - private static final Logger logger = LoggerFactory.getLogger(CustomAuthenticationEntryPoint.class); - - @Override - public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) - throws IOException { - - - logger.debug("CustomAuthenticationEntryPoint - commence 호출됨"); - logger.debug("요청 URI: {}", request.getRequestURI()); - logger.debug("요청 메서드: {}", request.getMethod()); - logger.debug("클라이언트 IP: {}", request.getRemoteAddr()); - - if (authException != null) { - logger.error("인증 예외 발생: {}", authException.getMessage(), authException); - } - - ResponseEntity errorResponse = ApiResponse.onFailure(ErrorStatus.CUSTOM_ENTRY_EXCEPTION); - - // HttpServletResponse에 직접 작성 - response.setContentType("application/json;charset=UTF-8"); - response.setCharacterEncoding("UTF-8"); - response.setStatus(errorResponse.getStatusCode().value()); - - // JSON 응답 반환 - ObjectMapper objectMapper = new ObjectMapper(); - objectMapper.writeValue(response.getWriter(), errorResponse.getBody()); - - logger.debug("에러 응답 전송 완료, 상태 코드: {}", response.getStatus()); - } -}