跨设备Passkey在Android同步后无法使用问题咨询
问题描述
我尝试在webauthn.io网站上使用以下参数创建Passkey:
- 用户验证:必填
- 可发现凭证:必填
- 附件类型:支持所有类型
- 证明方式:无
我在Windows 11 23H2(也测试过Windows 10 22H2)系统访问该网站,在搭载Google密码管理器的Android设备上创建Passkey。同一设备使用该Passkey时一切正常,但在另一台已完成Passkey同步的Android设备上使用时,出现如下错误:
且第二台Android设备显示“登录失败”错误。
我还在多个演示网站测试,均出现相同错误,所有测试网站均未使用devicePubKey扩展。
请问为何同步完成的Passkey无法在第二台设备使用?
原因分析与解决方案
同步完整性问题
即使显示同步完成,Passkey的密钥材料或元数据可能未完全同步到第二台设备。可以手动触发Google账号同步(路径:设置>账号>Google>同步>立即同步),完成后重启设备再尝试登录。用户验证流程异常
创建Passkey时设置了用户验证:必填,第二台设备登录时可能未完成有效的用户验证(比如生物识别校验失败、系统验证模块故障)。检查设备的生物识别设置是否正常,确保登录时完成指纹/面部识别等验证步骤。附件类型参数的隐性限制
创建Passkey时设置的附件类型:支持所有类型可能包含对本地设备的绑定逻辑,切换为跨平台类型重新创建Passkey并同步,再测试跨设备登录。版本兼容性问题
两台Android设备的系统版本、Google密码管理器版本不一致,可能导致同步后的Passkey无法被正确解析。确保两台设备均更新至最新的Android系统和Google服务框架版本后再验证。
内容的提问来源于stack exchange,提问作者user22852515

