SpringSecurity获取当前用户的详细信息

案例:还是官网中间表的修改,修改者是谁呢?肯定是当前用户,那么我们需要拿到当前用户的详细信息

  • 通过SecurityContextHolder当前上下文获取授权用户信息–学习参考自朝雨忆清晨(JWT)
    这里通过Spring Security Oauth2+JWT和他的Spring Security + JWT其实差不多,只是多了一个授权服务器。

解析JWT之后,将解析出的信息存储在Spring Security Context上下文中,这样需要认证的接口,只需要对比接口的@PreAuthorizate是否相同就可以。

 @PostMapping("/update/list")
    public HttpResult update(@RequestBody List<SysRole> sysRoles, @RequestParam(value = "菜单编号",required = false) List<Long> menus,
                             Principal principal){
        try{
        	//1.
             System.out.println("prin:"+principal.getName());
            //2.
        	Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
            System.out.println("auth:"+authentication.getName());
            //System.out.println("private-prin:"+principal.getName());
            for(SysRole sysRole: sysRoles){


发布了70 篇原创文章 · 获赞 29 · 访问量 6176

猜你喜欢

转载自blog.csdn.net/weixin_43404791/article/details/104729611
今日推荐