我有一個調用SQL Server的ASP.NET WebAPI(目前是2008,但將盡快遷移新內容)。認證是Windows認證。我給了執行WebAPI訪問數據庫權限的IIS Apppool。無法使用IIS APPPOOL連接到SQL Server用戶
當我使用下面的連接字符串,一切正常:
Server=localhost; Database=LPG; Integrated Security=SSPI;
對於生產系統的的WebAPI和數據庫服務器可能是在不同的機器,所以我想使用的服務器的名稱,而不是的本地主機。
Server=my.server.com; Database=LPG; Integrated Security=SSPI;
使用此連接字符串,我得到以下錯誤。
登錄失敗。登錄來自不受信任的域,不能與Windows身份驗證一起使用。
這可能是因爲IIS APPPOOL - 用戶是本地帳戶,當調用my.server.com
時,它不能使用本地帳戶。
有誰知道如何解決這個問題?
由於提前,
弗蘭克
在生產計算機上授予訪問SQL服務器以識別用於配置應用程序池的身份。但既然你說了它的本地帳戶,它可能無法在SQL服務器上識別。所以你需要用域用戶(網絡)用最小的必需特權替換它。 –
嘿Pankaj,謝謝你的提示!我剛剛創建了一個域用戶並使用它來運行應用程序池(Identity> User defined)。我將此用戶添加到包含WebAPI的文件夾,但服務器請求失敗。當我想用該域用戶運行應用程序池時,是否需要更改其他內容? – Aaginor
您的意思是請求Web服務器駐留web apis或SQL服務器失敗?你有沒有在SQL服務器上訪問這個身份? –