首页 > 解决方案 > Cloud Functions、Cloud Firestore、Cloud Storage:如何防范机器人?

问题描述

我已经将 ReCAPTCHA 用于 Android 应用程序客户端(当然,我还实现了它的服务器端验证)。

但是,此 ReCAPTCHA 仅在一项活动中实施。但是,当然,黑客可以修改应用程序。例如:

因此,我想在 Cloud Functions 中检测机器人和垃圾邮件请求,然后在 Cloud Firestore 中,然后在 Cloud Storage 中检测以下访问:读取、写入、函数调用。它可以让我防止不需要的内容被保存在 Firestore 中,例如(垃圾邮件等),并避免超出我的每月计费配额(例如,因为对 Firestore 的垃圾邮件请求)。

是否可以?如何?

标签: firebasegoogle-cloud-firestoregoogle-cloud-functionsgoogle-cloud-storagerecaptcha

解决方案


这些产品没有“垃圾邮件检测”。您的安全规则将决定谁可以访问哪些数据。如果您没有适当的安全规则并允许公共访问,那么任何人都可以获取该数据,并且在发生这种情况时您将为此付费。这是可公开访问的云服务的本质。

如果您想更好地控制这些产品中的数据,您可以使用安全规则阻止所有直接公共访问,并强制客户端通过您控制的后端。后端可以根据您确定的任何标准尝试应用一些逻辑来确定它是否是“垃圾邮件”。对此没有简单的算法 - 您需要定义“垃圾邮件”的含义,并在符合您的标准时拒绝该请求。

谷歌的云产品确实有一些滥用检测功能,但可能需要大量滥用才能触发警报。如果您怀疑存在滥用行为,请务必收集信息并将其发送给Firebase 支持以寻求帮助。


推荐阅读