…

我有 2 台 Windows 2008 伺服器。一種是 Web 伺服器 (IIS7)。另一個是資料庫伺服器(SQL Server 2008)。 sql server 2008 的實例配置為使用混合模式驗證。兩者都沒有加入活動目錄域。

Web 伺服器上的 ASP.NET 應用程式應如何登入資料庫伺服器上的資料庫?我已經使用 SA 帳戶進行了測試,但顯然我需要更改它。

我對使用什麼感到困惑:sql server 帳戶、每台電腦上配置的 Windows 帳戶或“應用程式角色”,我對此不太了解。

該帳戶只需要能夠讀取和寫入資料以及執行預存程序。我應該做什麼以及如何設定?

請給我有關如何設定的說明,而不只是快速回答。謝謝。

答案1

更安全的方法使用 Windows 驗證。這將允許您編寫應用程序,而無需在任何連接字串或設定檔中包含密碼。

您將為每個系統建立一個使用者帳戶。這不應該是管理員帳戶,而只是普通使用者帳戶。兩個系統都建立具有相同名稱和密碼的使用者。

現在,在 IIS 系統上編輯應用程式集區設定。將身分變更為以您剛剛建立的使用者帳戶執行。此時您需要輸入使用者的密碼。

在 SQL Server 上建立一個與您建立的 Windows 使用帳戶關聯的登入帳戶。您可以使用普通的 SQL Server 權限來授予/拒絕應用程式所需的操作。

現在,在您的應用程式中使用整合安全性連接到 SQL 伺服器。建立 SQL 連線時將使用應用程式集區使用者。

您的配置或應用程式中沒有密碼,且資料庫連線安全性!

答案2

最常用的方法是 SQL 登入。使用強密碼建立 SQL 登入。將其作為用戶添加到您的應用程式將使用的資料庫中。在資料庫中建立資料庫角色並使您的使用者成為該角色的成員。授予資料庫角色對其需要存取的物件的存取權限。

您只需授予該角色所需的權限。

資料庫角色的原因是,您可以將資料庫還原到另一台伺服器,並能夠輕鬆地向另一用戶授予確切的權限,以便您可以確保一切正常運作。

相關內容