Cloud Firestore 安全规则 - 文档中的单个受保护字段

2024-05-16

我想要一个名为的只读属性suspendedProfile in a user具有当前登录用户的读/写访问权限的所有其他属性的文档。有没有办法通过简单的安全规则来做到这一点?

我想到了2个解决方案:

  1. 禁止修改属性的写入,例如allow write: if request.resource.data.suspendedProfile == null;
  2. a /secure集合与allow read;在 - 的里面user文档

我认为第一个选项更好,所有与用户相关的属性都在一个文档中,但我很想听听您的想法。还有其他更简单的方法来实现这一目标吗?


我想我设法为自己的答案找到解决方案使用 Firebase 文档 https://firebase.google.com/docs/firestore/security/secure-data#the_resource_variable.

// A user can update a product reviews, but they can't change
// the headline.
// Also, they should only be able up update their own product review,
// and they still have to list themselves as an author
allow update: if request.resource.data.headline == resource.data.headline
                    && resource.data.authorID == request.auth.userID
                    && request.resource.data.authorID == request.auth.userID;

所以就我而言,我只会allow update: if request.resource.data.suspendedProfile == resource.data.suspendedProfile

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cloud Firestore 安全规则 - 文档中的单个受保护字段 的相关文章

  • 无法在树莓派4上的python中导入cloud firestore

    我尝试在 python 中的树莓派上安装 firebase 但出现了找不到 firestore 模型的错误 但我已经安装了它 问题是安装可以在我的笔记本电脑上运行 但当我尝试在树莓派 4 上安装时 它一直出现错误 File 6 webcam
  • 快速 Firebase 在异步任务中返回

    我在 swift 2 中遇到了适用于 iOS 的 Firebase SDK 的问题 我正在尝试将图片设置为从 Firebase 存储下载 当我调用该函数时 它返回 nil 我认为这是因为 Firebase sdk 提供的下载任务是异步的 因
  • 在哪里可以看到在我的 Google Action 履行函数中记录的 console.log 消息,或者如何简单地记录调试日志文本?

    我正在开发一个使用满足感的动作 我正在使用内联编辑器 我将硬编码值移至 FireStore 中 以便数据存储在函数本身内 FireStore 请求没有按预期进行 尽管履行调用没有失败 但它没有找到它应该找到的信息 我正在尝试旧的好conso
  • 从 Cloud Run 实例调用 Google Cloud API 的延迟

    当我出于某种原因从 Cloud Run 实例调用其他云 API 时 响应会出现巨大的延迟 一切都在 1 个项目内进行 即使从本地计算机调用也更快 几秒钟 但部署在云中 某些请求需要几分钟才能完成 据我所知 它与所有 API 相关 除了 Fi
  • 使用 puppeteer 部署 firebase 功能时说即使我启用了 --no-sandbox 也找不到 chrome

    我正在尝试将 firebase 函数部署到使用 puppeteer 的 firebase 项目 我让它在本地计算机上运行 但是当它尝试在 firebase 上运行时 我收到此错误 Exception from a finished func
  • 在 firebase 函数中设置 dotenv

    我正在尝试将我制作的小型节点表达应用程序移动到 firebase 函数中 该文件有dotenv变量 早些时候我想如果我只是部署并依赖 dotenv 它会起作用 但那并没有发生 于是 我去了firebase的环境配置文章了解如何设置 env
  • Firestore从集合中获取文档ID

    我正在尝试使用 id 检索我的文档 但无法弄清楚 目前我像这样检索我的文档 const racesCollection AngularFirestoreCollection
  • 更改日期调用一次功能

    我有一个非常简单的问题 我似乎无法弄清楚 我使用 AngularJS 和 Firebase 作为后端 基本上 我有一个函数 我想每天在午夜运行一次 以便进行值重置 将某些对象属性设置为 false 等 当我手动运行该函数时 该函数运行良好并
  • Firebase:允许读取属性名称,但不允许读取内容

    允许任何人读取属性名称 但阻止未经授权的人读取值的内容的正确数据库规则是什么 这是一个订单系统 我在设置属性值之前检查是否存在相同的 ID 或者还有其他方法可以做到这一点吗 谢谢 这是我到目前为止所想到的 rules orders read
  • Firebase 验证电子邮件模板编辑

    是否有或将会有任何方式来编辑验证电子邮件模板或使用不同的语言 而不仅仅是英语 对于非英语用户来说 用户体验很糟糕 请您分享一下此功能的路线图 谢谢 托马斯 在发送 firebase 电子邮件之前 您可以设置模板的语言 您可以在firebas
  • 检查 Firebase 中是否存在用户名[重复]

    这个问题在这里已经有答案了 我有一个这样的数据库 users UID1 用户名 用户 1 UID2 Username of user 2 UID3 Username of user 3 UID4 Username of user 4 等等
  • 如何通过 firebase 托管将我的主页重定向到随机 url?

    我正在尝试使用 firebase 托管通过 302 重定向来重定向我的主页 redirects source destination what do i put here type 302 在我的公共文件夹中 有index html 404
  • 在flutter中从cloud_firestore删除文档

    我正在返回一个streamBuilder在streamBuider内部 它返回一个小部件 现在我已经用可忽略的方式包装了一个小部件 以便我可以从 cloud firestore 的集合中删除该文档 showingTheSelectedDat
  • 如何在 Firebase 规则中限制用户根据电话号码读取/写入数据

    目前 我已经实现了类似于下面的项目文件夹结构 项目文件夹结构 https i stack imgur com gXkbO png 我已在代码中添加了电话身份验证 现在 在 Firebase 规则的帮助下 我想根据经过身份验证的电话号码限制我
  • Firebase 存储 URL 不断随着新令牌的变化而变化

    我正在尝试使用 firebase 数据库和存储构建社交媒体应用程序 以下是预期的流程 用户上传个人资料图片 该图片存储在当前用户文件夹中的 Firebase 存储中 并且 URL 存储在 Firebase 数据库中以便快速访问 工作正常 用
  • 除了推送收据之外,关闭 FireBase 调配还会影响分析吗?

    The Firebase 云消息传递文档 https firebase google com docs cloud messaging ios client说他们混合了一些方法来获取推送通知令牌并记录接收推送通知 在里面FIR 分析文档 h
  • 使用 firebase 过滤分页列表

    我正在尝试使用 firebase 和 swift 制作一个分页过滤列表 但请随意用您最喜欢的编程语言回答 而不过滤客户端上检索到的数据 假设我有这个结构 matches match 1 name Match 1 users user 1 o
  • 有没有办法确定 Firebase 用户的 UID 是否有效?

    我正在构建一个服务器路由 我希望限制该路由仅供经过身份验证的用户使用 我计划将带有 POST 的 user uid 发送到此路由 并且我想验证该 UID 是否存在于 Firebase 中 我知道我可以在 Firebase 中手动添加 UID
  • Android Studio - 无法解析符号“firebase”

    我目前正在将应用程序升级到新的 Firebase 版本 我按照指南进行操作 包括classpath com google gms google services 3 0 0 在我的项目 build gradle 的依赖项中以及compile
  • 使用部分字符串匹配进行 Firebase 查询[重复]

    这个问题在这里已经有答案了 假设我有一个简单的 firebase 实时数据库结构 其中关键是username其值为userid 现在我想搜索userid by username 如果用户名匹配 这很容易 但如何获得部分匹配的答案 更清楚地说

