postgresql - _eq 对不同表中 ID 的权限值?
问题描述
我在 hasura 中设置了一些权限,我有一个“已分配”表,它将分配的项目映射到用户,我要求用户只能访问他们已分配的项目。我认为最好的方法是使用我拥有的 _exists 运算符:
{"_exists":{"_table":{"name":"assigned_item","schema":"public"},"_where":{"_and":[{"userid":{"_eq":"X-Hasura-User-Id"}},{"feed_item_id":{"_eq":"XXX"}}]}}
我的问题与最后一个 _eq: XXX 有关 - 我需要它等于 item 表中的值。
正在针对分配的项目创建权限。
解决方案
假设您的assigned_item
表有userid
并且feed_item_id
..您的权限应该是:
- 在
assigned_item
桌子上,只需添加权限:userid _eq X-Hasura-User-Id
如“用户可以看到他们分配的所有项目”。 - 在表上,使用关系通过表
feed_items?
到达。假设 feed_items 上的关系称为“assigned_users”,则权限为:user_id
assigned_item
feed_items > assigned_users > user_id _eq X-Hasura-User-Id
推荐阅读
- python - 用Python解码邮箱中的汉字
- entity-framework - EF 更新数据库错误:值不能为空参数名称:类型
- excel - 将 A 列中的所有单元格除以 A 列中的最后一个单元格,然后重复 BL 列
- certificate - 组策略无法将证书部署到组
- rust - 生锈负循环?
- sass - 我的媒体查询正在通过桌面运行,但是当我在手机上查看时,它们没有传输
- xml - Google 表格中的 IMPORTXML 公式
- r - 如何更新renderIU中的选择输入?
- python - Holoview 中数据标签的字体大小
- google-apps-script - 当它说 TypeError: Cannot read property 'getLastRow' of null 时如何解决这个问题?