簡體   English   中英

為IIS APPPOOL創建SQL Server登錄 - 在不同的計算機上創建IIS和SQL Server

[英]Create SQL Server Login for IIS APPPOOL - IIS and SQL Server on different machines

如果我錯過了一個明顯的答案,我會提前徹底搜索道歉。 遵循以下鏈接中的建議,解決方案無效。 該解決方案也不表示它是否適用於在不同計算機上運行IIS和SQL Server的生產Web服務器。 將IIS 7 AppPool標識添加為SQL Server登錄

下面的Microsoft鏈接未提供用於創建SQL Server Windows登錄的特定語法: http//www.iis.net/learn/manage/configuring-security/application-pool-identities

我們的目標是在生產環境中運行IIS 7.5的Server 2008 R2計算機上公開部署ASP.NET 4.0 Web應用程序。 根據最佳實踐,我們在同一域中的單獨計算機上運行SQL Server 2008。 我們希望在沒有模擬的情況下使用SQL Sever Windows身份驗證,以允許IIS框和SQL Server上的ASP.NET應用程序進行通信。 目前,SQL Server登錄連接字符串允許.NET應用程序連接到SQL Server,但我們希望將連接字符串升級為Windows SQL Server登錄以更安全。

在IIS 7.5上,我們為網站配置了一個應用程序池。 在“應用程序池高級”設置下,“內置帳戶”已嘗試同時使用ApplicationPoolIdentity和網絡服務。 據說最佳做法是使用ApplicationPoolIdentity來實現更嚴格的安全性。

失敗的步驟是創建SQL Server Windows登錄。

我們按照第一個鏈接執行了以下步驟:

  1. 在SQL Server Management Studio中,查找Security文件夾(與數據庫,服務器對象等文件夾處於同一級別的安全性文件夾...而不是每個單獨數據庫中的安全性文件夾)

  2. 右鍵單擊登錄並選擇“新登錄”

  3. 在“登錄名”字段中,鍵入IIS APPPOOL\\YourAppPoolName - 不要單擊“搜索”

  4. 填寫您喜歡的任何其他值(即身份驗證類型,默認數據庫等)

  5. 單擊確定

你能告訴我IIS 7.5和SQL Server在不同的盒子上,我需要用什么語法來創建SQL Server窗口登錄?

我試過:“ mydomain\\machine1$\\IIS APPPOOL\\MyAppPoolName ”多次沒有成功。
錯誤消息是:“ Windows NT User or group IIS APPPOOL\\MyAppPoolName can not be found

我使用了網絡服務器的網絡名稱來代替machine1(以及實際的應用程序池名稱和域名)。

在此先感謝您的幫助。

PS如果微軟提供了一個關於如何完成這個常見以及應該是簡單任務的分步教程,那將是很好的。 你在StackOverFlow上的答案將幫助很多人:)

您的問題的一個解決方案是為應用程序池設置一個單獨的(非內置)帳戶。 您可以為該帳戶授予最小權限,並授予對SQL Server的訪問權限。

這樣您就可以使用易於設置但仍能嚴格控制安全性的域帳戶。

我知道這個問題已經過時了,但是直到我開始工作,我才願意分享我的經驗來回答這個問題。

您遵循的步驟與我合作,除了:

3-需要添加到sql server登錄的帳戶是mydomain\\machine1$ not mydomain\\machine1$\\IIS APPPOOL\\MyAppPoolName

4-將常規設置頁面中的所有內容保留為默認值(實際上,您需要確保使用Windows身份驗證)。

然后轉到User Mappings | 選擇您希望應用程序訪問的數據庫 授予它你想要的任何權限。 例如,給它db_datareader和db_datawriter權限。

5-單擊“確定”保存。

但是要知道使用來自同一台機器的虛擬帳戶的所有應用程序都能夠訪問該數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM