Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/425.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在客户端保护Javascript更改_Javascript_Database_Firebase_Firebase Realtime Database_Google Cloud Firestore - Fatal编程技术网

如何在客户端保护Javascript更改

如何在客户端保护Javascript更改,javascript,database,firebase,firebase-realtime-database,google-cloud-firestore,Javascript,Database,Firebase,Firebase Realtime Database,Google Cloud Firestore,我正在使用firestore数据库开发一个应用程序,我面临某些安全问题。例如,应用程序会在每次提交表单时添加创建和写入日期,并检查写入日期是否延迟,用户必须支付罚金。由于javascript代码是可见的,并且可以在客户端进行更改,因此用户可以修改写入日期并绕过惩罚 为了解决这个问题,我有两个选择:首先,我可以使用服务器端,这会花费我不想要的额外服务器硬件。第二种选择是使用云功能,这比升级服务器硬件的成本要高得多。有没有更好的办法来处理这个问题?没有 如果您希望以用户无法干扰的方式生成数据,那么您

我正在使用firestore数据库开发一个应用程序,我面临某些安全问题。例如,应用程序会在每次提交表单时添加创建和写入日期,并检查写入日期是否延迟,用户必须支付罚金。由于javascript代码是可见的,并且可以在客户端进行更改,因此用户可以修改写入日期并绕过惩罚

为了解决这个问题,我有两个选择:首先,我可以使用服务器端,这会花费我不想要的额外服务器硬件。第二种选择是使用云功能,这比升级服务器硬件的成本要高得多。有没有更好的办法来处理这个问题?

没有


如果您希望以用户无法干扰的方式生成数据,那么您必须在您控制的计算机上生成数据无论是传统托管还是分布式云托管,而不是在用户控制的计算机上。

事实上,您要完全控制系统,它需要以一种不会为用户提供功能的方式进行编程和开发,比如JavaScript


正如您所提到的,使用云功能将是您的最佳选择。我建议你看一看这本书。有很多很好的选择,包括免费的。如果您刚刚启动一个系统/应用程序,那么使用免费层可能是您的最佳选择:

您可能想看看Firebase的文档。这些规则可用于验证直接从客户机执行的读写操作,并且在许多情况下可以满足直接从客户机访问的大部分安全需求


在执行某些签入安全规则被证明是不可能或不可行的情况下,云功能是一个很好的第二层功能。

使用成本更高的云功能->您是否查看了?每月有125K次的免费调用。