端點驗證類型

未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。

端點驗證的過程牽涉到授與權限,以允許使用者連接到伺服器上建立的端點,還牽涉到指定驗證如何執行。

驗證的執行方式是利用 CREATE ENDPOINT 陳述式或 ALTER ENDPOINT 陳述式的 AUTHENTICATION 子句來指定。AUTHENTICATION 子句提供下列選項以指定驗證類型:

  • BASIC

  • DIGEST

  • NTLM

  • KERBEROS

  • INTEGRATED

[!附註]

不支援在端點上採用匿名驗證。若使用者要存取端點,該使用者必須是有效驗證的 Windows 使用者,可以是信任的 Windows 使用者或本機電腦上的成員帳戶。

基本驗證

基本驗證是在 HTTP 1.1 規格中兩個必要驗證機制的其中之一。基本驗證是由包含 base64 編碼的使用者名稱和以分號分隔的密碼的「驗證」標頭所組成。如需詳細資訊,請瀏覽 http://www.ietf.org/rfc/rfc2617.txt

當您指定 BASIC 時請考慮下列項目:

  • PORTS 值無法設定為 CLEAR。

  • 傳送為基本 HTTP 驗證的認證必須對應到有效的 Windows 登入。

基本驗證只能作為最後的手段。因為它使用容易解碼的 base64 編碼,如果指定基本驗證,SQL Server 的執行個體會要求使用「安全通訊端層 (SSL)」通訊埠供 HTTP 連接。可使用基本驗證的情況是,授與端點權限的使用者是伺服器電腦本身的本機使用者。

摘要驗證

摘要是 HTTP 1.1 必要的第二種驗證機制。此驗證是由使用者名稱和密碼所組成。然後經由單向的雜湊演算法 MD5 雜湊而成,傳送到伺服器。伺服器可以存取原始的密碼,或是設定密碼時建立的已儲存 MD5 雜湊。然後伺服器就可以比較儲存計算的值和用戶端提供的值。如此一來,用戶端可以證明它知道密碼,而不需要真的將密碼提供給伺服器。如需詳細資訊,請瀏覽 http://www.ietf.org/rfc/rfc2617.txt

透過 HTTP 傳送為摘要驗證一部份的認證必須對應到有效的 Windows 網域帳戶。不支援在 Windows 基礎的摘要驗證中使用本機使用者帳戶。

[!附註]

為了安全起見,以 Windows 為基礎的摘要驗證只透過 Windows Server 2003 下執行的網域控制站支援 MD5 的加密。

NTLM 驗證

NTLM 是受到 Windows 95、Windows 98 和 Windows NT 4.0 (用戶端和伺服器) 支援的驗證機制。此驗證機制是挑戰-回應式的通訊協定,比基本或摘要提供更更強式的驗證。NTLM 由「安全性支援提供者介面」(SSPI) 實作於 Windows 2000 和更新版本中。如需詳細資訊,請參閱<Microsoft NTLM>(英文)。

Kerberos 驗證

Kerberos 驗證是網際網路的標準驗證機制。在 Windows 2000 和更新版本中,Kerberos 驗證受到 SSPI 的支援。

使用 Kerberos 驗證時,SQL Server 的執行個體必須將「服務主要名稱 (SPN)」關聯到要在其上執行的帳戶。如需詳細資訊,請參閱<使用 Http.sys 註冊 Kerberos 服務主要名稱>。

如需有關 Kerberos 驗證的詳細資訊,請參閱<Microsoft Kerberos>(英文)。

整合式驗證

設定支援整合式驗證的端點可以回應驗證挑戰部份的下列驗證類型:Kerberos 或 NTLM。

在此組態下,伺服器會嘗試以用戶端在要求驗證時所使用的任何一種類型來驗證用戶端。

[!附註]

如果一種整合式驗證類型的驗證過程失敗,伺服器會終止該用戶端的連接。伺服器不會嘗試其他驗證類型。