在用户信息位于另一台服务器上时编写Firebase数据库规则

时间:2016-06-28 11:00:56

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

我需要为与我自己的服务器通信的移动应用程序实现聊天,因此注册的用户信息在我自己的服务器上。因此,如果我使用firebase实时数据库进行聊天,我该如何编写如下安全规则:

".read": "auth != null", ".write": "auth != null"

所以场景是,我的用户信息在我自己的服务器上,在我自己的数据库中。我想使用firebase实现聊天

如何编写阻止任何人从数据库中读取消息的数据库规则(通过点击URL可能?)

1 个答案:

答案 0 :(得分:1)

你的正是Firebase Custom Authentication所针对的情景。

在您的服务器上,您根据自己的用户数据库对用户进行身份验证,然后使用您希望Firebase知道的有关该用户的信息来构建JSON Web令牌。令牌至少应包含uid,但它可能包含您可以在安全规则中访问的更多信息。一旦您创建了JWT,请将其返回给您的用户。

在您的应用中,您可以使用JWT登录Firebase。例如,在Android上,这意味着,您需要call the FirebaseAuth.signInWithCustomToken() method

有关详细信息,请参阅Firebase Database Server documentation