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

生物识别重新登录实现疑问:加密内容与登出后登录逻辑

生物识别登录功能核心问题解答

问题1:步骤4应加密保存Token还是用户名/密码?

优先选择加密保存refresh_token,绝对不建议存储用户名/密码,具体原因和解决方案如下:

  • 用户名/密码是账号最高敏感信息,即便加密存储,一旦被破解就会直接导致账号被盗,风险不可控,完全不适合持久化存储。
  • 针对refresh_token的过期问题,可通过两种方式规避:
    • 生物识别验证通过后,立即用保存的refresh_token调用后端刷新接口,换取新的access_token和refresh_token,同时更新本地加密存储的refresh_token,保证存储的始终是有效凭证。
    • 后端设置合理的refresh_token有效期(如7-30天),当refresh_token过期时,引导用户重新输入用户名/密码登录,完成后再重新开启生物识别认证流程。
  • 存储必须使用系统级安全容器:比如iOS的Keychain、Android的EncryptedSharedPreferences,这类存储自带硬件级加密,安全性远高于自定义加密实现。

问题2:登出后如何通过生物识别重新登录?是否需要禁用生物识别?

步骤6的生物识别登录完全依赖步骤4保存的加密数据,不需要在登出时禁用生物识别,只需调整登出和登录的逻辑:

  • 用户主动登出时,仅清除内存中的access_token,保留加密存储的refresh_token(除非用户主动关闭生物识别功能)。
  • 生物识别重新登录流程:
    1. 验证用户生物识别信息,通过后取出加密存储的refresh_token。
    2. 调用后端token刷新接口,用refresh_token换取新的access_token和refresh_token。
    3. 刷新成功则直接进入应用;若refresh_token已过期,提示用户重新输入用户名/密码登录,完成后再重新开启生物识别认证。
  • 若用户执行彻底注销操作(而非临时登出),则同时清除加密存储的refresh_token,并关闭生物识别开关。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 14:52:10