我正在创建Flutter移动应用程序,并希望使用Cloud Firestore存储客户端应访问的一些数据。到目前为止,还没有用户特定的数据,因此我不希望我的用户必须登录该应用程序。我需要指定哪些安全规则以允许客户端读取数据,但是拒绝公共访问(从应用程序的“外部”)?
这些是我到目前为止设置的安全规则。
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow write: if false;
allow read: if request.auth.uid != null;
}
}
}
根据身份验证->登录方法,我已启用匿名身份验证。但是我不确定安全规则是否正确,以及在客户端需要什么Dart代码才能获得所需的行为(不需要客户端指定凭据,而是保护我的数据以防止从应用程序外部访问)。>
答案 0 :(得分:2)
所以我不希望我的用户必须登录应用程序。
但是您对它们进行身份验证。即使是匿名身份验证,也仍然是身份验证。
我需要指定哪些安全规则以允许客户端读取数据,但是拒绝公共访问(从应用程序的“外部”)?
您已经拥有的确切规则。
但是我不确定安全规则是否正确。
规则正确。
我需要在客户端中使用什么Dart代码才能获得所需的行为(无需客户端指定凭据,而是保护我的数据以防止从应用程序外部访问)。
您的代码应类似于this。