一尘不染

spring安全。在每一页上显示用户名

jsp

我想在登录后存储用户信息,并在每个页面上显示我的登录名和用户名(使用jsp)。如何在jsp视图中访问将存储已登录用户信息的会话bean?


阅读 193

收藏
2020-06-08

共1个答案

一尘不染

使用认证标签

此标记允许访问存储在安全上下文中的当前身份验证对象。它直接在JSP中呈现对象的属性。因此,例如,如果Authentication的主体属性是Spring
Security的UserDetails对象的实例,则使用将呈现当前用户的名称。

当然,对于这种事情,不必使用JSP标记,并且某些人希望在视图中保持尽可能少的逻辑。您可以在MVC控制器中访问Authentication对象(通过调用SecurityContextHolder.getContext()。getAuthentication()),然后将数据直接添加到模型中以通过视图进行呈现。

2020-06-08