44import  org .springframework .context .annotation .Bean ;
55import  org .springframework .context .annotation .Configuration ;
66import  org .springframework .security .authentication .AuthenticationManager ;
7- import  org .springframework .security .config .annotation .authentication .builders .AuthenticationManagerBuilder ;
7+ import  org .springframework .security .authentication .dao .DaoAuthenticationProvider ;
8+ //import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; 
9+ import  org .springframework .security .config .annotation .authentication .configuration .AuthenticationConfiguration ;
810import  org .springframework .security .config .annotation .method .configuration .EnableGlobalMethodSecurity ;
911import  org .springframework .security .config .annotation .web .builders .HttpSecurity ;
10- import  org .springframework .security .config .annotation .web .configuration .EnableWebSecurity ;
11- import  org .springframework .security .config .annotation .web .configuration .WebSecurityConfigurerAdapter ;
12+ // import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
13+ // import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
1214import  org .springframework .security .config .http .SessionCreationPolicy ;
1315import  org .springframework .security .crypto .bcrypt .BCryptPasswordEncoder ;
1416import  org .springframework .security .crypto .password .PasswordEncoder ;
17+ import  org .springframework .security .web .SecurityFilterChain ;
1518import  org .springframework .security .web .authentication .UsernamePasswordAuthenticationFilter ;
1619
1720import  com .bezkoder .springjwt .security .jwt .AuthEntryPointJwt ;
1821import  com .bezkoder .springjwt .security .jwt .AuthTokenFilter ;
1922import  com .bezkoder .springjwt .security .services .UserDetailsServiceImpl ;
2023
2124@ Configuration 
22- @ EnableWebSecurity 
2325@ EnableGlobalMethodSecurity (
2426 // securedEnabled = true, 
2527 // jsr250Enabled = true, 
2628 prePostEnabled  = true )
27- public  class  WebSecurityConfig  extends  WebSecurityConfigurerAdapter  {
29+ public  class  WebSecurityConfig  {  //  extends WebSecurityConfigurerAdapter {
2830 @ Autowired 
2931 UserDetailsServiceImpl  userDetailsService ;
3032
@@ -36,31 +38,62 @@ public AuthTokenFilter authenticationJwtTokenFilter() {
3638 return  new  AuthTokenFilter ();
3739 }
3840
39-  @ Override 
40-  public  void  configure (AuthenticationManagerBuilder  authenticationManagerBuilder ) throws  Exception  {
41-  authenticationManagerBuilder .userDetailsService (userDetailsService ).passwordEncoder (passwordEncoder ());
41+ // @Override 
42+ // public void configure(AuthenticationManagerBuilder authenticationManagerBuilder) throws Exception { 
43+ // authenticationManagerBuilder.userDetailsService(userDetailsService).passwordEncoder(passwordEncoder()); 
44+ // } 
45+ 46+  @ Bean 
47+  public  DaoAuthenticationProvider  authenticationProvider () {
48+  DaoAuthenticationProvider  authProvider  = new  DaoAuthenticationProvider ();
49+ 50+  authProvider .setUserDetailsService (userDetailsService );
51+  authProvider .setPasswordEncoder (passwordEncoder ());
52+ 53+  return  authProvider ;
4254 }
4355
56+ // @Bean 
57+ // @Override 
58+ // public AuthenticationManager authenticationManagerBean() throws Exception { 
59+ // return super.authenticationManagerBean(); 
60+ // } 
61+ 4462 @ Bean 
45-  @ Override 
46-  public  AuthenticationManager  authenticationManagerBean () throws  Exception  {
47-  return  super .authenticationManagerBean ();
63+  public  AuthenticationManager  authenticationManager (AuthenticationConfiguration  authConfig ) throws  Exception  {
64+  return  authConfig .getAuthenticationManager ();
4865 }
4966
5067 @ Bean 
5168 public  PasswordEncoder  passwordEncoder () {
5269 return  new  BCryptPasswordEncoder ();
5370 }
5471
55-  @ Override 
56-  protected  void  configure (HttpSecurity  http ) throws  Exception  {
72+ // @Override 
73+ // protected void configure(HttpSecurity http) throws Exception { 
74+ // http.cors().and().csrf().disable() 
75+ // .exceptionHandling().authenticationEntryPoint(unauthorizedHandler).and() 
76+ // .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and() 
77+ // .authorizeRequests().antMatchers("/api/auth/**").permitAll() 
78+ // .antMatchers("/api/test/**").permitAll() 
79+ // .anyRequest().authenticated(); 
80+ // 
81+ // http.addFilterBefore(authenticationJwtTokenFilter(), UsernamePasswordAuthenticationFilter.class); 
82+ // } 
83+ 84+  @ Bean 
85+  public  SecurityFilterChain  filterChain (HttpSecurity  http ) throws  Exception  {
5786 http .cors ().and ().csrf ().disable ()
58-  .exceptionHandling ().authenticationEntryPoint (unauthorizedHandler ).and ()
59-  .sessionManagement ().sessionCreationPolicy (SessionCreationPolicy .STATELESS ).and ()
60-  .authorizeRequests ().antMatchers ("/api/auth/**" ).permitAll ()
61-  .antMatchers ("/api/test/**" ).permitAll ()
62-  .anyRequest ().authenticated ();
87+  .exceptionHandling ().authenticationEntryPoint (unauthorizedHandler ).and ()
88+  .sessionManagement ().sessionCreationPolicy (SessionCreationPolicy .STATELESS ).and ()
89+  .authorizeRequests ().antMatchers ("/api/auth/**" ).permitAll ()
90+  .antMatchers ("/api/test/**" ).permitAll ()
91+  .anyRequest ().authenticated ();
92+ 93+  http .authenticationProvider (authenticationProvider ());
6394
6495 http .addFilterBefore (authenticationJwtTokenFilter (), UsernamePasswordAuthenticationFilter .class );
96+ 97+  return  http .build ();
6598 }
6699}
0 commit comments