我正在開發使用ASP.NET MVC 4的Intranet應用程序。我正在使用自定義表單身份驗證。當用戶訪問應用程序時,我想獲取用戶的Windows登錄用戶名並在我的數據庫中檢查該用戶名。但我不知道如何使用該用戶名。我試圖把它用下面的代碼:如何獲取當前Windows登錄用戶的用戶名?
string CurLoggedInUsername = Environment.UserName;
這讓我的用戶名,當我從Visual Studio中運行,但是當我主持我的應用程序在IIS它給出了一個奇怪的值。我也試過用
string CurLoggedInUsername = httpcontext.current.user.identity.name;
但沒用。有沒有辦法在驗證之前獲取用戶的Windows登錄用戶名?
[在ASP.NET MVC3 Intranet應用程序中獲取已登錄用戶名]的可能重複(http://stackoverflow.com/questions/6786380/getting-the-logged-in-username-in-asp-net-mvc3 -intranet-application) –
爲什麼不使用windows auth? – Luthervd
我已經嘗試使用Windows身份驗證,但它顯示提示詢問我不想要的用戶名和密碼。我想要當用戶訪問我的登錄頁面時,我得到他的Windows帳戶用戶名,並檢查它對我的數據庫。如果它存在並且對於自動登錄標記爲真,則重定向到儀表板,否則如果用於自動登錄的假標誌然後顯示具有用戶名填充的登錄頁面並且允許用戶輸入密碼。 – CodeWarrior