相关疑难解决方法(0)

生物识别认证实施

我正在寻找有关使用指纹/touchID/FaceId 从我们的移动应用程序进行替代身份验证的最佳实践。

我们有以下架构:

  • 数据库: PostgreSQL
  • 后端: .net core 2.2 中的 REST API
  • 客户:
    • Angular2 网络客户端
    • Xamarin Forms 中的移动应用<---这就是魔法应该发生的地方

目前,我们的客户使用用户名/密码向 REST API 进行身份验证并接收 JWT 令牌。然后,该令牌会附加到对 API 的每个安全请求。

我想要实现的目标

用户从移动键盘输入密码并不总是很方便,因此我尝试使用指纹、faceID、touchID 等生物识别身份验证来实现一种更简单的登录方式...

在我看来,工作流程如下:

  • 用户首次使用用户名/密码组合从移动应用程序登录
  • 如果设备允许,请要求用户使用生物识别
  • 生成令牌并将其发送到 API
  • 将令牌存储在安全存储(密钥库/钥匙串)中
  • 使用此令牌代替密码登录

我们总是有经典的用户名/密码后备。

我在 stackoverflow 上阅读了很多帖子,并在 Google 上搜索了解决方案,但似乎没有一个解释后端安全实现的用例。

我已经在我的应用程序移动设备上实现了指纹扫描仪并获得成功回调。我在我的 Xamarin 项目中使用这个库来获取生物识别身份验证: https: //github.com/smstuebe/xamarin-fingerprint

您能告诉我如何实施吗?在后端和客户端之间存储通用令牌是最好的方法吗?密钥库/钥匙串安全吗?我错过了什么吗?

非常感谢,

问候

security android ios xamarin

3
推荐指数
1
解决办法
4734
查看次数

标签 统计

android ×1

ios ×1

security ×1

xamarin ×1