我想知道数据库的创建者是否可以将它们都设置为false,而不是可以读写?
{
"rules": {
".read": false,
".write": false
}
}
如果是这样,包括创建者在内没有人可以读写,那么我该如何做到这一点,使我成为唯一可以读写的人?
使用您显示的安全规则,完全拒绝了来自移动客户端和Web客户端的所有直接访问,无论用户如何在您的应用程序中进行身份验证。
但是,所有使用服务帐户初始化的后端SDK,尤其是Firebase Admin SDK,将始终绕过安全规则。这意味着,例如,在Cloud Functions中运行的代码将不会受到影响。此帐户不一定是数据库的“创建者”,它只是添加到项目中的Cloud IAM帐户。
Firebase控制台也绕过安全规则。
这意味着您可以代表最终用户编写与数据库一起使用的后端服务和API端点,而无需授予它们对数据的任何直接访问权。
如果您只希望一个特定的用户(通过Firebase进行身份验证)能够从Web或移动应用程序读取和写入数据,则必须使用给定的帐户UID将其编码到安全规则中。