原文发布至今已过两年,Windows 登录体系和 YubiKey 工具生态都有了较大更新。
本文是2年前文章的全面升级版本,涵盖最新的三种登录方式。
在开始之前,需要明确的是,利用 YubiKey 登录 Windows 有三种完全不同的方案,各有优缺点。原文介绍的是”方案二(PIV 智能卡)”,但这不是最新推荐的做法。
| 登录方案 | 账户类型 | 难度 | 稳定性 | 官方支持 | 推荐度 |
|---|---|---|---|---|---|
| 方案一:Microsoft Account(MSA)+ FIDO2 | 在线微软账户 | ⭐ 简单 | ⭐⭐⭐⭐⭐ 最稳定 | ✅ 原生支持 | ⭐⭐⭐⭐⭐ 推荐 |
| 方案二:PIV 智能卡(文章原方法) | 本地或离线账户 | ⭐⭐⭐⭐ 复杂 | ⭐⭐⭐ 中等 | ⚠️ 维护中 | ⭐⭐ 不推荐 |
| 方案三:Yubico Login for Windows | 本地或离线账户 | ⭐⭐ 简单 | ⭐⭐⭐⭐ 较好 | ✅ 官方工具 | ⭐⭐⭐⭐ 推荐 |
方案一:Microsoft Account + FIDO2(最新推荐)
适用场景
- 家庭用户或个人电脑
- 可以使用在线账户(有网络连接)
- 希望最简单、最稳定的配置
为什么推荐这个方案?
2024-2025 年的关键变化:
- Windows 原生支持 FIDO2/WebAuthn,无需第三方驱动
- Microsoft Entra ID(原 Azure AD)完全开放了无密码登录
- 这是微软官方推荐的”无密码登录”方向
配置步骤
步骤 1:确认系统版本
- Windows 10(版本 20H2 及以上)或 Windows 11(任意版本)
- 已更新至最新补丁
检查方法:Windows 键 + R → 输入 winver 查看版本号。
步骤 2:准备 YubiKey
- YubiKey 4、5、5C、5 Nano 等系列(任何支持 U2F/FIDO2 的型号均可)
- 无需安装任何驱动程序
步骤 3:在线账户设置中添加安全密钥
前往微软账号官方网站:https://account.microsoft.com/security
- 登录你的微软账号
- 点击 安全设置(Security settings) → 高级安全选项(Advanced security options)
- 找到 额外的安全选项(Additional security options) 或 安全密钥(Security keys) 部分
- 点击 添加安全密钥(Add a security key)
- 按提示:
- 插入 YubiKey
- 轻触 YubiKey 上的金色接触点
- 设置 PIN(可选,但建议设置)
- 命名这个密钥(如”个人电脑”)
步骤 4:在 Windows 登录界面使用
重启电脑后,在 Windows 登录界面会看到:
- 通常的用户名/密码输入框下方
- 一个 “安全密钥(Security Key)” 的选项卡(像钥匙的图标)
- 点击它后,插入 YubiKey → 轻触 → 输入 PIN(如果设置了)
- 完成登录
常见问题
- Q: 为什么登录界面看不到”安全密钥”选项?
A: 这通常是因为你的账户没有绑定安全密钥。确保在微软账户网站上已完成上面的步骤 3。如果网络账户和本地账户同步有问题,可以尝试:
注销当前账户,重新以在线模式登录
转到设置 > 账户 > 你的信息 > 改用 Microsoft 账户登录
- Q: 能离线登录吗?
A: 不能。这个方案需要网络连接至少完成一次同步。但一旦同步过,即使临时离线,也可能登录(取决于 Windows 缓存策略)。
- Q: 我的电脑加入了公司域(企业)怎么办?
A: 请参考下面”企业环境特殊说明”部分。
方案二:PIV 智能卡(原文方法)- 更新版
为什么这个方案需要更新?
原文的配置方法虽然可行,但存在以下问题:
- 需要手动修改注册表,容易出错
- 需要用
certutil等命令行工具手动刷写证书 - 驱动版本更新时容易失效
- 不适合非技术用户
2025 年的建议:如果一定要用本地账户 + YubiKey,请直接跳到方案三。
但如果你的网络上已经有人使用这个方案…
更新要点
- 驱动版本:确保 YubiKey Smart Card Minidriver 版本 ≥ 4.4(最新版本 4.5.0+)
- 注册表配置简化
- 原文提到的两个注册表项仍然需要,但在 Windows 11 (23H2+) 中,某些情况下可以自动注册
- 如果手动添加,确保没有打字错误(特别是 GUID 部分)
- 证书管理
- 原文用
certutil -scinfo查看证书,现在可以在设置 > 账户 > 登录选项 > 安全密钥中直接查看 - 证书有效期问题:如果看到”No Valid Certificates”错误,可能是证书过期,需要用 yubico-piv-tool 重新生成
- 原文用
- 故障排查更新
- 新命令:
Get-SmartCardReader(PowerShell)可直接列出识别到的智能卡读卡器 - 如果驱动加载失败,检查设备管理器中是否有黄色感叹号,以及是否有驱动冲突
- 新命令:
- Windows 11 24H2 已知问题
- 2024 年 6 月发现的一个 bug:Windows Account Management 在 24H2 版本中管理 FIDO 应用时可能报错
- 此问题已在后续补丁中修复,确保系统完全更新
这个方案何时还值得用?
- 公司 IT 部门已部署智能卡基础设施
- 需要离线登录且要求不降低安全性
- 网络环境受限,无法访问微软在线账户服务
方案三:Yubico Login for Windows(更新推荐)
适用场景
- 必须使用本地(离线)账户
- 希望有简单、直观的配置界面
- 不想手动改注册表或处理智能卡驱动
为什么现在推荐这个方案?
Yubico 官方在 2023-2025 年间加强了对这个工具的维护,发布了多个更新版本。与手动配置 PIV 相比:
- 自动处理所有系统集成
- 更新频繁,bug 修复及时
- 提供直观的图形界面
配置步骤
步骤 1:下载和安装
前往 Yubico 官方下载:https://www.yubico.com/support/download/yubico-login-for-windows/
- 下载最新版本(当前 2.5.0+)
- 运行
.exe安装程序 - 安装完成后重启电脑
步骤 2:启动 Yubico Login 应用
安装后,在开始菜单搜索 “Yubico Login” 打开应用。
步骤 3:添加 YubiKey
在应用中:
- 选择 “Add Key” 或 “+添加”
- 选择你要保护的本地 Windows 账户
- 插入 YubiKey,按提示操作
- 设置 YubiKey PIN(如果需要)
- 应用会自动配置 Windows 登录提供程序
步骤 4:登录测试
- 注销当前账户
- Windows 登录界面会显示 YubiKey 图标选项
- 选择 YubiKey → 插入密钥 → 轻触 → 输入 PIN
- 登录成功
与原 PIV 方案的对比
| 特性 | PIV 方案(原文) | Yubico Login |
|---|---|---|
| 安全机制 | 基于证书(X.509) | 基于 HMAC-SHA1 挑战响应 |
| 安装复杂度 | ⭐⭐⭐⭐ 需要手动配置 | ⭐ 一键安装 |
| 驱动依赖 | Minidriver(易冲突) | 内置,无外部依赖 |
| 官方维护 | ⚠️ 被动维护 | ✅ 主动更新 |
| 离线登录 | ✅ 支持 | ✅ 支持 |
| 企业部署 | ✅ 更正式 | ⚠️ 主要适合个人 |
方案四:企业环境(Microsoft Entra ID)
适用场景
- 公司/学校电脑已加入 Azure AD(现名 Microsoft Entra ID)
- 由 IT 部门管理
配置方式
好消息:企业环境下,IT 管理员在后台开启 FIDO2 登录支持后,用户无需做任何配置。
管理员操作
- 登录 Microsoft Entra admin center
- 前往 Authentication methods → FIDO2 Security Keys
- 设置策略为”Enabled”
- 配置哪些用户可以使用 FIDO2
用户操作
- 在 https://mysignins.microsoft.com 中注册 FIDO2 设备
- 插入 YubiKey,按提示完成注册
- 下次登录时选择”Security Key”选项
使用时常见问题
- Q: 能否用 YubiKey 同时登录 Windows 和 Office 365?
A: 是的。一旦在微软账户上注册了 YubiKey,它会自动用于所有使用相同 Microsoft 账号的登录点(Windows、Office.com、Microsoft Edge 等)。
- Q: 忘记了 YubiKey PIN 怎么办?
A:- 方案一(MSA):去微软账户网站删除并重新添加密钥
- 方案三(Yubico Login):在 Yubico Login 应用中移除并重新添加
- 硬件重置需要用 yubico-manager 工具
- Q: 可以用多把 YubiKey 登录同一个账户吗?
A: 可以。建议至少配置两把作为备份。添加第二把时,重复”添加”步骤即可。登录时会提示选择或自动识别。
- Q: 显卡驱动/输入法会与 YubiKey 冲突吗?
A: 极少见,但如果登录界面触摸无反应,可以尝试:- 移除键盘/鼠标,仅用 YubiKey
- 重启到恢复环境,检查驱动加载
- Q: 能否在 Windows 安全模式下用 YubiKey 登录?
A:- 带网络的安全模式:方案一(MSA)可能有限制
- 普通安全模式:方案三(Yubico Login)通常可行
- 建议为本地管理员账户设置备用登录方式
系统要求(2025 更新版)
| 要求 | 详情 |
|---|---|
| Windows 版本 | 10(20H2+)或 11(任意版本) |
| 最新补丁 | 强烈建议启用自动更新 |
| YubiKey 型号 | 4、5、5C、5 Nano、5 Ci 等(支持 FIDO2 的型号) |
| USB 端口 | USB-A 或 USB-C(根据 YubiKey 型号) |
| 互联网连接 | 方案一需要;方案三配置时建议有,日常登录不需要 |
故障排查(2025 更新)
症状:插入 YubiKey 后登录界面没有出现密钥选项
原因和解决方案:
| 原因 | 解决方案 |
|---|---|
| 账户未绑定 YubiKey | 检查微软账户设置或 Yubico Login 应用是否已添加 |
| USB 连接不稳定 | 尝试另一个 USB 端口,或用 USB-C 扩展线 |
| 驱动未加载 | 打开设备管理器,检查是否有”Smart Card”设备,如有黄色感叹号则重装驱动 |
| 系统缓存问题 | 注销并重新登录,或重启电脑 |
症状:出现”No Valid Certificates Were Found”
原因:
- PIV 证书过期或损坏
- Smart Card Minidriver 版本过旧
解决方案:
powershell# 在 PowerShell 中运行(管理员模式)
Get-SmartCardReader # 查看是否识别到 YubiKey
# 如果识别到,尝试:
certutil -scinfo # 查看证书状态
如果证书确实损坏,需要用 yubico-piv-tool 重置 PIV 应用并重新生成证书。
症状:登录后卡在加载画面
原因:
- FIDO2 验证成功但 Windows 配置有问题
- 用户配置文件损坏
解决方案:
- 按
Ctrl + Alt + Delete,选择登出再重试 - 如果持续发生,用备用登录方式进入,检查事件查看器(Event Viewer)中的错误日志
安全最佳实践
- 备份方案:配置至少两把 YubiKey,或保留一个备用的强密码登录方式
- PIN 管理:为 YubiKey 设置 PIN,防止他人直接使用你的密钥
- 物理安全:妥善保管 YubiKey,不要在公共场所长时间插着
- 账户同步:定期检查 Microsoft 账户或 Yubico 应用中的已注册密钥列表
- 系统更新:始终保持 Windows 和相关驱动的最新状态
总结:2025 年选择建议
| 用户类型 | 推荐方案 | 理由 |
|---|---|---|
| 家庭用户,有网络 | 方案一 | 最简单、最稳定,零配置 |
| 企业员工 | 方案四 | 由 IT 部门统一管理 |
| 必须离线登录 | 方案三 | 官方工具,维护好 |
| 老系统已有 PIV 部署 | 方案二(保持) | 无需迁移,但新电脑不建议使用 |
更新日志
- 2025 年 11 月:完全改写,涵盖最新三种方案,加入 Windows 11 24H2 更新、Microsoft Entra ID 改名说明
- 原文发布:2023 年4月,主要介绍 PIV 智能卡方案
参考链接
- Microsoft 官方 Passkey 支持:https://learn.microsoft.com/en-us/windows/security/identity-protection/passkeys/
- Yubico 官方文档:https://docs.yubico.com/
- YubiKey 登录工具下载:https://www.yubico.com/products/computer-login-tools/
- 企业 Entra ID 部署:https://learn.microsoft.com/en-us/entra/identity/authentication/howto-authentication-passwordless-security-key
2023年原文
在尝试了使用Yubikey无密码登录SSH的复杂操作后,我又用Yubikey登录了我的windows系统。
这个操作相对简单一些, 在使用YubiKey 登录Windows系统之前,以下几个条件都需要先满足:
- Windows系统必须是Windows 10或以上版本,并已经安装了最新的更新。
- Yubikey 是 Yubikey 4系列 或 5系列, 4 或5 的FIPS版本也可以。
- 如果windows是加入Azure AD的,确保AAD管理员已经允许使用Security key登录了。
确认以上步骤,就可以开始设置YubiKey。
在Windows中配置通过Yubikey来登录系统
步骤1:插入YubiKey
把YubiKey 插入相应的USB插口,并确保它已正确连接。
步骤2:安装驱动程序
安装YubiKey Smart Card Minidriver,确保它是4.1以上的版本。
https://www.yubico.com/support/download/smart-card-drivers-tools/
注:如果smartcard的驱动不正确,你可能会看到错误信息”No Valid Certificates Were Found on This Smart Card“
步骤3:在登录选项中添加YubiKey
- 进入Windows设置的account->Sign-in options
- 打开Security key
- 按提示添加你的Yubikey


