spring - 微服务认证 2 实战
·
@Configuration
@EnableWebSecurity
public class SecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
// http.sessionManagement(AbstractHttpConfigurer::disable).authenticationManager(authenticationManager)
http.authorizeHttpRequests(auth -> auth
.requestMatchers("/user/login").permitAll()
.anyRequest().authenticated()
);
// 自定义用户信息
http.userDetailsService(new SecurityUserService());
http.formLogin(fl -> fl
// 自定义登录页面 必须为 GET 请求
.loginPage("/user/login")
// 自定义登录处理 表单提交 必须为 POST 请求
.loginProcessingUrl("/user/login")
// 自定义登录用户名参数
.usernameParameter("user")
// 自定义登录密码参数
.passwordParameter("pass")
// 登录成功跳转,默认 false
// false:访问上一次的页面,没有则和 true 情况相同
// true:总是访问设置的页面,一般都设置成首页
.defaultSuccessUrl("/home/a", true)
// 登录成功 页面转发;优先级 > defaultSuccessUrl
.successForwardUrl("/home/a")
// 登录成功 处理类;优先级 > successForwardUrl > defaultSuccessUrl
.successHandler(new MySuccessHandler())
);
return http.build();
}
}
更多推荐

所有评论(0)