假设我有一个客户花了很多时间和金钱创建自定义数据库。因此需要额外的数据安全性。他们担心,如果数据库中的信息允许从普通的Web应用程序访问它,则可能会被删除。安全登录是不够的;有人可以登录然后抓取数据。就像任何其他网络应用程序一样,PWA也无法防范这种情况。
我的总体看法是,必须安装的混合应用程序可以更好地保护敏感数据。对于这个项目,我倾向于React-Native或Ionic。
我错了吗?有没有办法保护数据不被PWA中的数据删除?
答案 0 :(得分:3)
无论技术如何,都无法保护浏览器客户端可见的数据 - 简单的HTML或PWA /混合应用程序。
虽然你可以使它变得更加困难。
强制限制客户每分钟/小时/天可以获取的信息量。超过限制的人可以被阻止/起诉/无论如何。
您可以将某些数据作为图像而不是文本返回。会使提取过程变得更加困难,但会使您的应用程序变得复杂并且会占用更多带宽。
如果我们谈论的是原生/混合应用,它可以添加更多层,以使其更安全:
我认为iOS应用程序比Android更安全,因为Android更容易反编译并运行已删除限制的修改版本。
同样,速率限制似乎是最具成本效益的解决方案。
除了速率限制之外,您还可以添加某种模式限制。例如,如果客户端以接近限制的固定间隔请求数据,则认为请求来自机器人并且数据正在被废弃是合乎逻辑的。
答案 1 :(得分:1)
HTTPS会对从API中检索到的数据进行加密,因此无法对其进行嗅探。由一个男人在中间。 存储在Cache和IndexedDB中的数据有些加密,这使得访问变得困难。 您应该做的是保护对身份验证后面的数据的访问。 有人可以获取存储数据的唯一方法是打开开发人员工具并查看InsdexedDB中的数据。现在,您只能看到缓存数据库中已缓存响应。
就像亚历山大所说,混合或本机应用程序不会比网络应用程序更好地保护数据。