首页 > 解决方案 > 如何在 spring-boot 应用程序中登录用户详细信息?

问题描述

如何在配置了 Oauth2 的 spring-boot 应用程序中访问登录的用户详细信息。

我尝试使用以下方法,但它返回 null。

public Authentication getLoggedInUserDetails() {

        Authentication auth = SecurityContextHolder.getContext().getAuthentication();


        System.out.println(SecurityContextHolder.getContext());

        return auth;

    }

在此处输入图像描述

标签: spring-bootspring-securityoauth-2.0spring-security-oauth2

解决方案


如果用户已登录,则:

UserDetails userDetails = (UserDetails)auth.getPrincipal();
userDetails.getUsername();
userDetails.getAuthorities();
userDetails.getPassword();

推荐阅读