【发布时间】:2021-03-26 13:32:54
【问题描述】:
我正在使用 Spring Boot 和 Spring Security。
我想在我的 userController 中获取当前经过身份验证的用户数据(不仅仅是名称、用户名、密码和权限)
我在不同的链接上发现我可以在我的 requestMapping 方法中使用 Principal。 但是,请问我该如何获取该委托人的数据呢?
如果我在调试模式下运行,我可以在 Principal 变量中看到我需要的所有数据。
@GetMapping("/users")
public ResponseEntity<?> getAllUsers(Principal principal) {
return this.userService.getAllUsers();
}
【问题讨论】:
-
我看到了这篇文章,但我希望可以从 Principale 获取数据,因为我可以在变量调试模式下看到数据,不是吗?
-
您需要将其转换为 userdetails 对象,以便编译器知道它是什么对象以及对象上存在哪些方法。
-
它不适用于 Principale。但它适用于身份验证,但它没有提供比用户名、电子邮件和权限更多的详细信息。我需要其他变量
-
我解决了我的问题并编辑了我的帖子。谢谢
标签: java spring-boot spring-security