Skip to content

Commit

Permalink
filter 코드 추가, jwt데이터 테스트, user 엔티티 수정
Browse files Browse the repository at this point in the history
  • Loading branch information
chobeebee committed Jun 26, 2024
1 parent f90aa7d commit ee35299
Show file tree
Hide file tree
Showing 3 changed files with 50 additions and 3 deletions.
41 changes: 41 additions & 0 deletions src/main/java/com/sparta/binplay/config/SecurityConfig.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.sparta.binplay.config;

import com.sparta.binplay.jwt.JWTFilter;
import com.sparta.binplay.oauth2.CustomSuccessHandler;
import com.sparta.binplay.service.CustomOAuth2UserService;
import com.sparta.binplay.service.JWTUtil;
Expand All @@ -8,7 +9,9 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.CorsConfigurationSource;

Expand All @@ -30,6 +33,44 @@ public SecurityConfig(CustomOAuth2UserService customOAuth2UserService, CustomSuc
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {

//csrf disable
http
.csrf((auth) -> auth.disable());

//From 로그인 방식 disable
http
.formLogin((auth) -> auth.disable());

http
.logout((auth) -> auth.disable());

//HTTP Basic 인증 방식 disable
http
.httpBasic((auth) -> auth.disable());

//JWTFilter 추가
http
.addFilterBefore(new JWTFilter(jwtUtil), UsernamePasswordAuthenticationFilter.class);

//oauth2
http
.oauth2Login((oauth2) -> oauth2
.userInfoEndpoint((userInfoEndpointConfig) -> userInfoEndpointConfig
.userService(customOAuth2UserService))
.successHandler(customSuccessHandler)
);

//경로별 인가 작업
http
.authorizeHttpRequests((auth) -> auth
.requestMatchers("/").permitAll()
.anyRequest().authenticated());

//세션 설정 : STATELESS
http
.sessionManagement((session) -> session
.sessionCreationPolicy(SessionCreationPolicy.STATELESS));

http
.cors(corsCustomizer -> corsCustomizer.configurationSource(new CorsConfigurationSource() {

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,10 @@ public class MainController {
public String mainAPI() {
return "main route";
}

@GetMapping("/loginTest")
@ResponseBody
public String loginAPI() {
return "login route";
}
}
6 changes: 3 additions & 3 deletions src/main/java/com/sparta/binplay/entity/Users.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,13 @@ public class Users extends Timestamped{
@Column(name="email", nullable = false, unique = true)
private String email;

@Column(name="password", nullable = false)
@Column(name="password")
private String password;

@Column(name="username", nullable = false)
@Column(name="username")
private String username;

@Column(name="name", nullable = false)
@Column(name="name")
private String name;

@Column(name="grade")
Expand Down

0 comments on commit ee35299

Please sign in to comment.