Share via


從 Web 應用程式存取 SQL Server

更新:2007 年 11 月

當 Web 應用程式涉及資料庫存取時,必須提供認證給 SQL Server (也就是說,必須登入 SQL Server),就像是其他使用者或處理序一樣。在 Web 應用程式中,這樣可能會造成複雜的情況。例如,如果 Web 應用程式是以匿名方式執行,可能就沒有認證可以傳送到 SQL Server。

有幾種方法可為應用程式設計 SQL Server 存取。您選擇的策略取決於電腦設定的方式,以及是否在內部網路上。最簡單的選項為:

  • 使用 Windows 整合安全性。這個選項會將使用者的認證傳遞到 SQL Server。由於委派問題,它通常只有在 SQL Server 與 IIS 位於同一台電腦上時才預設為運作。

  • 將 ASP.NET 應用程式的識別 (Identity) 對應至 Windows 網域使用者,再以使用者的身分登入資料庫。這個選項適用於 SQL Server 和 Web 伺服器在不同電腦上時的匿名存取。

  • 以 ASP.NET 應用程式的本機識別存取 SQL Server (例如,Windows 2000 伺服器上的本機 ASPNET 帳戶,或 Windows Server 2003 上的本機 NETWORK SERVICE 帳戶)。此選項適合匿名存取。

  • 在連接字串中傳遞明確的使用者名稱和密碼。這個選項與其他選項相比較不安全,因此您應始終使用受保護的組態,以保護連接字串 (Connection String)。您可以傳遞預先決定的使用者名稱和密碼。

本章節內容

詞彙

定義

HOW TO:使用 Windows 整合式安全性存取 SQL Server

提供如何使用 Windows 整合式安全性進行資料庫存取的範例。

HOW TO:以對應的 Windows 網域使用者身分存取 SQL Server

提供如何使用對應的 Windows 網域使用者進行資料庫存取的範例。

HOW TO:以本機使用者的身分存取 SQL Server

提供如何使用本機使用者帳戶進行資料庫存取的範例。

HOW TO:使用預先決定的認證存取 SQL Server

提供如何使用預先決定的登入資訊進行資料庫存取的範例。

請參閱

概念

安全資料存取 (ADO.NET)

Web 應用程式安全性威脅概觀

Web 應用程式的基本安全性實行方式

其他資源

保護 ASP.NET 網站