1、SecurityContextHolder 当前安全上下文对象的简介
SecurityContextHolder 是 Spring Security 中的一个核心组件,它用于存储当前安全下文(Securty Context)的详细信息。这些信息包括当前已认证的用户、用户的授予权限以及其他相关的安全细节。
默认情况下,SecurityContextHolder 将认证详细信息存储在线程局部变量中,确保安全上下文隔离到各个线程。这意味着每个线程都有自己的安全上下文,互不干扰。SecurityContextHolder 支持安全上下文在不同线程间的传播,这对于异步处理至关重要。
在应用程序中,经常需要获取当前登录用户的信息,如用户名、角色等。可以通过 SecurityContextHolder.getContext().getAuthentication() 来获取当前的 Authentication 对象,进而获取用户信息。
【示例】获取 SecurityContextHolder 对象的信息。
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
/**
* 首页
* @author pan_junbiao
*/
@RequestMapping("/")
public void index()
{
// 通过 SecurityContextHolder 安全上下文信息,获取当前的 Authentication 对象
Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
// 打印 Authentication 信息
System.out.println("用户名称:" + authentication.getNa

2014

被折叠的 条评论
为什么被折叠?



