我想为我的应用实现 Apple 的 touchId/FaceId。目前,该应用程序具有登录屏幕,用户在其中输入用户 ID 和密码。我将用户 ID 和密码提交到后端服务器(假设位于https://example.com/Login?username=abc&password=xyz@123 (只是一个示例))。后端服务器向我返回身份验证 cookie。我用来访问其余 api 服务的 cookie 我正在阅读许多文章,这些文章讲述了如何将 Apple 的 touch Id 与https://developer.apple.com/documentation/localauthentication框架一起使用。它显示通用弹出窗口,询问是否使用 touch Id,如果 touch Id 身份验证成功则返回 true。
我的问题出现在这里。如果我使用 touch Id 并且身份验证成功。我该如何进行?基本上,我需要身份验证 cookie 才能访问其余的 api。
我假设的一个流程是。当用户在我的应用程序的设置页面中启用 touchId/faceId 时,我将用户凭据存储在钥匙串中。一旦用户注销,并且用户使用触摸 ID 并且身份验证成功,我访问钥匙串,检索用户密码,调用 api https://example.com/Login?username=abc&password=xyz@123获取身份验证 cookie 并使用它们来访问其余的 web api。
我的假设正确吗?还是有更好的实现方式?任何示例或参考都会很棒。
谢谢。