随机推荐

  • 如何在 iOS 中将 Firebase 对象持久保存到磁盘?

    看起来Firebase http www firebase comiOS 实现不支持客户端模型的离线缓存 这在实践中意味着 对于需要身份验证的 Firebase 应用程序 您需要首先进行身份验证并等待 Firebase 完成登录 检查用户身
  • 如何使QTableView类的restoreState()和saveState()正常工作?

    首先 我想说 我的问题已经在这里讨论过 并且这里是 https stackoverflow com questions 1163030 qt qtableview and horizontalheader restorestate 但答案并
  • 使用 BitBlt 捕获程序窗口始终返回相同的图像

    我编写了以下代码 C Win32 来捕获游戏窗口屏幕并从图像中获取像素颜色数组 函数 autoB 完成这项工作 然后我将结果数组绘制到窗口中以直观地检查我得到的结果 问题是 这个程序在我启动计算机后只工作一次 在第一次 缓存 从游戏中获取的
  • 控制缓存过期

    通过 Google 网站管理员工具的 PageSpeed 分析器运行我的网页后 它向我报告我的资源没有被缓存 下面是我的 htaccess 文件中直接取自 H5BP 的代码 我是否正确地假设以下过期时间设置正确 但我的实现中出现了问题 或者
  • axios post请求react-native中出现网络错误

    这是我通过 axios post 请求检查身份验证的方法 CheckAuth let obj username email protected cdn cgi l email protection password zzxxz oauth
  • 我的 Powershell GUI 界面在打开网格视图时不断调整大小

    我目前正在构建一个复制到剪贴板工具 其中显示存储在文件夹中的 txt 文件列表 并且我使用 out gridview 来允许用户更好地选择和过滤列表 我已附上图片以供参考 单击加载 out gridview 的按钮后如何停止调整大小 Too
  • Spring Thymeleaf - 调用服务方法布尔值来显示 HTML 项目

    在我的标题 HTML 中 我显示一个 UL LI 菜单 其中 LI 项目之一的可见性取决于服务方法调用 我试过这个 家庭控制器 Controller public class HomeController private static fi
  • (Tcl/Expect) 退出后清屏

    我想在退出我的 半 交互式期望脚本后清除屏幕 在本地计算机上 我可以在脚本中做到这一点吗 这是我尝试过的 但失败了 usr bin expect f set env TERM vt100 spawn ssh Y username domai
  • Jquery $(window).width() 不包括滚动条宽度?

    我有一个页面使用 javascript 设置了很多 css 属性 并使用 window width 来确定页面宽度 除此之外 它还使用该方法将一些 div 宽度设置为页面的完整宽度 A 这样做是因为很多其他计算都是在 javascript
  • 如何检查带有通配符的模拟调用?

    我正在编写单元测试 并且想要检查具有函数对象的调用 如下所示 call u mock u foobar
  • 如何在 Rails 4 中使用 params.require

    我有一个像这样的私有方法 用于有四个字段的注册表单 firstname email password and confirm password 我不知道如何检查password confirmation def user params pa
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • 如何从连接矩阵绘制图像?

    我想编写一个脚本来从连接矩阵创建图像 基本上 只要矩阵中有 1 我就希望该区域在图像中被着色 对于例如 我使用 Photoshop 创建了这张图像 但我有一个很大的数据集 所以我必须自动化这个过程 如果有人能指出我正确的方向 那将非常有帮助
  • 解析日期不正确

    My code DateFormat format new SimpleDateFormat dd MM YYYY Date Today format parse today Date Date format parse date diff
  • 创建 AoT 兼容的服务工厂

    我正在尝试为缓存服务创建一个服务工厂 主要要求是每次可以使用不同的字符串实例化单个服务 最终的结果会有多个cache每个服务都由唯一定义databaseName 每个缓存可以有一个或多个stores也由唯一定义storeName 其他服务将
  • caffe reshape / 上采样全连接层

    假设我们有一个像这样的层 layer name fully connected type InnerProduct bottom bottom top top inner product param num output 1 输出是batc
  • ES2015 中 `export { foo as default }` 有效吗?

    我收到了GitHub 上的问题 https github com benmosher eslint plugin import issues 54关于我的 ES2015 模块导入 导出验证插件 ESLint 无法识别default使用以下语
  • 左值引用和右值引用之间的重载解析

    include
  • 如何通过Android应用程序将数据发送到蓝牙打印机?

    我正在开发一个应用程序 它将通过蓝牙将数据发送到打印机进行打印 收据热敏打印机 我已按照此链接中的代码进行操作 http pastie org 6203514 http pastie org 6203514这个链接也http pastie
  • Cloud Firestore 安全规则 - 文档中的单个受保护字段

    我想要一个名为的只读属性suspendedProfile in a user具有当前登录用户的读 写访问权限的所有其他属性的文档 有没有办法通过简单的安全规则来做到这一点 我想到了2个解决方案 禁止修改属性的写入 例如allow write