我还没有在我的应用程序中实现Firebase Auth。因此,不能为it.As身份验证提供安全规则是提供读写规则的必要条件。现在Firebase正在为它发送安全警告。有什么办法可以避免这些警告而不用在我的应用程序中实现Auth呢?就像现在一样,它将需要更多的返工。
发布于 2020-05-20 21:01:30
我知道实现规则可能很烦人,但实际上没有其他方法来保护您的数据库。一旦你和任何人分享你的游戏,他们就会有足够的信息写入你的数据库。
在这一点上,您可以做一些事情:
1)如果只需要从数据库中读取,就可以编写如下内容:
{
"rules": {
".read": true,
".write": false
}
}而且您只能通过控制台或管理SDK (例如通过云函数)更新它。
2) 匿名认证实际上很容易完成(实际上是三行代码),可以让您的规则变得更详细。这是我在使用匿名身份验证的游戏中使用的规则(这是一个开玩笑的“猪点击器”游戏,模仿“牛点击器”,因此您可以单击其中一只猪来更改它的颜色,但其他用户只能看到您的猪的颜色)。
{
"rules": {
"pigs": {
".read": true,
".write": "auth.uid != null"
},
".read": false,
".write": false
}
}这将使您只能写入/pigs/${auth.UserId},并且身份验证将非常简单,如下所示:
var auth = FirebaseAuth.DefaultInstance;
if (auth.UserId == null) {
await auth.SignInAnonymouslyAsync();
}如果这有帮助的话请告诉我!
-帕特里克
https://stackoverflow.com/questions/61915355
复制相似问题