我正在尝试使用Spring安全性创建具有JWT身份验证的API。
因为它是一个API,所以我不需要Spring安全性的所有登录/注销功能。我只需要Spring Security确定当前用户的部分。
所以我的问题是,我在哪里可以为每个请求设置当前用户?
您可以将Principal添加到REST控制器中的方法中。 Principal包含令牌标识的API客户端的所有详细信息。它包括客户端名称,令牌详细信息,如角色,范围等...
import java.security.Principal;
@GetMapping(value = "/hello")
public String whoAmI(Principal principal) {
return principal.getName();
}