From d1299819c72c786e346b1deedf38441f11505889 Mon Sep 17 00:00:00 2001 From: CYJhub Date: Sun, 4 Feb 2024 16:40:13 +0900 Subject: [PATCH] =?UTF-8?q?[feat]=20security=EB=B3=B5=EA=B5=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hooking/hooking/config/SecurityConfig.java | 18 ++++++------------ .../jwt/CustomAuthenticationEntryPoint.java | 2 +- 2 files changed, 7 insertions(+), 13 deletions(-) diff --git a/src/main/java/shop/hooking/hooking/config/SecurityConfig.java b/src/main/java/shop/hooking/hooking/config/SecurityConfig.java index 2faf7dc..61b5ecf 100644 --- a/src/main/java/shop/hooking/hooking/config/SecurityConfig.java +++ b/src/main/java/shop/hooking/hooking/config/SecurityConfig.java @@ -73,7 +73,7 @@ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { .authorizeRequests() .requestMatchers(CorsUtils::isPreFlightRequest).permitAll() .antMatchers("/api/v2/**", "/", "/css/**", "/images/**", "/js/**", "/h2/**", - "/select-role", "/information", "/file/**", + "/select-role","/information", "/file/**", /* swagger v3 */ "/v3/api-docs/**", "/swagger-ui/**", @@ -84,8 +84,8 @@ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { "/configuration/security", "/swagger-ui.html", "/webjars/**", - "**/oath-processor/**", - "/login/oauth2/code/kakao/**" + "**/oath-processor/**" + ).permitAll() // .antMatchers("/api/v2/**").hasRole(Role. // USER.name()) @@ -94,17 +94,11 @@ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { .logout() .logoutSuccessUrl("/") .and() - .oauth2Login() - .loginPage("/login/oauth2/code/kakao")//인가코드 > 토큰받아옴 > 유저정보 요청(여기까지 자동으로 loadUser해줌) > 유저정보 받아옴 + .oauth2Login().loginPage("/login/oauth2/code/kakao")//인가코드 > 토큰받아옴 > 유저정보 요청(여기까지 자동으로 loadUser해줌) > 유저정보 받아옴 .successHandler(authenticationSuccessHandler) //전체로그인 성공 시, handler를 설정 - .failureHandler((request, response, exception) -> { - // OAuth 2.0 로그인 실패 시 처리 (예: 리다이렉트) - response.sendRedirect("/auth/login/ex"); - }) .userInfoEndpoint() //OAuth 2 로그인 성공 이후 사용자 정보를 가져올 때의 설정 - .userService(oAuthUserService); //소셜 로그인 성공 시 후속 조치를 진행할 UserService 인터페이스의 구현체를 등록 + .userService(oAuthUserService); //소설 로그인 성공 시 후속 조치를 진행할 UserService 인터페이스의 구현체를 등록 return http.addFilterBefore(new JwtAuthenticationFilter(jwtTokenProvider), UsernamePasswordAuthenticationFilter.class).build(); } - -} +} \ No newline at end of file diff --git a/src/main/java/shop/hooking/hooking/global/jwt/CustomAuthenticationEntryPoint.java b/src/main/java/shop/hooking/hooking/global/jwt/CustomAuthenticationEntryPoint.java index 1c1d114..eb46865 100644 --- a/src/main/java/shop/hooking/hooking/global/jwt/CustomAuthenticationEntryPoint.java +++ b/src/main/java/shop/hooking/hooking/global/jwt/CustomAuthenticationEntryPoint.java @@ -22,7 +22,7 @@ public void commence(HttpServletRequest request, HttpServletResponse response, } else { // 가입되지 않은 사용자의 접근 if (!request.getRequestURI().equals("/auth/login") && !request.getRequestURI().startsWith("/auth/")) { - response.sendRedirect("/auth/login"); + response.sendRedirect("https://hooking.me/oath-processor"); } }