2010-09-07 151 views
1

我們一直在使用IIS7在本地Intranet上運行ASP應用程序,現在需要獲取客戶端計算機名稱和登錄用戶名,以便我們可以根據他的主頁顯示其主頁設置。我在互聯網上搜索,但沒有找到任何解決方案。我也試過使用LOGON_USER服務器變量,但是當我使用本地主機運行時,它工作正常,但在使用IP地址(返回空白值)時沒有。我也啓用了窗口身份驗證和禁用匿名,但我提示輸入用戶名和密碼,即使我沒有設置用戶名和密碼。在本地Intranet站點獲取客戶端計算機和用戶名

回答

0

您將無法直接確定計算機名稱。您需要在客戶端的IP上執行反向DNS查找。從ASP101中檢查下面的鏈接,以完成ASP經典中的這一點。

就用戶名而言,您需要在IIS中啓用身份驗證,否則所有傳入請求都將是匿名的。如果您在可信環境中運行,請爲IIS設置「集成Windows身份驗證」。這將允許客戶的當前用戶信息用於在沒有用戶名/密碼提示的情況下對您的網站進行身份驗證。請注意,集成身份驗證不是默認IIS7安裝的一部分。

祝你好運。

基於ASP的反向DNS查找
http://www.asp101.com/articles/jason/reversedns/default.asp

集成Windows身份驗證在IIS6和IIS7
http://blogs.iis.net/nitashav/archive/2010/03/12/iis6-0-ui-vs-iis7-x-ui-series-integrated-windows-authentication.aspx

0

您還可以通過使用WMI,但在遠程計算機實現這一目標,並已登錄的用戶必須是一部分您擁有管理憑據的域。您還需要使用反向DNS來查找計算機名稱,@ jking89對以上提供了很好的參考。看看WMI Win32_ComputerSystem類,這裏是http://msdn.microsoft.com/en-us/library/aa394102(VS.85).aspx。希望這有助於作爲替代解決方案。

+0

這裏是遠程使用WMI Win32_ComputerSystem類的另一個參考http://msdn.microsoft.com/en-us/library/aa384713(VS.85).aspx。我無法發佈多個超鏈接,因爲我還沒有獲得足夠的信譽點數=) – 2010-09-08 20:14:58

相關問題