在我的網站中,我使用「windows驗證模式」訪問我的sqlserver數據庫。 當我使用visual studio運行我的網站時,一切正常。 但是當我在IIS上託管我的網站時,每次出現錯誤消息「數據庫登錄失敗」。Asp.net - 當我在IIS上運行我的網站時,數據庫登錄失敗
用戶登錄失敗「HAL \ IUSR_HAL」。(HAL是我的web服務器的名稱)
我應該做的數據庫屬性一些修改,使我可以通過IIS登錄到數據庫?
在我的網站中,我使用「windows驗證模式」訪問我的sqlserver數據庫。 當我使用visual studio運行我的網站時,一切正常。 但是當我在IIS上託管我的網站時,每次出現錯誤消息「數據庫登錄失敗」。Asp.net - 當我在IIS上運行我的網站時,數據庫登錄失敗
用戶登錄失敗「HAL \ IUSR_HAL」。(HAL是我的web服務器的名稱)
我應該做的數據庫屬性一些修改,使我可以通過IIS登錄到數據庫?
經過一番研究,我得到這個問題的答案。
要通過在IIS上運行的網站訪問數據庫,IIS的IUSR帳戶和ASPNET帳戶應經過身份驗證並授權給sqlserver。
(ASPNET帳戶是IIS處理asp.net頁面相關聯的dotnet框架的帳戶)。
做到這一點:
開放sqlserver的管理工作室。 去安全。 然後右鍵單擊登錄並選擇「新登錄」。 按登錄名稱上的「搜索」。 然後點擊「高級」按鈕。 然後按「立即查找」按鈕。 然後從列表中選擇上面提到的兩個帳戶(一次一個) 然後按確定。 選擇登錄名後轉到它的「用戶映射」選項。 然後從那裏選擇數據庫並檢查所需的權限。
現在你完成了一切。按OK。
你可以從你的網站訪問數據庫。
如果您在IIS中使用匿名訪問,則需要爲連接字符串中的有效sql用戶提供用戶標識和密碼。
也可以配置IIS使用的用戶帳戶。如果您不想在連接字符串中輸入用戶名/密碼,請確保該帳戶可以訪問數據庫。 – 2010-02-24 19:34:17
@Frank:怎麼做請解釋.. 我沒有太多的IIS經驗。 – Akshay 2010-02-24 19:38:08
以下是有關IIS使用匿名訪問帳戶的信息:http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/9ded7af2-fcb7-4ed2-b007-e19f971f6e13.mspx?mfr=true – 2010-02-24 20:43:20
您是否使用匿名身份驗證運行您的網站? – bristows 2010-02-24 19:26:15
@simon:yes .... – Akshay 2010-02-24 19:30:35