9

我正在开发一个具有用户身份验证的企业应用程序,每当用户尝试通过 Web 服务登录时,它将在服务器端进行验证。

我需要使用 iOS touch id 进行身份验证,因为 Apple 从 iOS8 发布了用于 3rd 方应用程序的 API。

我可以找到有关如何使用 Touch ID 进行本地身份验证的教程,但我无法理解如何将我的用户凭据与 Touch ID 映射。

确切的要求是用户应该能够使用指纹扫描仪(即使用 Touch ID)登录应用程序,但也应该进行后端验证。

如何使用 Touch ID 指纹映射用户凭据?可能吗?如果是,在哪里存储本地或服务器端的映射?

任何人都可以帮助我理解/实现相同的内容。

提前致谢。

4

1 回答 1

1

使用 TouchID 非常容易,对于您的情况,有两种方法来验证用户:-

假设:-当用户登录时,我们在应用程序端存储秘密令牌,这有助于我们验证用户。

  1. 使用 TouchID(iOS 8):-

    • 使用 Touch ID,如果用户指纹有效,我们将从 LAContext 用户身份验证方法获得成功回调。之后,如果需要,我们可以直接确认服务器,并且不需要在服务器上验证用户,因为它已经使用指纹扫描验证了他们自己。
    • 我们必须需要处理身份验证回退机制来处理诸如“未能检测到指纹等”的情况,在这种情况下,我们需要使用自定义 PIN 或设备密码对用户进行身份验证。
  2. 自定义 PIN/设备密码(iOS 9):-

    • 我们可以使用自定义 PIN 或设备密码来验证用户。
    • 如果我们使用自定义 PIN 对用户进行身份验证,则我们需要在服务器上存储用户身份验证 PIN 并在每次从后台访问应用程序时对用户进行身份验证。
    • 如果我们使用设备密码(iOS 9)对用户进行身份验证,当用户输入正确的 PIN 时,我们将在 LAContext 用户身份验证方法中获得成功调用。之后,我们可以确认服务器或直接将应用程序访问权限授予用户。
于 2017-02-26T08:57:48.930 回答