1
A
回答
0
它一直以來我正在處理Spring Security的最後時間相當長一段時間,但我設法從一箇舊的項目找到這個:
public static Object getPrincipal()
{
Authentication auth = SecurityContextHolder.getContext().getAuthentication();
return auth == null ? null : auth.getPrincipal();
}
我可能是錯的,但我認爲「委託人」這返回的是UserDetailsService實現在用戶登錄時返回的對象(可能是UserDetails實現)。所以你可以通過這個方法獲取用戶信息,然後將它傳遞給jsp頁面進行渲染。希望這可以幫助。
編輯:看了一下Spring Security的文檔,似乎有可供JSP的一個taglib,所以你可以使用Spring Security直接得到的信息:
這個標籤允許訪問當前的認證對象存儲在 的安全上下文中。它直接在JSP中呈現對象的屬性 。因此,例如,如果 身份驗證的主要屬性是Spring Security的UserDetails對象的實例,則 然後使用
<sec:authentication property="principal.username" />
將 呈現當前用戶的名稱。
1
我使用Maven,所以我不得不標籤庫庫將它添加到pom.xml中
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>3.1.3.RELEASE</version>
</dependency>
然後在我的jsp補充說:
<%@ taglib prefix="sec" uri="http://www.springframework.org/security/tags" %>
和:
<sec:authentication property="principal" />
相關問題
- 1. 關於用戶名和子域認證
- 2. 組表並顯示等領域
- 3. Slack - 顯示用戶的全名而不是用戶名
- 4. 用戶安全認證symfony2
- 5. 安全用戶認證
- 6. 應用|受限Google帳戶認證|列出的谷歌帳戶並非全部|
- 7. 點客戶端領域我的域名
- 8. 顯示窗口帳戶用戶在報告中的全名
- 9. WebMatrix顯示認證用戶信息
- 10. Wicket認證角色:從JSP注入外部用戶憑證
- 11. 顯示用戶全名而不是用戶名
- 12. 在頁面頂部顯示用戶名
- 13. 通過LDAP驗證weblogic安全領域用戶失敗
- 14. 非域用戶的Active Directory認證
- 15. 顯示用戶名從SQL Server身份驗證的用戶後
- 16. 在搜索中顯示用戶頭像或默認頭像
- 17. tomcat安全領域是否有tomcat匿名角色或用戶?
- 18. 顯示用戶名和用戶名$ _SESSION
- 19. Php顯示用戶名/用戶名
- 20. ASP.NET MVC顯示用戶全名
- 21. 顯示Mongoid局部領域
- 22. 在jsp頁面中顯示用戶的名字
- 23. 無論身份驗證領域如何獲取用戶名
- 24. 顯示的用戶名
- 25. 數據表ajax認證數據顯示用戶名
- 26. 用戶名在域
- 27. 顯示認證應用程序的朋友的用戶
- 28. 如何在PHP表單中顯示「用戶名」而不是「域\用戶名」?
- 29. 如何更改認證的用戶名?
- 30. 獲得認證的Windows用戶名