[英]Getting username in an mvc application with no authentication and anonymous authentication enabled in IIS
我一直試圖讀取瀏覽我的MVC應用程序的用戶的用戶名。 該應用程序沒有任何身份驗證,並且托管在IIS中,並且禁用了Windows身份驗證並啟用了匿名身份驗證。
現在,我要確保當用戶瀏覽應用程序時,他/他不會看到任何彈出的用戶憑據。 因此,我已禁用Windows身份驗證並啟用了匿名身份驗證。
但是我無法讀取用戶名。 我已經嘗試了以下所有方法:
User.Identity.Name
System.Security.Principal.WindowsIdentity.GetCurrent().Name
System.Environment.UserName
但是由於我的用戶未通過身份驗證,因此無法獲得正確的結果。
我到目前為止所取得的成就是,我能夠借助以下代碼來讀取用戶的計算機名稱:
我正在閱讀以下IP地址:
Request.UserHostName
然后,使用以下命令獲取計算機名稱:
IPAddress myIP = IPAddress.Parse(IP);
IPHostEntry GetIPHost = Dns.GetHostEntry(myIP);
List<string> compName = GetIPHost.HostName.ToString().Split('.').ToList();
return compName.First();
我嘗試搜索答案,並得到以下信息:
https://stackoverflow.com/a/1688220/2429125
但是,即使這不是我的幫助。 有人可以指出我的意思嗎?它不通過身份驗證即可讀取MVC應用程序的用戶名?
謝謝,
蘇迪普·阿羅拉(Sudip Arora)
這樣做是不可能的,因為您當前的設置不會要求任何最終用戶憑據。
您至少必須切換到表單身份驗證或Windows身份驗證。
無需任何身份驗證即可實現
否。為什么瀏覽器會將訪問者的用戶名發送到他們訪問的每個網站?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.