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