“Windows Defender Credential Guard 不允许使用保存的凭据”进行 RDP 连接?

ven*_*ngy 42 remote-desktop windows-11

最近在这个Windows版本下运行远程桌面连接时

操作系统名称 Microsoft Windows 11 Pro
版本 10.0.22621 Build 22621
其他操作系统说明 不可用
操作系统制造商 Microsoft Corporation

我无法再使用保存的 RDP 凭据,并且每个连接都会显示以下消息:

警卫

在谷歌搜索后,我尝试编辑注册表值、更改策略、重新启动等,但没有任何效果。

我想使用远程桌面而不必每次都手动输入我的凭据!

有任何想法吗?

Tec*_*ore 63

我找到了一个不需要修改注册表或策略来禁用新的 Credential Guard 的解决方案。

我检查了 TERMSRV 保存的凭据并将其删除,然后使用cmdkey 命令重新添加。

列出已保存的凭据:

cmdkey /list:TERMSRV/*
Run Code Online (Sandbox Code Playgroud)

要删除已保存的凭据:

cmdkey /delete:TERMSRV/<targetNameOrIp>
Run Code Online (Sandbox Code Playgroud)

要添加在 CG 打开时实际工作的凭据:

cmdkey /generic:TERMSRV/<targetNameOrIp> /user:<username> /pass:<password>
Run Code Online (Sandbox Code Playgroud)

我什至能够保存使用电子邮件@地址作为用户名的微软帐户的密码。

此解决方案的所有功劳均归于Microsoft 论坛上的用户 informatik01

根据 informatik01 的说法,通过 RDP UI 保存的密码最终会成为“域”类型的凭据,并且与 CG 不兼容。通过 cmdkey /generic 标志保存的密码最终会成为“Generic”类型,并且可以在启用 CG 的情况下使用。

  • 这在 Windows 11 上效果很好。只需在工具栏搜索中输入“终端”,然后单击终端应用程序... (powershell) (6认同)
  • 如果您更喜欢使用 GUI 而不是命令行,那么您似乎也可以从凭据管理器执行此操作。从“Windows 凭据”部分中删除,然后删除“添加通用凭据”。如果您想编写脚本,PowerShell 中的 [CredentialManager](https://www.powershellgallery.com/packages/CredentialManager/2.0) 模块可以提取旧密码以在添加新密码时使用:`(Get-StoredCredential -目标“TERMSRV/&lt;targetNameOrIp&gt;”-AsCredentialObject).Password` (6认同)

ven*_*ngy 11

通过应用约翰的答案中提供的链接中的以下步骤,我能够使用保存的凭据自动连接:

目前,“把孩子和洗澡水一起倒掉”的解决方法是完全关闭 Credential Guard。[...] 一旦我们获得适当的白名单来豁免 Credential Guard(或者可能使 Credential Manager 和 RDP 与 Credential Guard 兼容),那么我将不再建议关闭该功能。

转到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard

添加名为 EnableVirtualizationBasedSecurity 的新 DWORD 值并将其值设置为 0。

添加另一个名为 RequirePlatformSecurityFeatures 的新 DWORD 值并将其设置为 0。

现在转到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

添加名为 LsaCfgFlags 的新 DWORD 值并将其设置为 0。

重启你的电脑。

重新输入远程计算机的凭据。看起来 Win22H2 升级可能也阻止了您保存的凭据。您可能需要重新输入它们。