ASE-New/src/main/java/com/codesdream/ase/configure/CustomWebSecurityConfig.java

60 lines
2.1 KiB
Java
Raw Normal View History

2020-01-31 08:59:12 +00:00
package com.codesdream.ase.configure;
2020-02-17 09:32:42 +00:00
import com.codesdream.ase.component.permission.ASEPasswordEncoder;
import com.codesdream.ase.component.permission.ASESecurityAuthenticationProvider;
import com.codesdream.ase.service.ASEUserDetailsService;
2020-01-31 08:59:12 +00:00
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
2020-01-31 08:59:12 +00:00
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.builders.WebSecurity;
2020-01-31 08:59:12 +00:00
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import javax.annotation.Resource;
/**
* Spring Security 配置类
* 用于Spring Security相关参数的配置
*/
2020-01-31 08:59:12 +00:00
@Configuration
@EnableWebSecurity
public class CustomWebSecurityConfig extends WebSecurityConfigurerAdapter {
2020-02-14 07:59:40 +00:00
@Resource
ASEUserDetailsService aseUserDetailService;
2020-02-14 07:59:40 +00:00
@Resource
ASEPasswordEncoder asePasswordEncoder;
2020-02-16 10:20:37 +00:00
@Resource
ASESecurityAuthenticationProvider aseSecurityAuthenticationProvider;
2020-01-31 08:59:12 +00:00
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
2020-01-31 08:59:12 +00:00
.anyRequest().authenticated()
.and()
.csrf().disable().formLogin()
.and()
2020-02-14 07:59:40 +00:00
.formLogin().loginPage("/login")
2020-02-16 10:20:37 +00:00
.permitAll().defaultSuccessUrl("/home").permitAll()
.and()
.logout().permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
2020-02-16 10:20:37 +00:00
auth.authenticationProvider(aseSecurityAuthenticationProvider)
.userDetailsService(aseUserDetailService)
2020-02-14 07:59:40 +00:00
.passwordEncoder(asePasswordEncoder);
}
@Override
public void configure(WebSecurity web) throws Exception {
web
.ignoring()
.antMatchers("/assets/**", "/register/**", "/forget/**", "/not_found/**", "/error/**");
2020-01-31 08:59:12 +00:00
}
}