我目前正在使用 ASP.NET MVC 和 Identity Server 4 創建一個應用程式。這個應用程式是一個更大專案的一部分,應該充當一堆不同應用程式的 SSO 提供程式(我們稱之為子應用程式)。
Identity Server 和 MVC 客戶端沒有單獨的專案,它們都在同一個應用程式中,但此應用程式的唯一目的是管理用戶(注冊、登錄)并將有關用戶的資訊(已通過身份驗證、ID、用戶名)發送到子應用程式.
注冊用戶作業正常,但我不確定登錄我看到我的瀏覽器中正在創建 cookie,但我希望頁面標題根據用戶是否登錄而改變,但我無法真正掌握如何實際操作的概念檢查用戶是否已登錄。我了解 oidc 客戶端以及他們如何設法檢查它,但正如我所說的,在我的情況下沒有單獨的客戶端,有沒有辦法從 cookie 或一些獲取此資訊以及 ID 和用戶名身份服務器端點?
uj5u.com熱心網友回復:
要獲取有關當前用戶的所有資訊,請HttpContext.User像其他客戶端一樣使用。
EG:HttpContext.User.Identity.Name用于用戶名。
但HttpContext.User如果用戶未登錄或會話過期,則為 null。因此,為了確保只有登錄用戶訪問后端功能,只需將Authorize過濾器放置到操作/控制器。
您可以查看IdentityServer4 Github以獲取更多示例。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/392676.html
標籤:C# 。网 asp.net-mvc 身份服务器4
