Page 459 - MDP2022-3
P. 459

바.  Java  Spring  Boot에서  모든  기능  구현을  위한  코드
             com.webmister.semicolon.config.CorsConfig
             import  org.springframework.context.annotation.Bean;
             import  org.springframework.context.annotation.Configuration;
             import  org.springframework.web.cors.CorsConfiguration;
             import  org.springframework.web.cors.UrlBasedCorsConfigurationSource;
             import  org.springframework.web.filter.CorsFilter;


             @Configuration
             public  class  CorsConfig  {
                     @Bean
                     public  CorsFilter  corsFilter(){
                             UrlBasedCorsConfigurationSource  source  =  new  UrlBasedCorsConfigurationSource();
                             CorsConfiguration  config  =  new  CorsConfiguration();
                             config.setAllowCredentials(true);
                             config.addAllowedOriginPattern("*");
                             config.addAllowedHeader("*");
                             config.addAllowedMethod("*");


                             source.registerCorsConfiguration("/api/**",  config);
                             return  new  CorsFilter(source);
                     }
             }



             com.webmister.semicolon.config.SecurityConfig
             import  com.webmister.semicolon.jwt.JwtSecurityConfig;
             import  com.webmister.semicolon.jwt.JwtTokenProvider;
             import  org.springframework.context.annotation.Bean;
             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.crypto.bcrypt.BCryptPasswordEncoder;
             import  org.springframework.security.crypto.password.PasswordEncoder;
             import  org.springframework.security.web.SecurityFilterChain;
             i                 m                   p                 o                  r                  t
             org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
             import  org.springframework.web.filter.CorsFilter;


             @EnableWebSecurity
             public  class  SecurityConfig  {
                     private  final  JwtTokenProvider  jwtTokenProvider;
                     private  final  CorsFilter  corsFilter;


                     public  SecurityConfig(
                                     JwtTokenProvider  jwtTokenProvider,
   454   455   456   457   458   459   460   461   462   463   464