注:如果没有“Security Key”这个选项,可以添加两个Windows注册表项,然后再将其与YubiKey 捆绑在一起。在注册表中添加以下两个项:HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Authentication \ Credentials \ Provider \ {8bf9a910-a8ff-11d2-93e0-00c04f72dfcd}和HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Authentication \ Credential Providers \ {8bf9a910-a8ff-11d2-93e0-00c04f72dfcd}。这将允许Windows使用YubiKey 作为登录方式。
步骤4:激活Security Key Sign-in
- 打开Local Group Policy Editor
- 在computer cnfiguration ->Administrative Templates->System->Logon下,将”Turn on security key sign-in”

没有这一步,你可能在windows的登录界面是看不到一把钥匙的图标。
使用Yubikey来登录Windows
步骤1:开机,插入YubiKey
- 开机
- 把YubiKey 插入相应的USB插口,并确保它已正确连接。

步骤2:输入Yubikey的Pin
你仍需要输入Yubikey的Pin

步骤3:轻触Yubikey完成登录
成功登录,一切正常

再附上几条测试命令和链接
- certutil -scinfo 这命令可以查看yubikey的驱动是否安装正确
- https://support.yubico.com/hc/en-us/articles/360013780779-Troubleshooting-No-Valid-Certificates-Were-Found-on-This-Smart-Card-
总结
我们可以通过Yubikey来替代传统密码登录。尽管也需要输入Pin,但作为硬件产品安全性自然要高一些,同时输入6位Pin也比密码要简单些。
作为Yubikey的另一个进阶应用,它还能让你觉得用来买Yubikey钱,没有完全打水漂。





必须要加入AAD才能使用安全密钥吗,我设置完并没有生效