多个Firebase项目身份验证访问权限

时间:2020-10-15 23:14:31

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

我有2个带有Firestore的Firebase项目,我们称它们为A和B。 他们两个都有自己的Web客户端。现在,A网络客户端需要读取B消防站数据库,因此我需要允许A客户端在B的某些集合下对消防站执行某些操作。 有没有办法使用B中的A中的A身份验证数据来允许此类操作,同时使用Firestore规则? 有没有一种方法可以从A链接身份验证令牌以允许它们进入B?。

任何机制都行得通。理想的做法是继续使用A中的客户端Web SDK,同时从B和A指向Firestore,并为两者重新使用相同的身份验证。这可能吗?

1 个答案:

答案 0 :(得分:1)

Firestore安全规则无法查看部署它们的项目外部的数据或帐户。您需要通过一些后端API端点路由您的客户端,以便能够检查来自多个来源的数据。

如果您希望A的用户在B上拥有某种“自动”帐户而不必再次登录,则可以在B上创建一个custom token(同样,使用您控制的后端),以允许用户在第二个项目中使用“并行”帐户使用相同的UID进行身份验证。关于B的规则仍将限于该帐户中的立即数据,并且将无法直接访问A中的任何内容。