如何获取JSP的主要信息?

How to get principal info in JSP?

我正在做一个项目,需要在 JSP 中获取用户详细信息。经过一些研究,我知道 ${pageContext.request.userPrincipal.name} 可以用来获取校长的名字。但是,如果我需要其他信息、示例 ID(通过 Google Auth 登录时从 Google 收到)或密码等,该怎么办?有一种简单的方法吗?我正在使用 Spring 安全标签库。

是的,在您使用 spring security taglib 时,有一种非常简单的方法可以做到这一点。以这种方式使用身份验证标签:

<sec:authentication property="name" />

使用这种方式将 return Authorization 对象的名称 属性,通常与主体名称相同。但是您可以访问任何其他 属性,甚至是嵌套对象中的属性:

<sec:authentication property="authorities" /> 将 return 授权对象的授权列表

<sec:authentication property="details.sessionId" /> 这是一个 属性 我有时在 Authentication 对象的 details 字段内的嵌套对象中使用。