0

我已经创建了一个android应用并使用firebase作为电子邮件注册和身份验证的手段。注册后,用户可以将清单项目存储在数据库中。所以我的问题是我将如何设置Firebase身份验证规则,以便特定用户只能访问他们输入的数据。现在,每个人都可以在数据库中读写。由于电子邮件认证,我不担心写入部分。提前致谢!通过电子邮件进行的Firebase数据库身份验证

{ 
    "rules": { 
    ".read": "auth != null", 
    ".write": "auth != null" 
    } 
} 

我的数据的基础上设置这样:Database

回答

1

您可以使用built-in variables达到这一点。

的火力地堡的数据库规则包括内置变量和函数,使您可以参考其他路径,服务器端的时间戳,认证信息,等等。以下是一个规则示例,该规则将认证用户的写入权限授予/ users,其中是通过Firebase认证获得的用户的ID。

{ 
    "rules": { 
    "users": { 
     "$uid": { 
     ".write": "$uid === auth.uid" 
     } 
    } 
    } 
} 

链接

https://firebase.google.com/docs/database/security/

+0

我得到了它的基本精神,但我怎么才能访问是在数据库已经是电子邮件。我很抱歉,我是一名android和firebase的初学者。 – somethingelse

+0

/users/04VsBqpZmseOdJCKj4r8BP4MVem2/email也许?这取决于如何构建数据。 –

+0

感谢您的照片。哪里期待收到电子邮件?在这张照片中,我看不到与电子邮件相关的任何字段。如果你想从Predefined Variables中获取它,你可以从变量auth.token中获取它。例如auth.token.email_verified您的规则。 –

相关问题