目的
起因是当我改了一次微软账号的密码后,发现 rdp 还是能用之前的账号密码登录,反而用新的密码无法登录。
于是就开始搜集资料并进行本地验证。
一番验证后,了解了微软账号(Microsoft Account)和本地帐号(Local Account)的区别。做一些整理后发出来让大家以后遇到类似情况时有个参考。
欢迎大家讨论纠错。
账号
当首次登录 windows 时,系统会让你登录微软账号,也就是经典的这个页面。
此时当成功登录微软账号后,系统会为这个微软账号创建一个本地账号,通常账号名是邮箱前缀。
但如果 windows 上已有一个相同前缀的本地账号,比如先使用"[email protected]"登录,生成了本地账号"abc",又使用"[email protected]"登录,那么系统则会为创建的本地账号名添加随机后缀。例如第二个本地账号为"abc_2qoabc"。
使用 win + r 运行 netplwiz 会进入"用户账户"页面,双击用户名,即可看到本机用户的用户名和全名。
密码
需要知道的是,与 windows 有关的密码有三种。
[ol]
[/ol]
PIN 是否能算密码还有待商榷。至少应该不会有人用 PIN 去尝试登录远程桌面。PIN 只存在 windows 本地,用于本机登录使用,不会与任何服务器发生交流。
当我们初次使用微软账号登录 windows 时,本地帐号(Local Account)的密码会同步成微软账号(Microsoft Account)的密码。
但是当我们使用网页修改微软账号(Microsoft Account)的密码后,新的密码并不会同步到本地账号上(Local Account)。而使用 rdp 服务不需要与微软服务器进行对话, 只需要客户端与目的计算机对话, 所以仍能使用旧密码登录远程桌面。要想改变登录远程桌面的密码,就只能手动触发同步密码的流程。
目前我找到的是在锁屏界面点击"忘掉了 pin",重新登陆下微软账号即可,并不需要重设 PIN 。只需要登录账号,然后取消操作就行。
我看到网上说"将微软账号转成本地账号"或是"退出微软账号",之后重新登录微软账号也可以触发同步流程。但是在 windows 11 上我没有找到这些操作的按钮,也比较担心这些操作可能带来的副作用,就没有尝试了。
应用登录
登录这一流程分应用,这里用的是两个常用的应用,一个是 windows 上的"远程桌面",另一个是 ios 上的"RD Client"。
以微软账号为[email protected],密码是password来举例。
远程桌面
在"远程桌面"中,可以使用的用户名是:
[ol]
[/ol]
并且这 5 种方式在被其他客户端挤掉线后都会以 5. MicrosoftAccount\[email protected] 的方式呈现用户名。
这些账号中前两种符合微软 RDP 的用户名要求用户 @域或域\用户。第三种或许是因为他是本地用户?第 4 、5 种是"远程桌面"自动帮忙解析了MicrosoftAccount?
RD Client
在 RD Client 中,能用的用户名有图片中这三种,也就是前一小节中第 1 到 3 种用户名格式。
权限
使用 win+r 运行 gpedit.msc, 即可打开"本地组策略编辑器", 在"计算机配置"->"Windows 设置"->"安全设置"->"本地策略"->"用户权限分配"->"允许通过远程桌面服务登录"中可以看到被允许远程登录计算机的组(group).
使用 win+x 点击"计算机管理"->"系统工具"->"本地用户和组"->"组", 双击组即可看到这个组里有哪些用户了.