我是一名新的android开发人员,因此对firebase规则和电话身份验证感到困惑。 我正在为调度系统编写应用程序。 现在,我正在使用电话号码来验证用户身份。 在我的计划中,我想将约会保存在我的实时数据库Firebase中,并且要为每个电话号码添加用户信息,例如姓名和约会。 第一个问题是如何为每个电话创建一个用户?我可以通过电话身份验证来做到这一点,还是需要创建一个用户对象并将其保存在实时数据库中? 第二个问题是关于安全性。我希望我的用户能够看到所有免费约会并安排一个或多个约会。我需要为每个用户设置哪些规则?
答案 0 :(得分:1)
您可以通过电话号码使用here来使用Firebase身份验证。用户进行身份验证后,便会为该人创建一个唯一的Uid,您可以使用该Uid使用auth
变量获取User数据。这是根据here
Firebaseuser
如果您想为用户创建自定义字段,我建议您获取Uid,然后使用Uid作为主键在说/Users
的用户中创建用户数据库,就像{{ 1}}
如果您只希望经过身份验证的用户看到免费约会,则可以执行以下操作,假设root中的“约会”分支包含可用的空闲时段。
/Users/Uid
然后您可以通过代码操作数据库,可能将空闲时间从约会转移到{
"rules": {
"Appointments": {
"freeSlots": {
".read": "$uid === auth.uid"
}
}
}
}
然后,如果您希望用户仅看到其广告位,则可以编写如下规则
/User/Uid
此处{
"rules": {
"Users": {
"$uid": {
".write": "$uid === auth.uid"
".read": "$uid === auth.uid"
}
}
}
}
确保用户仅读取属于他们的数据。
您可以找到有关安全规则here
的更多帮助希望这对您有帮助吗?
答案 1 :(得分:0)
您已经实现了Firebase电话认证,下一步是使用每个用户的身份验证随附的唯一uid字符串为每个用户创建一个文档,以存储所需的信息。
,以增加谁可以读/写您必须编写数据库规则Info here
的安全性