【问题标题】:Firestore Rules to give data access to specific app [duplicate]Firestore 规则以授予对特定应用程序的数据访问权限 [重复]
【发布时间】:2020-11-10 01:25:48
【问题描述】:

我目前正在构建两个应用程序(管理员和客户),并且都已添加到单个 firebase 项目中。这两个应用程序都使用 Firebase Auth(电话号码)注册过程。管理应用程序主要将详细信息保存在 Firestore 数据库中,而客户应用程序只能获取这些详细信息以供查看。

目前,我没有为它们定义任何规则,因为我在 Firestore/Firebase 规则方面有点新。但是我想添加一些规则,这些规则将允许仅获取我在我的管理应用所在的同一个 Firebase 项目中添加的那些应用。我可能错了,但我认为任何人都可以通过获得我在收藏中使用的名称或密钥来访问我的管理数据。

那么有什么方法或规则可以授予我在同一个 firebase 项目中添加的特定应用程序的数据访问权限?

【问题讨论】:

    标签: android firebase google-cloud-firestore firebase-security


    【解决方案1】:

    无法在 Firebase 安全规则中限制对“仅此应用”的访问。任何人都可以从您的应用中获取配置数据,并使用它来调用与您的应用相同的 API。

    因此,您需要确保您的安全规则对您想要的逻辑进行建模。您通常会在客户端应用程序代码和服务器端安全规则之间复制一些数据访问逻辑。这意味着您正在建模可以采取某些行动,而不是他们使用什么代码/应用程序来执行此操作。

    另见:

    【讨论】:

    • 谢谢,弗兰克。但是我已经使用了firebase auth,并且已经在规则中添加了auth != null。正如你所说replicate some of the data access logic between your client-side application code,我有点困惑。那么我还需要在客户端代码中添加什么其他内容吗?如果您提供任何示例链接,将会很有帮助。
    • auth != null 实际上已经是一个很好的例子:你的代码让用户登录,你的规则确保用户登录。除此之外,很难给出广泛的例子,但这些文档是一个很好的起点:firebase.google.com/docs/rules/get-started
    猜你喜欢
    • 2017-01-25
    • 1970-01-01
    • 2020-09-05
    • 1970-01-01
    • 2011-08-30
    • 2016-02-14
    • 1970-01-01
    • 1970-01-01
    • 2012-09-21
    相关资源
    最近更新 更多