windows 远程桌面 rdp 登陆问题

51 天前
 yuuluu

之前的一些讨论

目的

起因是当我改了一次微软账号的密码后,发现 rdp 还是能用之前的账号密码登录,反而用新的密码无法登录。 于是就开始搜集资料并进行本地验证。

一番验证后,了解了微软账号(Microsoft Account)和本地帐号(Local Account)的区别。做一些整理后发出来让大家以后遇到类似情况时有个参考。

欢迎大家讨论纠错。

账号

当首次登录 windows 时,系统会让你登录微软账号,也就是经典的这个页面。

此时当成功登录微软账号后,系统会为这个微软账号创建一个本地账号,通常账号名是邮箱前缀。

但如果 windows 上已有一个相同前缀的本地账号,比如先使用"abc@outlook.com"登录,生成了本地账号"abc",又使用"abc@icloud.com"登录,那么系统则会为创建的本地账号名添加随机后缀。例如第二个本地账号为"abc_2qoabc"。

使用 win + r 运行 netplwiz 会进入"用户账户"页面,双击用户名,即可看到本机用户的用户名和全名。

密码

需要知道的是,与 windows 有关的密码有三种。

  1. 微软账号(Microsoft Account)的密码
  2. 本地账号(Local Account)的密码
  3. PIN

PIN 是否能算密码还有待商榷。至少应该不会有人用 PIN 去尝试登录远程桌面。PIN 只存在 windows 本地,用于本机登录使用,不会与任何服务器发生交流。

当我们初次使用微软账号登录 windows 时,本地帐号(Local Account)的密码会同步成微软账号(Microsoft Account)的密码。

但是当我们使用网页修改微软账号(Microsoft Account)的密码后,新的密码并不会同步到本地账号上(Local Account)。而使用 rdp 服务不需要与微软服务器进行对话, 只需要客户端与目的计算机对话, 所以仍能使用旧密码登录远程桌面。要想改变登录远程桌面的密码,就只能手动触发同步密码的流程。

目前我找到的是在锁屏界面点击"忘掉了 pin",重新登陆下微软账号即可,并不需要重设 PIN 。只需要登录账号,然后取消操作就行。

我看到网上说"将微软账号转成本地账号"或是"退出微软账号",之后重新登录微软账号也可以触发同步流程。但是在 windows 11 上我没有找到这些操作的按钮,也比较担心这些操作可能带来的副作用,就没有尝试了。

应用登录

登录这一流程分应用,这里用的是两个常用的应用,一个是 windows 上的"远程桌面",另一个是 ios 上的"RD Client"。

以微软账号为abc@outlook.com,密码是password来举例。

远程桌面

在"远程桌面"中,可以使用的用户名是:

  1. abc@outlook.com
  2. outlook.com\abc
  3. abc
  4. MicrosoftAccount\abc
  5. MicrosoftAccount\abc@outlook.com

并且这 5 种方式在被其他客户端挤掉线后都会以 5. MicrosoftAccount\abc@outlook.com 的方式呈现用户名。

这些账号中前两种符合微软 RDP 的用户名要求用户 @域域\用户。第三种或许是因为他是本地用户?第 4 、5 种是"远程桌面"自动帮忙解析了MicrosoftAccount

RD Client

在 RD Client 中,能用的用户名有图片中这三种,也就是前一小节中第 1 到 3 种用户名格式。

权限

使用 win+r 运行 gpedit.msc, 即可打开"本地组策略编辑器", 在"计算机配置"->"Windows 设置"->"安全设置"->"本地策略"->"用户权限分配"->"允许通过远程桌面服务登录"中可以看到被允许远程登录计算机的组(group).

使用 win+x 点击"计算机管理"->"系统工具"->"本地用户和组"->"组", 双击组即可看到这个组里有哪些用户了.

