springboot学习总结(八)Spring security配置

(一)配置类

Spring security的配置和Spring MVC的配置类似,只需在一个配置类上注解@EnableWebSecurity(Springboot项目可以不用),并让这个类继承WebSecurityConfigurerAdapter。

@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        super.configure(auth);
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        super.configure(http);
    }

    @Override
    public void configure(WebSecurity web) throws Exception {
        super.configure(web);
    }
}

  (二)用户认证

通过实现UserDetailsService来实现

@Service
public class CustomUserService implements UserDetailsService {

    @Autowired
    SysUserRepository sysUserRepository;

    @Override
    public UserDetails loadUserByUsername(String s) throws UsernameNotFoundException {
        SysUser user = sysUserRepository.findByUsername(s);
        if (user == null) {
            throw new UsernameNotFoundException("用户名不存在");
        }
        return user;
    }
}

  (三)请求&授权

Spring security通过重写

protected void configure(HttpSecurity http) 

  这个方法来实现请求拦截的。

(四)定制登录行为

通过重写

protected void configure(HttpSecurity http) 

  这个方法(和上面是同一个方法)来定制登录行为

猜你喜欢

转载自www.cnblogs.com/vincentren/p/10739569.html