【问题标题】:Synchronizing Mobile Data (SQLite) with Server Data (Mysql) Horizontally (by row)将移动数据 (SQLite) 与服务器数据 (Mysql) 水平同步(按行)
【发布时间】:2018-11-04 12:56:52
【问题描述】:

我正在构建一个移动应用程序,我希望保存数据应该可以跨多个设备供登录用户使用。

例如,如果用户登录到移动应用程序,只有他的记录(数据)应该被同步(离线可用)可能使用用户唯一 ID。

出于安全原因,我不希望表行中的所有记录都同步,因为其他用户记录也会在那里。

我已经阅读了有关在 sqlite-sync 中使用过滤器的信息,但我没有看到任何可以阻止用户操作过滤器并同步其他用户记录的东西。

仅以安全方式(使用经过身份验证的用户 ID)同步用户记录的最佳方法是什么?

【问题讨论】:

    标签: mysql sqlite synchronization


    【解决方案1】:

    为您的订阅者 ID 使用难以猜测的随机文本字符串。一个经过 Base64 编码的 CHAR(10) 字符串可以携带 50 位随机性。这很难猜。

    当用户进行身份验证(登录)时,将subscriberId 传递给您的移动应用。

    当你创建一个新的用户账户时,使用一个高质量的随机数生成器让她成为一个新的subscriberId。

    不允许通过用户序列号从您的移动应用中查找数据,而只能通过subscriberId。

    如果您的服务器收到对不存在的subscriberId 的请求,则表明有人试图猜测有效值。断开那个人的联系。

    【讨论】:

      猜你喜欢
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-12
      • 2014-09-18
      • 2011-09-24
      相关资源
      最近更新 更多