我还没有在我的应用中实现Firebase Auth,所以无法为它提供安全规则,因为认证是提供读写规则的必要条件,现在Firebase正在为它发送安全警告,有什么办法可以让我在不实现Auth的情况下躲避这些警告吗? 因为现在它需要更多的返工。
我知道实现规则是很烦人的,但是真的没有其他方法来保护你的数据库。当你与任何人分享你的游戏的那一刻,他们就会有足够的信息写入你的数据库。
这时,有几件事你可以做。
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();
}
让我知道,如果有帮助!
--帕特里克