简介: 比较 Windows Hello PIN、2026 年系统安全限制、浏览器会话复用、官方 API 和虚拟 WebAuthn 认证器。
自动化已经跑完九成,最后招聘一个人
脚本点击登录、填写网页、顺利前进,直到 Windows 弹出“请输入 PIN”。机器人准备通宵工作,人却被安排为 PIN 输入员。
结论: 普通浏览器脚本没有标准可靠的办法,无人完成 Windows Hello 中已有通行密钥的 PIN 核验。但合法复用登录会话、使用官方 API,或在适合的环境中另行注册虚拟凭据,可以减少手动操作。[1][2][3]
PIN 不是网站密码
Windows Hello 将私钥保护在设备上,通过 PIN、人脸或指纹确认用户,然后用私钥对网站请求签名。网站并不直接收到 PIN 数字。[1][4] 因此自动填写网页输入框,不等于能够控制 Windows 安全窗口。网页里的机器人到门口还得查证件。
2026 年的安全变化
Microsoft 说明,自 2026 年 1 月 13 日起发布的更新限制了向 Windows 凭据界面注入不可信的自动或远程输入。可信实体键盘、具有特定权限的程序与普通模拟按键并非同一种情况。[5]
Microsoft 还记录了 Power Automate Desktop 无法操作某些认证窗口的问题。将 Edge 换成 Chrome 或 Firefox 的建议只针对该问题,并不保证所有 Windows Hello PIN 都能自动通过。[6]
五条路径
登录会话复用: 第一次人工登录,再保持网站允许的会话。Playwright 可以保存 Cookie 等状态,但到期或额外核验仍需要人。保存的状态等同登录秘密,不要提交到 GitHub。[2]
官方 API: 如果服务提供程序专用认证方式,通常比自动点击页面更适合长期任务。网站要求通行密钥,并不等于每次 API 调用都需要指纹。
虚拟 WebAuthn: Chrome DevTools 和 Playwright 可以模拟通行密钥注册及核验,主要适用于测试。它们不会自动导出已有的 Windows Hello 私钥。真实网站能否增加另一把密钥、是否允许自动化需要确认。[7][3]
人脸或指纹: 省去打字,但本人仍要参与。[4]
自动输入 PIN: AutoHotkey、PowerShell 或 USB 键盘模拟器可能遭到受保护窗口限制。把 PIN 明文写进脚本还会带来泄露风险。[5]
如何选择?
普通重复任务先看会话是否能保持;持续无人运行先查官方 API;测试自家网站用虚拟认证器。第三方网站若每次要求本人核验,就设计暂停和通知。重启后、会话过期后、敏感操作前应分别测试。
结尾
目标不是让机器人学会输入几个数字,而是找到无需反复叫人的正规入口。否则全自动系统的最后一名员工,依然是深夜 PIN 值班员。
参考资料(7条)
- Microsoft Learn: Support for Passkeys in Windows learn.microsoft.com
- Playwright: Authentication and session state playwright.dev
- Playwright: Virtual WebAuthn credentials playwright.dev
- Microsoft Learn: Passkey verification on Windows learn.microsoft.com
- Microsoft Support: Credential autofill restrictions, Windows January 2026 update support.microsoft.com
- Microsoft Learn: Power Automate desktop Windows credential dialog issues learn.microsoft.com
- Chrome for Developers: Emulate WebAuthn authenticators developer.chrome.com



