锁定Firebase数据库对特定应用程序的访问权限

时间:2018-08-25 14:03:03

标签: firebase firebase-realtime-database firebase-authentication firebase-security-rules

我认为从网络上搜索这在技术上是不可能的,但我想再次询问以防万一。

我有一个使用Firebase的应用程序。通过安全规则仅对授权用户进行读写锁定,但是我希望某些信息希望未授权用户能够访问(因此,我不必在他们面前放登录墙,而不会造成流失)。

我想知道的是,有什么方法可以锁定只有 my 应用可以调用数据库的读取访问权限吗?我知道我可以锁定域以防止某人编写本地scraper,但是如何阻止某人克隆和重新设置皮肤外观并将其指向同一个后端呢?可以使用您的证书指纹来实现这一点吗?

2 个答案:

答案 0 :(得分:2)

无法将对数据库的访问限制为仅对应用程序的访问。但这与Firebase API的基于云的本质不匹配。原则上,任何知道数据库URL的人都可以访问它,而安全规则是确保所有访问权限得到授权的 方法。

请注意,安全规则不是万事俱备的方法:您可以要求登录数据库的某些部分,而让其他部分公开可读。但是您不能使公开可读的部分只能由您自己的应用程序读取。

以前关于同一主题的一些问题:

答案 1 :(得分:1)

我找到了一个可能对您或任何有类似问题的人有所帮助的解决方案。我在这个问题中回答了:

Restricting Cloud Firestore to a specific domain