在 Active Server Pages 中連線至 SQL Server 的驗證方法

文章翻譯 文章翻譯
文章編號: 247931 - 檢視此文章適用的產品。
本文曾發行於 CHT247931
全部展開 | 全部摺疊

結論

SQL Server 驗證 (標準安全性) 與 Windows NT 驗證 (整合安全性) 都是 SQL Server 用來從 Active Server Pages (ASP) 存取 SQL Server 資料庫的驗證方法。

注意 本文件不適用於 Microsoft Windows 2000 Active Directory 網域。本文件中所討論的 Microsoft Windows NT 驗證模式僅適用於 Windows NT 網域。

其他相關資訊

SQL Server 驗證

SQL Server 驗證是依賴 SQL Server 電腦所維護的內部使用者清單。該清單並不包含 Windows NT 使用者,是專門用於 SQL Server 電腦的清單。其中的使用者是利用 SQL Server Enterprise Manager 所建立並加以設定。如果要使用這種驗證方法,請執行下列步驟:
  • 如果透過「開放式資料庫連接」(Open Database Connectivity,ODBC) 進行連線,則要設定資料來源時,請在「ODBC 管理員」中選擇「SQL Server 的帳戶驗證」。
  • 如果使用的是 ODBC,則在 ActiveX Data Objects (ADO) 連線字串中加入 UID 和 PWD 參數;如果使用的是 SQLOLEDB 提供者,則加入 User ID 和 Password 參數。

Windows NT 驗證

您可以在執行 SQL Server 的電腦上,透過 Windows NT 帳戶來存取該電腦的資料。如果要啟用 Windows NT 驗證,使用 Internet Information Server (IIS) 電腦時,請務必啟用 Web 應用程式的「基本驗證」。如果要執行此項作業,請依照下列步驟執行:
  1. 啟動「Internet 服務管理員」。
  2. 瀏覽至網站,用滑鼠右鍵按一下網站,然後按一下 [內容]
  3. 按一下 [目錄安全設定] 索引標籤,按一下 [匿名存取及驗證控制] 下的 [編輯],然後選取 [基本驗證] (密碼以純文字格式傳送) 選項。
如果要設定 IIS 做為 Windows NT 驗證,您不能使用 Windows NT Challenge\Response (NTLM) 的驗證方法。您必須使用下列兩種 IIS 驗證方法的其中一種:
  • 僅啟用 Web 應用程式的基本驗證。
  • 如果允許使用者匿名存取,請檢查下列項目:
    • 如果在 IIS 中是設定為「匿名」使用者,則在執行 SQL Server 的電腦上也必須要在 Windows NT 帳戶中做設定。
    • 如果 SQL Server 和 IIS 不在同一台電腦,請幫使用者建立網域帳戶,讓使用者可以存取這兩台電腦,或幫使用者在 SQL Server 電腦與 IIS 電腦上建立密碼相同的本機帳戶。如果您幫使用者在這兩台電腦上建立本機帳戶,就必須要賦予使用者在 SQL Server 電腦上的「本機登入」權限。如果是幫使用者建立網域帳戶,就必須要賦予使用者在 SQL Server 電腦上的「從網路存取這台電腦」的權限。
    • 如果 SQL Server 和 IIS 不在同一台電腦中,請啟動「Internet 服務管理員」(在 Web 應用程式的目錄安全設定內容頁上),開啟 [匿名使用者帳戶] 對話方塊,取消 [啟用自動密碼同步] 選項,然後手動輸入帳戶密碼。
    • IIS 電腦需要使用者的密碼,才能產生一個在另一台伺服器仍具有效力的安全性權杖。如果有啟用 [啟用自動密碼同步] 選項,只能產生本機電腦用的權杖。
    • 如果 IIS 和 SQL Server 在同一台電腦中,則在連線字串和 ODBC 設定資料來源 (如果有的話) 中的 SQL Server 資料來源名稱是本機名稱。
此外,請執行下列步驟,然後在 ASP 中使用 Windows NT 帳戶驗證連線至 SQL Server 電腦:
  1. 如果透過 ODBC 進行連線,則要設定資料來源時,請在「ODBC 管理員」中選擇「Windows NT 的帳戶驗證」。
  2. 在 ActiveX Data Objects (ADO) 連線字串中,如果使用的是 ODBC,則省略 UID 和 PWD 參數;如果使用的是 SQLOLEDB 提供者,則省略 User ID 和 Password 參數。
  3. 如果使用 SQL Server 的 OLEDB 提供者 (提供者=SQLOLEDB) 進行連線,則連線字串必須加入 Integrated Security=SSPI。
  4. 在 SQL Server Enterprise Manager 中,將所有需要透過整合安全性存取的 Windows NT 帳戶和群組新增至登入,然後再定義成使用 Windows NT 的帳戶驗證。如果要簡化管理流程,Microsoft 建議您新增 Windows NT 群組而非個別帳戶。定義帳戶時,請設定所有必要資料庫、表格和預存程序的使用權限。
下列錯誤訊息指出 Windows NT 帳戶驗證的 SQL Server 設定問題:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E4D)
[Microsoft][ODBC SQL Server Driver][SQL Server]使用者 '\' 登入失敗。

Microsoft OLE DB Provider for ODBC 驅動程式錯誤 '80040e4d'
[Microsoft][ODBC SQL Server Driver][SQL Server]使用者 'NT AUTHORITY\ANONYMOUS LOGON' 登入失敗。

?考

如需詳細資訊,請參閱下列書籍:
John Connell Coding Techniques for Microsoft Visual Basic .NET Microsoft Press, 2001
注意 此書目前已經絕版。
如需詳細資訊,請參閱下列 Microsoft Training & Certification 課程:
Microsoft Corporation 2389 Programming with ADO.NET
Microsoft Corporation 2088 Designing a Highly Available Web Infrastructure
Microsoft Corporation 2073 Programming a Microsoft SQL Server 2000 Database
如需有關 Windows 2000 驗證方法的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
287537 Using Basic Authentication to Generate Kerberos Tokens

屬性

文章編號: 247931 - 上次校閱: 2011年5月17日 - 版次: 8.0
這篇文章中的資訊適用於:
  • Microsoft SQL Server 6.5 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
  • Microsoft Active Server Pages 4.0
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft Data Access Components 2.6
  • Microsoft Data Access Components 2.7
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Workgroup Edition
關鍵字:?
kbsqldeveloper kbinfo KB247931
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com