You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从YubiKey获取无密码登录凭据提示未注册问题如何解决

问题原因
  • 核心原因是你注册YubiKey时未开启*可发现凭据(又称驻留凭据/Resident Key)*配置:无密码无需预先输入用户名的场景,依赖将凭据信息存储在YubiKey本地的驻留凭据模式,默认注册生成的是非驻留凭据,这类凭据不会保存在安全密钥本地,只能通过allowCredentials传入的凭证ID唤醒,因此不传该参数时YubiKey无法识别到对应站点的注册信息。
  • 次要排查点:注册与认证阶段的rpId参数不一致、注册时的用户验证规则与认证阶段不匹配也会触发该报错。
解决方案
  1. 调整django-fido的全局配置,开启驻留凭据要求,在Django项目的settings.py中添加如下配置:
FIDO2_AUTHENTICATOR_SELECTION = {
    # 要求认证器必须存储驻留凭据
    "residentKey": "required",
    # 可根据业务需要调整为required/ discouraged,需保证注册与认证阶段配置一致
    "userVerification": "preferred"
}
  1. 删除之前注册的旧凭据,使用新配置重新完成YubiKey注册,旧的非驻留凭据无法兼容无密码登录模式。
  2. 重新发起无密码认证请求,仅传入challenge和rpId即可正常唤醒YubiKey中的驻留凭据。

补充:不同型号的YubiKey支持的驻留凭据数量有限(YubiKey 5系列通常支持25个以内),如果注册失败可检查是否已达到存储上限。

内容的提问来源于stack exchange,提问作者James Lin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 21:06:00