使用 YubiKey 或 FIDO2 安全密钥认证
安全密钥是什么
安全密钥(Security Key) 是一种 FIDO2 / WebAuthn 标准的硬件设备——常见品牌有 YubiKey、Feitian、Thetis 等,形态是一个小小的 USB 设备(部分还支持 NFC / 蓝牙)。它内置密码学芯片,能在设备本地生成密钥对,完全不依赖网络、不存密码、不产生可被截获的验证码。
PingID 支持所有 FIDO2 合规的安全密钥,包括:
- YubiKey 系列(Ping Identity 官方与 Yubico 有战略合作)
- Feitian K9 / K26 / BioPass FIDO2
- Thetis FIDO2
- Google Titan Security Key
为什么安全密钥最安全
相比推送、OTP、生物识别,安全密钥有几个独有的安全优势:
| 特性 | 说明 |
|---|---|
| 抗钓鱼 | FIDO2 协议在认证时校验网站域名,钓鱼网站无法通过 |
| 离线可用 | 完全不依赖手机、不依赖网络,插在电脑上就行 |
| 无推送延迟 | 没有网络链路、没有系统省电策略问题 |
| 物理持有 | 必须手里拿这个小东西才能认证——这就是 possession factor 的极致 |
| 可替代 OTP | YubiKey 也能输出 OTP,PingID 支持 YubiKey OTP 认证 |
怎么用安全密钥
第一步:配对
你需要让公司 IT 把你的安全密钥和账号绑定。通常流程:
- IT 发送一个绑定链接或二维码
- 打开浏览器访问绑定页面
- 按提示插入安全密钥(如果是 NFC 的把手机放在密钥上)
- 按密钥上的按钮确认
- 浏览器会提示绑定成功
第二步:日常使用
登录公司系统时:
- 输完密码 → 浏览器弹出"请使用安全密钥认证"
- 把安全密钥插进电脑(或手机 NFC 靠近)
- 按一下密钥上的按钮(有的是感应,有的需要触控)
- 密钥上的 LED 闪一下或变绿 → 认证完成
整个过程 3 秒以内,比推送到手机再点一下更直接。
YubiKey OTP 模式(特殊)
PingID 也支持把 YubiKey 当 OTP 生成器用——密钥按一下,输出一串可直接填入 OTP 输入框的数字。这种模式下 YubiKey 不需要插在电脑上,适合 SSH 终端、API 密钥场景。
适用人群与场景
安全密钥的成本(几百元一个)决定了它不会全员配发,通常只给以下人群:
- 金融行业交易员、风控人员
- 运维工程师(SSH 生产服务器)
- 高管和 C 级员工
- 合规要求强制 FIDO2 的行业(部分政府、军方客户)
安全密钥 vs 其他方式
| 对比项 | 推送 | OTP | 生物识别 | 安全密钥 |
|---|---|---|---|---|
| 抗钓鱼 | ❌ | ❌ | 系统级 ✅ | ✅ |
| 离线可用 | ❌ | ✅ | 系统级 ✅ | ✅ |
| 需要手机 | ✅ | ✅ | App 内需要 | ❌ |
| 需要成本 | 无 | 无 | 无 | 数百元 |
| 能否丢失 | 手机丢了全废 | 同左 | 同左 | 密钥丢了可重绑定 |
| PingID 支持 | ✅ | ✅ | ✅ | ✅ |
注意事项
- 安全密钥不要丢——丢了立刻联系 IT 解绑旧密钥、绑定新的
- YubiKey 支持多域名多账号,一个 YubiKey 能给多个账号用
- 在虚拟机里使用安全密钥,需要配置 USB 直通或 WebAuthn 桥接
- U2F 老协议密钥在 PingID 上也能用,但建议升级到 FIDO2