Asp.net

為什麼 HttpContext.Current.User.Identity.Name 返回空白

  • February 27, 2017

我創建了一個網站。這是一個內部站點。這是一個 .NET 4.0 站點。我想使用瀏覽網站的人的 HttpContext.Current.User.Identity.Name 來獲取使用者名。沒有登錄頁面,因為它是內部的。我不確定我錯過了什麼。我的 webconfig 中是否需要以下內容:

<authentication mode="Windows"></authentication>
<identity impersonate="true"/>
<authorization>
 <allow users="?"/>
</authorization>

還有這個:

 <system.webServer>
 <validation validateIntegratedModeConfiguration="false" />

未經身份驗證時顯示為空白。您還可以通過執行以下操作來驗證這一點:

HttpContext.Current.User.Identity.IsAuthenticated

檢查您在 IIS 中的身份驗證級別,是否也設置為啟用 Windows 身份驗證?

在我的情況下,從幫助中刪除<remove name="FormsAuthentication" />行。web.config

我也有<authentication mode="Forms" /><system.web>

引用自:https://stackoverflow.com/questions/7839567