如何保护Chrome打包应用程序上的数据

How to secure data on a Chrome Packaged app?

本文关键字:应用 数据 包应用 程序上 Chrome 何保护 保护      更新时间:2023-09-26

我正在为我公司的客户构建一个Chrome应用程序。这些客户充当服务提供者(称其为服务提供者),并拥有自己的用户(称其为终端用户),这些用户与客户共享关键数据。我正在构建的应用程序将由我的客户的员工使用(称他们为代理)。该应用程序将处理服务提供商管理的最终用户的关键数据。

虽然服务提供商雇佣了他/她的代理,并且有一定的控制权,但从我的角度来看,我不能超过一定程度地信任代理。我希望我的应用程序提供安全的数据,将由应用程序处理。

我在我的chrome应用程序中使用文件系统API和indexedDB API。使用这些存储的数据可以使用web开发控制台(右键单击-> Inspect Element 右键单击-> Inspect Background Page)。

为了确保代理不能访问数据,我想在分发打包的应用程序时禁用Web开发工具。然而,我没有发现这样的API或提及保护这些数据。这可能吗?如果是,那么怎么做,如果不是,我有什么选择?

我明白截图仍然是可能的,高级用户可能会去寻找系统磁盘上的实际数据文件,所以请不要提及这些点。这些代理是入门级操作符(大多数),我希望数据尽可能安全(并且欢迎额外的指针)。

不,完全安全地禁用inspect是不可能的。如果我没记错的话(当然这是一个bug),即使企业策略锁定生效,chrome://inspect显然也能正常工作。顺便说一下,当一个应用程序被打包部署/加载,而不是加载它进行开发时,默认情况下,Dev Tools是禁用的。

最坏的情况是,所有客户端数据都被认为受到了损害。为了确保安全,您需要将数据保存在一个中央的、受到良好保护的服务器上,拥有一个强大的身份验证系统,并在需要知道的基础上提供数据(实现某种形式的acl ?)。

您可以通过使用Native Client模块加密数据来阻止偶然攻击,但最终您只是混淆了加密代码。一个有决心的攻击者可以破坏本机代码模块并解密数据。

但是说真的如果你只需要一张截图就能打败你的数据保护,那么考虑一下一张纸和一支铅笔也可以。你在不该担心的地方担心太多了。

还有,这里有一些指针