SQL Server 中明確錯置的 SPN 問題

本文可協助您解決 SQL Server 一致的驗證問題,而此問題會影響明確錯置的服務主體名稱 (SPN) 。

徵狀

如果您在連接字串中指定的SPN存在於 Microsoft SQL Server 未使用的服務帳戶上,您會收到安全性支援提供者介面 (SSPI) 內容錯誤訊息。

如果 SPN 未正確註冊,您可能會收到下列錯誤訊息:

目標主體名稱不正確。 無法產生 SSPI 內容

如果您嘗試建立已存在的 SPN,您會收到下列錯誤訊息:

找到重複的SPN,中止作業!

原因

明確錯位的SPN可能會在 Kerberos 驗證中造成問題,並防止客戶端連線到服務。

解決方案

如果您遇到明確錯位的SPN,您可能必須建立或重新建立服務的SPN。 若要使用 SETSPN 命令建立或重新建立SPN,請遵循下列步驟:

  1. SETSPN -L domain\svcacct執行 命令以列出 SQL Server 服務帳戶上的 SPN。
  2. SETSPN -Q spnName執行 命令以瞭解SPN註冊所在的服務帳戶。
  3. SETSPN -D執行 命令以從服務移除 SPN。
  4. SETSPN -A執行 命令以將SPN新增至服務。
  5. 使用 SETSPN -D移動SPN,或選取已存在於正確帳戶中的SPN。

其他相關資訊

SQL Server 中的一致性驗證問題