学习目标:
SpringSecurity学习
学习内容:
SpringSecurity 认证
Authentication 保存认证信息
AuthenticationManager 负责认证
|
|
|
主要实现类 ProviderManager 并管理多个
AuthenticationProvider 内有supports 方法负责判断当前的 AuthenticationProvider是否支持对应的Authentication
SpringSecurity 授权
AccessDecisionManager 管理多个 AccessDecisionVoter
登录数据保存
保存在SecurityContextHolder 使用完清空 并保存在session中
此SecurityContextHolder只保留在当前线程中,子线程中不保存
如需使用则需配置
在这里插入package com.example.springsecuritytest.demos.config;
import org.springframework.scheduling.annotation.AsyncConfigurerSupport;
import org.springframework.security.concurrent.DelegatingSecurityContextExecutorService;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
public class ApplicationConfiguration extends AsyncConfigurerSupport {
@Override
public Executor getAsyncExecutor(){
return new DelegatingSecurityContextExecutorService(Executors.newFixedThreadPool(5));
}
}