当我使用虚拟机连接工具连接到基于 Windows Server 2008 Hyper-v 的计算机上的虚拟机时,由于无法将凭据发送到远程计算机,将无法建立连接

本文提供的帮助可修复在尝试使用 Vmconnect.exe 连接到虚拟机时收到的错误。

原始产品版本:   Windows Server 2012 R2
原始 KB 数:   954357

错误消息说明

在使用虚拟机连接工具时 ( # A0) 若要连接到基于 Windows Server 2008 Hyper-v 的计算机上的虚拟机,您可能会收到以下错误消息:由于无法将凭据发送到远程计算机,将无法建立连接。 若要获取帮助,请与系统管理员联系。

是否要再次尝试连接?

原因

如果 Windows Server 2008 基于 Hyper-v 的计算机上的 Credential Security Service Provider (CredSSP) 策略未启用从远程位置对用户凭据进行身份验证,则会发生此错误。

解决方案

您可以在 Hyper-v 角色安装程序配置 CredSSP 策略以启用来自远程用户的凭据身份验证。 但是,如果 "配置注册表" 一节中所述的任何注册表项都不存在,则会出现 "症状" 一节中所述的错误。 若要配置远程用户身份验证,请使用下列方法之一。

方法1:配置注册表

若要让我们为你修复此问题,请转到 "帮我修复此问题" 部分。 如果您希望自己修复此问题,请转到 "我自己修复此问题" 部分。

为我修复此问题

若要自动修复此问题,请单击 " 修复此问题 " 链接。 然后,在 "文件下载" 对话框中单击 "运行",然后按照此向导中的步骤操作。

备注

此向导可能仅为英文版;但是,自动修复功能也适用于其他语言版本的 Windows。

备注

如果您不在出现问题的计算机上,则可以将自动修复保存到闪存驱动器或 CD 中,以便可以在出现该问题的计算机上运行它。

现在,转到 "此方法是否已修复问题?" "部分。

我自己修复此问题

重要

此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,请务必严格按照这些步骤操作。 为了加强保护,应先备份注册表,再进行修改。 如果出现问题,可以还原注册表。 有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 322756 如何在 Windows 中备份和还原注册表

如果未正确设置 CredSSP 策略,则可以手动创建策略。 若要执行此操作,请在多个注册表子项下创建以下注册表项:

名称: Hyper-v 值类型:字符串值值数据: Microsoft 虚拟控制台服务/*

必须在以下注册表子项下创建此注册表项:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowDefaultCredentials

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowDefaultCredentialsDomain

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentials

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentialsDomain

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentialsWhenNTLMOnly

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowFreshCredentialsWhenNTLMOnlyDomain

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowSavedCredentials

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowSavedCredentialsDomain

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowSavedCredentialsWhenNTLMOnly "如何创建注册表项" 一节介绍如何在列表中的第一个注册表子项下创建注册表项。 您必须对其余的注册表子项重复这些步骤。

如何创建注册表项

按照以下步骤操作,然后退出注册表编辑器:

  1. 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”****。

  2. 在注册表中找到并单击以下项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Credssp\PolicyDefaults\AllowDefaultCredentials

  3. 在 " 编辑 " 菜单上,指向 " 新建",然后单击 " 字符串值"。

  4. 键入 Hyper-v,然后按 ENTER。

  5. “编辑” 菜单上,单击 “修改”

  6. 键入 Microsoft 虚拟控制台服务/*,然后单击 "确定"

问题是否已修复?

检查问题是否已修复。 如果问题已修复,则您已完成本文。 如果问题没有修复,你可以联系技术支持部门

方法2:使用组策略设置

若要启用远程凭据的身份验证,您可以使用 Gpedit.msc 工具配置基于 Hyper-v 的 Windows Server 2008 计算机上的组策略设置。 为此,请按照下列步骤操作:

  1. 启动 Gpedit.msc。
  2. 展开 " 计算机配置",然后展开 " 管理模板"。
  3. 展开 " 系统",然后单击 " 凭据委派"。
  4. 在详细信息窗格中,双击 " 允许分配默认凭据"。

备注

如果使用 NTLM 身份验证,请使用 " 允许使用仅 NTLM 服务器身份验证的默认凭据 " 条目。 5. 单击 " 启用",然后单击选中 " 使用上面输入的连接 OS 默认设置 " 复选框。 6. 单击 " 显示",然后验证远程用户的计算机是否包含在列表中。 如有必要,请单击 "添加",然后 添加远程用户的计算机。 您还可以使用通配符。 例如,若要选择所有计算机,请添加以下通配符: *

  1. 单击 “确定” 两次。
  2. 关闭 "组策略"。

重要

此方法与 "配置注册表项" 一节中所述的方法不同。 组策略配置将使用任何计算机上的任何服务主体名称 (SPN) ,以启用远程凭据的身份验证。 "配置注册表项" 一节中所述的方法将仅启用 Microsoft 虚拟控制台服务的身份验证。

参考

若要查看 Hyper-v 技术常见问题解答,请访问以下 Microsoft 网站: https://www.microsoft.com/windowsserver2008/en/us/hyperv-faq.aspx