package com.kum.config; import com.kum.filter.AuthenticationLoginFilter; import com.kum.handler.AuthenticationEntryPointImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.builders.WebSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; import org.springframework.security.config.http.SessionCreationPolicy; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter; import org.springframework.web.filter.CorsFilter; import javax.annotation.Resource; /** * @version V1.0 * @Package com.kum.config * @auhter SunGuangJie * @date 2021/2/9-12:15 PM */ @EnableGlobalMethodSecurity(prePostEnabled = true, securedEnabled = true) public class SecurityConfig extends WebSecurityConfigurerAdapter { /** * 认证失败处理类 */ @Autowired private AuthenticationEntryPointImpl unauthorizedHandler; @Resource private UserDetailsService userDetailsService; @Bean public BCryptPasswordEncoder bCryptPasswordEncoder() { return new BCryptPasswordEncoder(); } @Override protected void configure(AuthenticationManagerBuilder auth) throws Exception { auth.userDetailsService(userDetailsService).passwordEncoder(bCryptPasswordEncoder()); } @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(); http .exceptionHandling().authenticationEntryPoint(unauthorizedHandler).and() .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS).and() .authorizeRequests() .anyRequest().permitAll(); http.addFilterAfter(new AuthenticationLoginFilter(authenticationManagerBean()), UsernamePasswordAuthenticationFilter.class); } @Override public void configure(WebSecurity web) throws Exception { web.ignoring().antMatchers( "/system/**/list", "/login/**", "/system/user/admin/list/", "/system/user/isAdmin"); } @Bean @Override public AuthenticationManager authenticationManagerBean() throws Exception { return super.authenticationManagerBean(); } }
最近下载更多
citybird LV4
11月18日
sodkj123 LV16
10月8日
ma406805131 LV15
5月7日
jsjsjsjsbdbshns LV1
4月27日
860421 LV3
4月18日
YhXyHx523 LV6
4月13日
denglu123321 LV4
4月11日
微信网友_6444139264921600 LV6
4月10日
dapeng0011 LV15
4月6日
玖零定制问题修复 LV34
4月4日
最近浏览更多
citybird LV4
11月18日
15953970869 LV6
11月9日
oceanchen LV14
10月30日
zwn258000
10月24日
暂无贡献等级
charleswang LV7
10月21日
withyouatdusk LV2
10月19日
微信网友_5795397379264512 LV1
10月18日
daisys LV2
10月14日
lqzixi LV4
10月9日
sodkj123 LV16
10月8日