1. 程式人生 > >如何解決 Windows 例項出現身份驗證錯誤及更正 CredSSP

如何解決 Windows 例項出現身份驗證錯誤及更正 CredSSP

現象描述

通過微軟的 RDP 協議客戶端 遠端連線 Windows 例項時報錯:出現身份驗證錯誤,要求的函式不受支援(The function requested is not supported)。

現象

原因分析

微軟官方 2018 年 5 月更新了憑據安全支援提供程式協議(CredSSP)相關補丁和身份驗證請求方式。當出現以下任一配置策略時會出現該連線錯誤:

  • 配置策略一:客戶端的策略為未修補,伺服器端策略為強制更新的客戶端。

  • 配置策略二:客戶端策略為強制更新的客戶端,伺服器端策略為未修補。

  • 配置策略三:客戶端的策略為緩解,伺服器端策略為未修補。

(推薦)解決方法 1:下載安全更新

  1. 通過 遠端連線功能 登入 Windows 例項。

  2. 搜尋並開啟 Windows 更新

  3. 單擊 檢查更新 下載積累的更新。

    Download

  4. 等待更新和安裝完成。

  5. 重啟例項以完成安裝更新。

  6. (可選)若您的客戶端為 Windows 作業系統,在客戶端中安裝所有積累的安全更新。

您也可以根據自己的作業系統,在 Windows 例項和客戶端上安裝 CredSSP 對應的安全更新安裝包:

解決方法 2:修改登錄檔

您可以選擇手動修改登錄檔,也可以選擇執行我們為您準備的 PowerShell 指令碼。

警告:使用登錄檔編輯器或其他方法修改登錄檔不當,可能會出現嚴重問題。這些問題可能需要您重新安裝作業系統。方法二會降低您本地計算機或例項的安全性,您需要自行承擔修改登錄檔風險。因此,我們建議您使用 

方法一

說明

  • 當原因為策略配置一時,您需要通過 遠端連線功能 登入並修復目標例項。當原因為策略配置二和三時,您需要修復本地計算機。
  • 在修改登錄檔之前,建議您先通過 建立快照 備份資料,以免資料丟失。

手動修改

  1. 登入例項或者本地計算機。

  2. 單擊 開始 > 執行,輸入 regedit,單擊 確定

  3. 定位到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters 鍵。如果 CredSSP 或者 Parameters 鍵不存在,請新建 CredSSP

     或者 Parameters 鍵。

  4. 在 Parameters 鍵下新建 DWORD 值 AllowEncryptionOracle,並設定資料為 2

    登錄檔

  5. 重啟例項或者本地計算機。

指令碼修改

  1. 登入例項或者本地計算機。

  2. 以管理員身份執行以下 PowerShell 指令碼。

    1. New-Item -Path HKLM:\Software\Microsoft\Windows\CurrentVersion\Policies\System -Name CredSSP -Force
    2. New-Item -Path HKLM:\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP -Name Parameters -Force
    3. Get-Item -Path HKLM:\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters | New-ItemProperty -Name AllowEncryptionOracle -Value 2 -PropertyType DWORD -Force
  3. 重啟例項或者本地計算機。

說明:若您優先使用方法二修改了登錄檔,隨後又更新了客戶端和ECS例項安全補丁,我們建議您將 AllowEncryptionOracle 的資料設為 0 或者 1 以獲得更高的安全性。

參考連結