google-cloud-firestore - 自定义 Rest API 和 Firestore 数据库
问题描述
我一直在关注一个教程,展示如何在 Javascript 中构建自定义 Rest API,然后将其部署到 Firebase Functions,然后可用于与 Firestore 数据库通信。
一切似乎都运行良好,但有一件事困扰着我。
我的终点之一是url-to-api/read,它获取数据库中的所有记录。我怎样才能阻止任何人简单地将该 url 添加到浏览器中并读取所有数据。
我尝试了各种 Firestore 规则,但似乎没有任何区别,将 /read 添加到 API URL 的末尾仍会显示浏览器中的所有数据。
解决方案
Cloud Functions 使用 Admin SDK 访问 Firebase,这意味着它们绕过安全规则并可以不受限制地访问数据库。
在这种情况下,您可以保护用户可以执行的操作。例如,您可以要求他们传递他们的 ID 令牌,并使用它来确定他们的授权,如这些实施授权的 HTTP 端点和实施授权的 JSON API 的示例所示。
推荐阅读
- hibernate - Hibernate 的 session.save 如何代理一个瞬态对象?
- flutter - 将 'obscureText' 标志设置为 true 会使文本字段在它们没有聚焦时清晰 - 为什么?
- odoo - 如何在odoo v10中将“day, hh:mm:ss”格式转换为hh:mm
- c - 在 C 中创建一个字符串后,我试图将其内容复制到该字符串的文件在我实际告诉它之前执行此操作
- git - github中是否有任何选项可以从其他用户的存储库中获取代码?
- php - 从今天和明天添加数组记录
- android - 有什么方法可以将我的手机摄像头信号连接到 ROS?
- editor - WinEdt中的鼠标滚轮滚动问题
- node.js - 使用机器人自动创建 youtube 播放列表和添加过滤视频
- node.js - 初始化脚本上的 Sanity Studio CMS(新贵)