gpt4 book ai didi

postgresql - 行级安全双连接

转载 作者:行者123 更新时间:2023-12-05 02:30:41 25 4
gpt4 key购买 nike

我有三个表

<表类="s-表"><头>旅程<正文>编号用户名...
<表类="s-表"><头>节<正文>编号旅程编号...
<表类="s-表"><头>停止<正文>编号section_id...

我想使用行级安全性来确保用户只能在 uid()user_id 匹配时插入 stopstop 通过 stops.section_id->sections.journey_id-> 引用的 journey 上>journeys.user_id.

换句话说,用户应该只能将 stops.section_id 设置为 section,从而设置为 journey 属于他。

如何在 Supabase 中使用行级安全连接实现这一点?

最佳答案

您可以使用 EXISTS 条件:

CREATE POLICY may_insert_stop ON stops
FOR INSERT TO PUBLIC
WITH CHECK (EXISTS (SELECT 1
FROM journeys AS j
JOIN sections AS s ON s.journey_id = j.id
WHERE s.id = stops.section_id
AND j.user_id = uid()
)
);

关于postgresql - 行级安全双连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71755619/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com