Kerberos 搭配服務主體名稱 (SPN)
適用於:Azure Stack HCI 版本 23H2 和 22H2;Windows Server 2022、Windows Server 2019
本文說明如何使用 Kerberos 驗證搭配服務主體名稱 (SPN) 。
網路控制卡支援多個驗證方法,以供與管理用戶端通訊。 您可以使用 Kerberos 式驗證、X509 憑證式驗證。 您也可以選擇不對測試部署使用任何驗證。
System Center Virtual Machine Manager 會使用 Kerberos 式驗證。 如果您使用 Kerberos 型驗證,則必須在 Active Directory 中設定網路控制站的 SPN。 SPN 是網路控制卡服務執行個體的唯一識別碼,由 Kerberos 驗證用來建立服務執行個體與服務登入帳戶的關聯。 如需其他詳細資訊,請參閱服務主體名稱。
設定服務主體 (SPN)
網路控制卡會自動設定 SPN。 您只需為網路控制卡電腦提供註冊和修改 SPN 的權限即可。
在網域控制站上,開啟 [Active Directory 使用者和電腦]。
選取 [檢視] > [進階]。
在 [電腦] 底下,找出其中一個網路控制卡電腦帳戶,然後按一下滑鼠右鍵並選取 [屬性]。
選取 [安全性] 索引標籤,然後按一下 [進階] 。
在清單中,如果未列出所有網路控制站電腦帳戶或具有所有網路控制站計算機帳戶的安全組,請按兩下 [ 新增 ] 加以新增。
針對每個網路控制卡電腦帳戶,或是包含網路控制卡電腦帳戶的單一安全性群組:
選取帳戶或群組,然後按一下 [編輯]。
在 [權限] 底下,選取 [驗證寫入 servicePrincipalName]。
向下捲動並在 [屬性] 底下選取:
讀取 servicePrincipalName
寫入 servicePrincipalName
按兩次 [確定]。
針對每個網路控制卡電腦重複步驟 3 到 6。
關閉 [Active Directory 使用者和電腦]。
無法提供SPN註冊或修改的許可權
在新的 Windows Server 2019 部署上,如果您選擇 Kerberos 進行 REST 用戶端驗證,且不會授權網路控制站節點註冊或修改 SPN,網路控制站上的 REST 作業將會失敗。 這可防止您有效地管理 SDN 基礎結構。
針對從 Windows Server 2016 升級至 Windows Server 2019,而且您選擇 Kerberos 進行 REST 用戶端驗證,REST 作業不會遭到封鎖,可確保現有生產部署的透明度。
如果未註冊SPN,REST用戶端驗證會使用較不安全的NTLM。 您也會在 NetworkController-Framework 事件通道的「管理員」通道中收到嚴重事件,要求您提供網路控制卡節點的權限來註冊 SPN。 提供權限後,網路控制卡會自動註冊 SPN,且所有用戶端作業都會使用 Kerberos。
提示
一般而言,您可以設定網路控制卡針對 REST 型作業使用 IP 位址或 DNS 名稱。 不過,當您設定 Kerberos 時,您無法針對 REST 向網路控制卡的查詢使用 IP 位址。 例如,您可以使用 <https://networkcontroller.consotso.com>,但無法使用 <https://192.34.21.3>。 如果使用 IP 位址,則服務主體名稱將無法運作。
如果您在 Windows Server 2016 中針對 REST 作業同時使用 IP 位址和 Kerberos 驗證,則實際的通訊是透過 NTLM 驗證進行。 在這類部署中,一旦您升級至 Windows Server 2019,就會繼續使用 NTLM 式驗證。 若要改用 Kerberos 式驗證,則您必須使用網路控制卡 DNS 名稱進行 REST 作業,並提供網路控制卡節點註冊 SPN 的權限。