情况:使用位于OFFICE域中的Windows 10工作站,使用智能卡login和证书将RDP连接启动到REMOTE域中的RDS网关。 外部域接受来自CA OFFICE-CA证书,该OFFICE-CA颁发了所使用的智能卡上的证书,该证书与包含工作站的域位于同一个域中。 RDPauthentication导致错误0xc000006d / 0xc000006a(未知的用户名)。 服务器的事件日志报告,使用源域OFFICE而不是目标域REMOTE显式凭据尝试进行身份validation。 如果我在使用同一个智能卡join到REMOTE域的PC上本地testing本地日志logging,则DC授予访问用户[email protected] ,该用户等同于REMOTE\user 。 所以,基于证书的授权是正确设置的。
我稍微前进了一下,并在OFFICE域策略中启用了“允许用户提示”,允许Windows 10的RDP客户端向远程RDS服务器提供期望的域\用户名,启动RDP会话并以REMOTE\user身份提供期望的stringREMOTE\user user提示帮助授权连接。 这次RDP通过基于服务器日志的授权成功,但RDP客户端抛出“用户未知”错误,强行closures本地RDP连接。 深入研究这个问题,我遇到了这个解释NLA的文章 ,其中包含以下内容:
当你在这个对话框中input你的证书时,即使你不select保存,他们也会去CredSSP。 然后通过安全通道将凭证传递给RD会话主机服务器。
因此,validation应该成功,无论用户提示与否。 显然,Windows 10 RDP客户端mstsc.exe尝试validation本地证书(证书),确定域\用户名并将THAT发送到远程端,显然具有不同的域\用户名,并且不授权连接。 如果我启用并提供用户提示,那么提示在本地也是明显的validation,而且显然是失败的,而远程端正确地validation了基于证书的凭证。
问题如下: