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