发生身份验证错误,不支持请求的功能

如果当您尝试在两台Windows计算机之间(Windows)使用远程桌面连接(use the Remote Desktop Connection)时收到错误消息 -远程桌面连接错误,发生身份验证错误,不支持请求的功能(Remote Desktop Connection error, An Authentication error has occurred, The Function requested is not supported),那么这篇文章旨在帮助您。在这篇文章中,我们将确定一些可能触发错误的潜在已知原因,然后提供您可以尝试帮助修复此问题的可能解决方案。

远程桌面连接(Remote Desktop Connection)身份验证失败时,您将收到以下错误消息;

Remote Desktop Connection

An authentication error has occurred.
The function requested is not supported.

Remote computer: Computer_Name or IP_Address
This could be due to CredSSP encryption oracle remediation.
For more information, see https://go.microsoft.com/fwlink/?linkid=866660

RDP 连接错误:发生身份验证错误

从上图中可以看出,错误消息是由CredSPP Encryption Oracle Remediation引起的。您可以使用注册表(Registry)组策略编辑器(Group Policy Editor)修复“发生身份验证错误,这可能是由于CredSSP加密 oracle 修复”错误。

最近微软发现(Microsoft)CredSSP版本存在远程代码执行漏洞(CVE-2018-0886:加密预言机攻击) 。成功利用此漏洞的攻击者可以中继用户凭据以在目标系统上执行代码。因此,任何依赖CredSSP进行身份验证的应用程序都容易受到此类攻击。

为了修补此安全风险,Microsoft发布了一个安全更新,通过更正CredSSP在身份验证过程中验证请求的方式来解决该漏洞。该补丁更新了所有受影响平台的CredSSP身份验证协议和远程桌面客户端。(Remote Desktop)

安装更新后,已修补的客户端无法与未修补的服务器通信。换句话说,如果客户端计算机安装了安全更新但服务器计算机没有更新安全更新(反之亦然),远程连接不成功,用户收到上述错误消息。

发生RDP 身份验证(RDP Authentication)错误,不支持请求的功能(Function)

如果您遇到远程桌面连接错误、发生身份验证错误、不支持请求的功能(Remote Desktop Connection error, An Authentication error has occurred, The Function requested is not supported)错误消息,您可以尝试以下我们推荐的解决方案来解决问题。

  1. 使用最新的安全补丁更新(Update)Windows 10
  2. 修改加密 Oracle 修复(Encryption Oracle Remediation) 策略
  3. 创建和配置AllowEncryptionOracle注册表项

让我们看一下与列出的每个解决方案相关的过程的描述。

1]使用最新的安全补丁更新 Windows 10(Update Windows 10)

在此解决方案中,建议您在两台计算机(服务器和客户端)上都安装CredSSP 安全补丁。(CredSSP security patch)或者,您可以单击开始(Start)>设置(Settings)>更新和安全(Update & Security)> Windows 更新(Windows Update)>检查更新(Check for Updates)以下载并安装最新的累积更新。

一旦两台计算机都安装了CredSSP补丁,就会出现身份验证错误 – 请求的功能不受支持的(An Authentication error has occurred – The Function requested is not supported)错误消息将得到解决。

如果由于某些原因,您无法在服务器或客户端计算机上安装安全更新,则可以使用下面的解决方案 2 和 3。

2]修改加密Oracle修复(Encryption Oracle Remediation) 策略

可以通过使用组策略(Group Policy)编辑器修改加密 Oracle 修复(Encryption Oracle Remediation) 策略来解决错误消息。

注意:(Note:)此方法不适用于Windows 10 家庭(Home)版,因为默认情况下未安装本地组策略编辑器。(Local Group Policy Editor)但是您可以通过将本地组策略编辑器添加到 Windows 10 家庭版来(adding Local Group Policy Editor to Windows 10 Home edition)解决此问题。

要启用加密 Oracle 修复(Encryption Oracle Remediation)策略,请执行以下操作:

  • 按 Windows 键 + R。
  • 在运行对话框中输入gpedit.msc并按 Enter打开组策略编辑器(open Group Policy Editor)
  • 本地组策略编辑器(Local Group Policy Editor)中,使用左窗格导航到以下路径:

Computer Configuration > Administrative Templates > System > Credentials Delegation

  • 在右侧窗格中,双击Encryption Oracle Remediation 以编辑其属性。
  • 打开Encryption Oracle Remediation策略后,将单选按钮设置为Enabled
  • 接下来,向下滚动到 Protection Level 并将其更改为Vulnerable
  • 单击应用(Apply)>确定(OK)以保存更改。

您现在可以退出本地组策略编辑器(Local Group Policy Editor)并重新启动计算机。在启动时,再次尝试RDP连接并查看问题是否已解决。

3] 创建和配置AllowEncryptionOracle注册表项

这相当于启用 加密 Oracle 修复 (Encryption Oracle Remediation )策略。您可以通过创建和配置以下注册表项来解决此问题:

AllowEncryptionOracle: DWORD: 2

由于这是注册表操作,建议您备份注册表(back up the registry) 或 创建系统还原点 ,以防程序出错。

采取必要的预防措施后,您可以进行以下操作:

  • 按 Windows 键 + R。
  • 在“运行”对话框中,键入regedit并按Enter打开注册表编辑器(Registry Editor)
  • 导航或跳转到下面的注册表项路径:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  • 右键单击System,选择New > Key并将其名称设置为CredSSP。
  • 接下来,右键单击CredSSP,选择New > Key并将其名称设置为Parameters。
  • 现在,右键单击右侧窗格中的空白区域,然后选择New > DWORD (32-bit) Value
  • 将值名称重命名为AllowEncryptionOracle  ,然后按 Enter。
  • 双击(Double-click)新值以编辑其属性。
  • 数值(Value)数据框中输入2 ,然后按( 2)Enter保存更改。
  • 退出注册表编辑器(Registry Editor)并重新启动您的 PC。

您现在应该能够成功建立远程桌面连接(Remote Desktop Connection)



About the author

凭借在 Windows 10 和智能手机方面的丰富经验,我是 Microsoft Edge 及其提供的功能的坚定拥护者。除了是错误和 wifi 方面的专家之外,我还知道如何使用 OneDrive 和 Cortana 等工具让您的工作更轻松。



Related posts