我如何限制访问firestore数据库,只有来自特定域的请求?



这里有一个安全规则可以限制仅对特定用户的访问:

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上使用。

限制谁可以访问数据库的常用方法是:

  1. 要求用户登录到Firebase Authentication
  2. 要求他们验证他们的电子邮件地址。
  3. 在安全规则中验证request.auth.token.email的email地址

也看到:

  • 将Cloud Firestore限制到特定域(如果我以前见过,我可能会将您的问题标记为副本)
  • 限制Firestore登录到特定的域

在1922年10月,App Check似乎是这个用例的功能性解决方案。

最新更新