【问题标题】:How to Get username from SessionRegistry, it always returns ADMIN user如何从 SessionRegistry 获取用户名,它总是返回 ADMIN 用户
【发布时间】:2019-02-13 20:44:48
【问题描述】:

我正在使用 Spring Security,我想创建一个页面来显示所有当前登录的用户。

为了实现这一点,我有这个代码。

@RequestMapping(value="/users" , method=RequestMethod.GET)
public String users(Model model)
{
    List<Object> loggedUsers = sessionRegistry.getAllPrincipals();
    for (Object principal : loggedUsers) {
        final User loggedUser = (User) principal;
        model.addAttribute("loggedInUser", loggedUser); 
    }

    List<Benutzer> users = userRepository.findAll();

    if(users !=null)
    {
        model.addAttribute("benutzern",users);
    }
    return "users";
}

但是,我总是只得到 ADMIN 用户。

在 最终用户登录用户 =(用户)主体; 我总是得到我的 ADMIN 用户以及我的其他用户。所以这很完美。

我认为我的问题出在网页上,但我不知道具体在哪里。

以下用户当前登录:

<table class="table table-striped">
<thead>
<tr>
<th>Benutzername</th>
<th>Anzeigename</th>
<th>Dienstnummer</th>
</tr>
</thead>
<dl th:each="user : ${loggedInUser}">
<tr>
<td th:text="${user.username}">benutzername</td>
</tr>
</table>

也许有人可以为我指明正确的方向。

提前致谢。

【问题讨论】:

    标签: spring spring-boot spring-security


    【解决方案1】:

    好吧,在提出问题后,我立即找到了解决方案。 我不得不更改以下行。我不知道我是如何监督这一点的。

    model.addAttribute("loggedInUser", loggedUsers);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-20
      • 1970-01-01
      • 1970-01-01
      • 2017-12-19
      • 1970-01-01
      • 1970-01-01
      • 2023-04-11
      • 2021-05-07
      相关资源
      最近更新 更多