在Spring中,如何获得其凭据不属于当前http请求的当前用户?

apf*_*fel 3 java authentication spring spring-mvc spring-security

getCurrentUser在Spring中是否有一个" "方法来访问当前是请求的一部分的用户 - 即使该用户的名称没有作为Web请求的一部分传递?

Gop*_*opi 10

由于您已使用spring-security标记了您的问题,因此我假设您的问题是在相同的上下文中.使用spring-security,您可以检索当前用户:

Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
UserDetails userDetails = null;
if (principal instanceof UserDetails) {
  userDetails = (UserDetails) principal;
}
String userName = userDetails.getUsername();
Run Code Online (Sandbox Code Playgroud)