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

推荐订阅源

雷峰网
雷峰网
GbyAI
GbyAI
Stack Overflow Blog
Stack Overflow Blog
Apple Machine Learning Research
Apple Machine Learning Research
The Cloudflare Blog
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Microsoft Azure Blog
Microsoft Azure Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 聂微东
L
LangChain Blog
云风的 BLOG
云风的 BLOG
Jina AI
Jina AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
I
InfoQ
大猫的无限游戏
大猫的无限游戏
MyScale Blog
MyScale Blog
人人都是产品经理
人人都是产品经理
小众软件
小众软件
量子位
The GitHub Blog
The GitHub Blog
博客园 - 【当耐特】

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 规则。