Windows 实例:发生身份验证错误

最近更新时间:2024-09-24 10:18:41

我的收藏

现象描述

通过远程桌面连接登录 Windows 实例时,出现以下报错:
发生身份验证错误,给函数提供的标志无效,如下图所示:
给函数提供标志无效


发生身份验证错误。要求的函数不受支持,如下图所示:
要求函数不支持


由于微软于2018年3月发布了一个安全更新,此更新通过更正凭据安全支持提供程序协议(CredSSP),以及在身份验证过程中验证请求的方式,修复 CredSSP 存在的远程执行代码漏洞。客户端和服务器都需要安装此更新,否则可能出现问题描述中的情况。
客户端服务器匹配情况

如上图所示,以下三种情况均会引起远程连接失败:
情况一:客户端未修补,服务器安装了安全更新,并且策略配置为强制更新的客户端
情况二:服务器未修补,客户端安装了安全更新,并且策略配置为强制更新的客户端
情况三:服务器未修补,客户端安装了安全更新,并且策略配置为缓解

可能原因

可能原因
处理措施
服务器或客户端未安装安全更新
本地组策略未配置
系统中的注册表未修改

故障处理

通过 VNC 登录云服务器

VNC 登录是腾讯云为用户提供的一种通过 Web 浏览器远程连接云服务器的方式。在没有安装或者无法使用远程登录客户端,以及通过其他方式均无法登录的情况下,用户可以通过 VNC 登录连接到云服务器,观察云服务器状态,并且可通过云服务器账户进行基本的云服务器管理操作,具体操作请参见:使用 VNC 登录 Windows 实例

检查服务端或客户端并安装安全更新(推荐)

安装安全更新,可更新未修补的服务端或客户端。不同系统对应的更新情况可参见 CVE-2018-0886 | CredSSP 远程执行代码漏洞
说明:
本方案以 Windows Server 2016 为例。
Windows Server 2016及以上版本操作方式相同。
其他操作系统可参见以下操作进入 Windows 更新
Windows Server 2012:

> 控制面板 > 系统和安全 > Windows 更新
Windows Server 2008:开始 > 控制面板 > 系统和安全 > Windows Update
Windows10:

> 设置 > 更新和安全
Windows 7:

> 控制面板 > 系统和安全 > Windows Update
1. 在操作系统界面,单击

,选择设置。如下图所示:



2. 在打开的设置窗口中,选择更新和安全。如下图所示:
更新与安全


3. 更新和安全中,选择 Windows 更新,单击检查更新。如下图所示:
检查更新


4. 根据界面提示,单击开始安装
5. 安装完成后,重启实例,完成更新。

检查并修改本地组策略配置

在已安装安全更新的机器中,将加密 Oracle 数据库修正策略设置为易受攻击。本方案以 Windows Server 2016 为例,其操作步骤如下:
注意:
Windows 10 家庭版操作系统中,若没有组策略编辑器,可通过修改注册表来实现。操作步骤请参见 检查并修改系统中的注册表
1. 在操作系统界面,单击

,输入 gpedit.msc,按 Enter,打开本地组策略编辑器
说明:
您也可使用 Win+R 快捷键打开运行界面。
2. 在左侧导航栏中,选择计算机配置 > 管理模板 > 系统 > 凭据分配,双击加密 Oracle 数据库修正。如下图所示:
加密数据库修正


3. 在打开的加密 Oracle 修正窗口中,选择已启用,并将保护级别设置为易受攻击。如下图所示:
易受攻击


4. 单击确定,完成设置。

检查并修改系统中的注册表

1. 在操作系统界面,单击

,输入 regedit,按 Enter,打开注册表编辑器。
说明:
您也可使用 Win+R 快捷键打开运行界面。
2. 在左侧导航树中,依次展开计算机 > HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > Policies > System > CredSSP > Parameters 目录。如下图所示:
说明:
若该目录路径不存在,请手动创建。



3. 右键单击 Parameters,选择新建 > DWORD(32位)值,并将文件名称命名为 AllowEncryptionOracle
4. 双击新建的 AllowEncryptionOracle 文件,将数值数据设置为2,单击确定。如下图所示:



5. 重启实例。

相关参考