这里有一个安全规则可以限制仅对特定用户的访问:
Frank的回答真的很有帮助,而且很直接,但是如果我不使用firestore身份验证怎么办?
所有我想实现的是授予访问请求来自我的域…只有域名,没有身份验证…所以没有人可以使用邮差例如发送GET或POST请求到我的firestore数据库。
我能不能这样说:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if request.origin.matches(/<https://myCompany.com>/);
}
}
}
任何帮助都将非常感激。
没有办法限制来自特定域的请求,这实际上也很容易被欺骗。像Firebase App Check这样的东西会有所帮助,但这还不能在Firestore上使用。
限制谁可以访问数据库的常用方法是:
- 要求用户登录到Firebase Authentication
- 要求他们验证他们的电子邮件地址。
- 在安全规则中验证
request.auth.token.email
的email地址
也看到:
- 将Cloud Firestore限制到特定域(如果我以前见过,我可能会将您的问题标记为副本)
- 限制Firestore登录到特定的域
在1922年10月,App Check似乎是这个用例的功能性解决方案。