2319 次点击
所在节点    Windows
22 条回复
HK560
51 天前
好帖,之前用 rdp 就纠结过类似的问题。个人是习惯装系统时候先弄个本地账户,之后再登微软账号;后面自己摸索多了就知道是本地用户名+微软账户密码登陆了。
qqqyh
51 天前
先不考虑修改微软账号密码的情况:登录微软账号以后,RDP 账号密码组合可以是微软账号的邮箱+微软账号密码,也也可以是本地用户名+微软账号密码,没想到吧?

至于修改微软账号密码后,依然可以用修改前的密码登录,只能理解为修改没有立即同步到 Windows 本地来。
Baymaxbowen
51 天前
还有个痛点,使用 rdp 的时候 Chrome 会经常卡住,输入框无法输入,但是可以通过切换为英文键盘,切出切回浏览器解决无法输入的问题。不知道还有没有能够根治的办法
yuuluu
51 天前
@Baymaxbowen 好像很久之前遇到过...不知道怎么的就好了. 最近遇到的是非正常断线重连会导致 vscode 输入延迟巨大, 需要重启.
8620
51 天前
补一句:如果是 Azure Active Directory / Entra ID 的用户,前面的 MicrosoftAccount 会变成 AzureAD 。不过创建一个本地账户是好习惯,因为 WinRE 的有些恢复功能需要本地管理员账户才能使用。
blankmiss
51 天前
这个玩意很坑爹 有的时候是微软账户 有的时候是本地账号
ghjh
51 天前
@Baymaxbowen #3 这个是
chromium 的输入模块问题暂时可以通过切换微软输入法的兼容模式缓解
https://fast.v2ex.com/t/1005167
CatCode
51 天前
感谢 OP 提供密码同步的方法
之前一直不知道如何触发密码同步
chinni
51 天前
不用那么麻烦 今天晚上刚试过
直接在 要登录到的机器上执行
`runas /u:MicrosoftAccount\<email> cmd.exe`
然后输入微软这个邮箱的登录密码
然后就可以使用别的机器 用你系统的用户名 + 微软登录密码(无视 2FA) 来登录远程桌面了
yuuluu
51 天前
@ghjh 感谢..居然 vscode 也是同样的原因
NUDt88R24k811e9J
50 天前
@Baymaxbowen 也有遇到这样的问题
kkk9
50 天前
😃为了自己不混乱和安全考虑,不要登录微软账户就是最完美的解决方案。
SuHeAndZl
50 天前
有一个问题 如果微软账户设置了无密码登录方式的话 那密码是什么
0xD800
50 天前
@Baymaxbowen +1+1 我只能最大化最小化,不过最近很少遇到了
Baymaxbowen
50 天前
今天又遇到一个新问题,chrome 切换到页面内容复杂的 tab 会卡住然后直接断连,比如 tg 和 YouTube
yuuluu
50 天前
@SuHeAndZl 参考之前的讨论,应该没法登录。建一个本地用户登? 因为整个 RDP 的登录流程和微软账号没关系,只与本地账号有关系。微软账号只在"同步密码"这一流程起作用.
SuHeAndZl
50 天前
@yuuluu 吐了 就是因为怕类似的问题所以我一直没开无密码登录 搞不懂微软这一套逻辑
Zoyo94
50 天前
#### 我永远第一时间 administrator 设置空密码访问。
> 歪个楼

#### 主要是我里面啥也没有。移动的 ipv4 没有公网,ipv6 有但无法直连,或许是因为光猫防火墙。
#### 也懒得找移动要超级管理员密码。
#### 通常都是路由器挂 zerotier ,通过公司的 ipv6 ddns 跳转回家。

#### 昨天试了试 Sunhine 和 moonlight 回家 ,效果还没 todesk 好。最好的还是使用微软 remote desktop 。
coldle
50 天前
微软这一套鉴权确实乱七八糟,之前想过额外加一层 2fa ,但没找到开源方案,只有个收费的闭源服务
hez2010
47 天前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1061300

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX