2008-11-14 65 views
0

我最近有我的電腦升級到Vista,這意味着它包括IIS7。問題是我們正在處理的ASP.NET網站不再工作。我得到一個錯誤,因爲應用程序試圖用NT AUTHORITY/ANONYMOUS LOGON而不是我的域用戶連接到SQL Server,並且匿名未被授權。我已經嘗試了幾件事情,但還沒有解決方案: - 安裝並啓用'IIS元數據庫和IIS 6配置兼容' - 爲此網站啓用Windows身份驗證 - 創建了一個不同的應用程序池,管理流水線模式設置爲經典 - 啓用IIS6 WMI兼容性和IIS6管理控制檯(這裏越來越絕望)自從切換到IIS7後連接到SQL與匿名登錄

在我們的web.config中有和我們的machine.config中。我試着把模擬假設爲false,然後在machine.config中輸入我的域用戶名和密碼(它曾經是這樣的),但這也沒有幫助。

我有什麼遺失?有其他人有類似的問題嗎?

回答

1

我相信我已經找到了解決方案。至少現在工作。這是我做過什麼:

  • 現在的網站是與設置爲經典託管管道模式一個單獨的應用程序池中運行,加載用戶配置文件設置爲False,標識設置爲自定義和使用域用戶(和密碼),其有權訪問數據庫。
  • 在網站本身的「授權」下,我將匿名設置爲啓用,並將ASP.NET模擬設置爲禁用。
  • 在網站的web.config中也設置好了。

信貸,這是由於,this site幫助了我。

1

您的應用程序如何使用SQL Server進行身份驗證?它使用SQL還是Windows驗證?我希望你正在嘗試使用Windows身份驗證。在這種情況下,您的IIS輔助進程應該在該Windows用戶帳戶下運行。如果不是,它至少應該模擬一個Windows用戶帳戶,該用戶帳戶對SQL Server具有必要的訪問權限。如果啓用了模擬,並且您正在使用正確的Windows用戶帳戶,並且SQL Server使用Windows身份驗證進行身份驗證,並且您仍然無法訪問SQL Server,則可能會遇到經典雙跳問題。換句話說,您嘗試向IIS進行一次身份驗證,並且您正在使用相同的crdentials通過網絡向下一個網絡(這是您的第二跳)進行身份驗證,並且Windows出於安全原因不允許這樣做。

+1

and there for ms在pc的廣告屬性中爲ms創建了「可信委託」複選框 – 2008-11-15 12:18:38

0

我很抱歉地說,我無法進一步調查這個問題。事實上,它可能是我們連接到SQL Server(Win Auth)的方式,因爲我們現在已經改變了它。現在我們用連接字符串中的用戶名和密碼進行連接並解決問題。 所以我不能說你是否提供了答案,msvcyc,但我對你的解決方案進行了投票。感謝您的時間和麻煩。