代码之家  ›  专栏  ›  技术社区  ›  cnak2

离子天然指纹AIO工艺

  •  1
  • cnak2  · 技术社区  · 7 年前

    我正在试图弄清楚指纹AIO/touchId登录如何与我们的API身份验证配合使用。

    在用户登录并启用touchId后,我们是否需要为将来的指纹登录生成一个过期时间较长的访问令牌?

    通过在线查看该功能的一些示例实现,我希望touchId能够返回某种签名或散列,我们可以根据这些签名或散列进行存储和验证。

    但我所发现的是,大多数情况下,他们只是带着成功或失败的状态返回。

    这里是否有典型的流程?

    任何见解都会有所帮助。

    谢谢

    2 回复  |  直到 7 年前
        1
  •  3
  •   Jin    7 年前

    也许您可以在中构建自己的加密签名存储 离子本机存储

    例如,在调用 指纹aio ,您可以将其调出并放入“指纹选项”>clientId/clientSecret。如果用户成功通过身份验证,那么您可以通过“this.fingerprintOptions.clientId/clientSecret”调用clientId/clientSecret,这将获得您的加密签名,然后将其发送到服务器进行解密。解密后返回成功消息并让用户登录。 这些只是我想与大家分享的概念。

    我的想法是:

    1. 要求用户输入(首次设置)用户名和密码以创建 加密的签名并发送回服务器以存储它,以及 将一个存储在ionic native storage中。(用于发送到服务器 验证)
    2. 当用户进入应用程序时,检查用户是否注册了签名 然后弹出指纹。成功验证后,将自动 登录应用程序。

    注意:如何对签名进行加密和解密取决于您,这只是一个概念。

    离子本机存储可在以下位置找到: https://ionicframework.com/docs/storage/

    希望这对你的想法有所帮助,并为糟糕的英语感到抱歉。

        2
  •  1
  •   deanwilliammills    6 年前

    如果我没弄错的话, 这是不可能的 。指纹扫描仪仅检查指纹是否在设备本身上。因此,如果您在一台设备上有多个用户,它将永远不会工作,因为您不知道登录的用户是谁。该插件确实会在扫描后返回一个代码,但该代码每次都不同,因为你的指纹不会每次都完全相同(由于你手指的位置/角度)。我希望爱奥尼亚能够在一台设备上启用多个用户的指纹登录,并通过指纹实际验证用户