firebase-realtime-database - Firebase 安全规则运营费用
问题描述
我最近考虑了我的 Firebase 服务的各种安全问题,并遇到了一个与 Firebase 定价相关的有趣问题。问题很简单,如下所示:
如果实时数据库的一组安全规则在安全规则的验证过程中读取自身内部的一些数据(rtdb),那么这种用于验证目的的服务器读取是否受 rtdb 计费的任何部分约束?例如,如果一行规则需要匹配 rtdb 的 json 树中的“角色”数据,那么这种验证是否免于 rtdb 定价的下载费用($1/GB)或连接配额(同时连接 200,000)?这可能是真的,因为无论如何验证都必须读取数据以查明请求是否符合规则。
如果云firestore的一组安全规则在安全规则的验证中读取了自身内部(firestore)的一些数据,那么这种用于验证的数据读取是否需要支付firestore的读取操作费用(洛杉矶位置每100,000个文档0.036美元)?例如,要验证一行
allow read if resource.data.visibility == 'public'
,该规则必须检索数据,就像移动客户端在没有任何安全规则的情况下读取此类数据一样。
希望这个问题能传达给社区中的大师!先感谢您 [:
解决方案
火力基地在这里
在实时数据库安全规则内完成的读取是免费的。它们也不算作持久连接。
访问Firestore安全规则中的当前
resource
或未来request.resource
数据不收费。您执行的额外文档读取(带有、和) 是收费的。get()
getAfter()
exists()
existsAfter()
有关后者的更多信息,请参阅 Firebase 文档中关于访问调用和 Firestore 安全规则中的定价。
推荐阅读
- c++ - 基本正则表达式 C++ - 正斜杠和点
- ruby-on-rails - rspec:失败/错误:_send_(方法,文件)。syntaxError:104:语法错误,意外的keyword_end,期待输入结束
- database - 如何将我的 forge 模型连接到 Postgres 数据库?
- reactjs - 如何在一个项目的 ReactJs 中使用服务器端的外部 API?
- reactjs - 如何将 AWS 与 Next.js 一起使用?
- reactjs - 有什么方法可以隐藏“未找到结果”下面的消息
- http - NestJS 将 Authorization 标头传递给 HttpService
- java - 如何在 android 的 Drawable 类中的 drawable 上设置 ClickListener?
- reactjs - 未捕获的类型错误:无法在 React 开发人员工具中的 Material UI 的 useStyles 中读取 null 的属性“当前”
- java - 为什么我在我的日志文件中看不到我的 log4j 结果?