惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Recent Announcements
Recent Announcements
人人都是产品经理
人人都是产品经理
月光博客
月光博客
博客园 - 三生石上(FineUI控件)
GbyAI
GbyAI
博客园 - 司徒正美
美团技术团队
Vercel News
Vercel News
IT之家
IT之家
U
Unit 42
Y
Y Combinator Blog
罗磊的独立博客
Microsoft Security Blog
Microsoft Security Blog
MongoDB | Blog
MongoDB | Blog
Jina AI
Jina AI
V
Visual Studio Blog
B
Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
MyScale Blog
MyScale Blog
博客园 - 叶小钗
A
About on SuperTechFans
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
B
Blog RSS Feed

Save The Web Project

STWP 02026 五月 meetup LTO 磁带存储初探 The Chaotic Web, Headless Archiving — GSoC 2025 Final Report 混乱Web,无头存档,开源拖拉机——2025 GSoC 最终报告 STWP 2025 第 26 周周报 STWP 2025 第 20-25 周合并周报 STWP 2025 第 11-19 周合并周报 STWP 2025 第 4-10 周合并周报 存档误入深水区——If Summer is calling us 丑搜 v3 出炉 STWP 2024 第 43-52 周合并周报 STWP 2024 第 42 周周报 感谢 GitHub 的 $617 欢乐赞助(误) 我们救下了一千万张画作 如何存档任意 WordPress 站点? STWP 2023 第 25 周周报 已存档「萤火圈」,提供个人公开数据备份 STWP 2023 第 15 周周报 如何存档 DokuWiki 站点(第一届存档马拉松活动) STWP 2023 第 14 周周报
使「対多」避免被删库——PostgreSQL RSP/RLS 这件小事
2025-01-14 · via Save The Web Project

没东西写了,写点还没在博客上发的流水账。

一个月前,一款偽中国語掲示板 APP——「対多」,横空出世,迅速火爆全网。开发者起初使用 firebase 作为后端,但 APP 过于火爆,打穿账单,开发者随后切换到了 supabase 以降低成本。

supabase 简单来说是 firebase 的代餐,提供 PostgreSQL实例+PostgREST+各语言SDK,以及一些封装好了的常用后端功能实现(如用户登录、用户注册等)。你可以通过 SDK 或 HTTP API 的方式执行来操作它的 PostgreSQL 数据库,直接把数据库当成后端。

反编译一下 APP 就能找到它的数据库地址。

本来只是觉得好玩然后想存它,结果一通鼓捣,发现它数据库的 Row Security Polices (或 Row Level Security) 有逻辑问题。


対多它主要有 posts 和 comments 两个表。

它设置了 RLS 规则,限制用户只能删除由自己创建的 post (if post.created_by == .id),没毛病。(comment 同理)

但是它没有限制用户 UPDATE 别人的 post 或 comment,所以可以把别的 post/comment 的 created_by 改成自己。然后就能删任意帖子了。

发现问题之后邮件反馈给了开发者,之后开发者修了 RLS 规则。