JSON Store 用户密码被使用如何处理?

How to handle JSON Store if user's password has been used?

我正在使用 IBM MobileFirst 6.3 构建移动应用程序。该应用程序将按如下方式工作:-

  1. 用户必须输入用户名和密码才能访问应用程序功能。

  2. JSON Store 用于加密存储用户数据。

  3. 首次使用应用程序JSON将创建商店,并在成功登录后由用户密码[JSON STORE KEY]保护。

  4. 允许用户在任何环境[移动或网络]中更改密码。

  5. 假设一个场景,如果用户在 Web 中更改了密码并尝试在移动应用程序中登录。登录会成功,但JSON由于用户更改了密码,商店无法初始化。

移动和网络应用使用相同的网络服务,我们不允许为移动应用修改网络服务。

我们如何处理这种情况?

您的意思是您的移动应用程序登录基于 JSONStore?意思是,为了登录到移动应用程序,您需要打开您的 JSONStore?

我完全不相信这是正确的方法。 您将密码存储在设备上。不是特别安全...

使事情复杂化的是,您还希望能够从 Web 和移动设备更改密码,正如您发现的那样 - 在使用旧密码首次登录然后以某种方式登录之前,您无法在移动设备上更改密码根据最终用户在网络版中输入的密码,以编程方式触发密码更改。

如您所见,这造成了 Web 和移动应用之间缺乏同步的情况。

如果您打算允许更改密码,也许您不应该这样做。

我的建议是使用密码的集中位置,例如连接到 Worklight Server 的 LDAP 或类似服务器。以及不要以这种方式将您的登录基于 JSONStore。

您可以将 JSONStore 用于 离线 身份验证,但不能用于在线身份验证。看这里:Offline authentication tutorial.

The answer to Worklight Online + Offline Authentication 描述了一种我认为可以在您的场景中使用的方法。