专栏名称: 码农小胖哥
技术公众号:码农小胖哥
目录
相关文章推荐
福州新闻网  ·  刚刚,杨国福麻辣烫发声明! ·  17 小时前  
杭州网  ·  杨国福麻辣烫,道歉! ·  18 小时前  
中国食品药品监管杂志  ·  科普 | “零添加”是智商税吗?酱油该如何选? ·  昨天  
中国药闻  ·  政策加速落地显效 激发民营经济新活力 ·  2 天前  
质安选  ·  原来AIB审核神器是它! ·  2 天前  
51好读  ›  专栏  ›  码农小胖哥

Spring Security 实战干货:SecurityContext相关的知识

码农小胖哥  · 掘金  ·  · 2019-11-24 15:23

正文

阅读 39

Spring Security 实战干货:SecurityContext相关的知识

1. 前言

欢迎阅读 Spring Security 实战干货 系列文章 。在前两篇我们讲解了 基于配置 基于注解 来配置访问控制。今天我们来讲一下如何在接口访问中检索当前认证用户信息。 我们先讲一下具体的场景。通常我们在认证后访问需要认证的资源时需要获取当前认证用户的信息。比如 “查询我的个人信息”。如果你直接在接口访问时显式的传入你的 UserID 肯定是不合适的。因为你认证通过后访问资源,系统是知道你是谁的。而且显式的暴露用户的检索接口也不安全。所以我们需要一个业务中可以检索当前认证用户的工具。 接下来我们来看看 Spring Security 是如何解决这个痛点的。

2. 安全上下文 SecurityContext

不知道你有没有留意 Spring Security 实战干货:使用 JWT 认证访问接口 中是如何实现 JWT 认证拦截器 JwtAuthenticationFilter 。当服务端对 JWT Token 认证通过后,会将认证用户的信息封装到 UsernamePasswordAuthenticationToken 中 并使用工具类放入安全上下文 SecurityContext 中,当服务端响应用户后又使用同一个工具类将 UsernamePasswordAuthenticationToken SecurityContext clear 掉。 我们来简单了解 SecurityContext 具体是个什么东西。

 package org.springframework.security.core.context;
 
 import java.io.Serializable;
 import org.springframework.security.core.Authentication;
 
 public interface SecurityContext extends






请到「今天看啥」查看全文


推荐文章
福州新闻网  ·  刚刚,杨国福麻辣烫发声明!
17 小时前
杭州网  ·  杨国福麻辣烫,道歉!
18 小时前
中国食品药品监管杂志  ·  科普 | “零添加”是智商税吗?酱油该如何选?
昨天
质安选  ·  原来AIB审核神器是它!
2 天前
medworld器械世界  ·  Tackle These 4 Concerns for Sterile Packaging
7 年前
德州房产超市  ·  这个母亲节,煽情一点也无妨
7 年前