繁体   English   中英

如何设置我的 hasura 权限以仅查看与用户对应的表行?

[英]How do I set my hasura permission to only see the rows of my table corresponding to a user?

事情就是这样。 我在这里描述了 3 个表:

在此处输入图像描述

我的应用程序上的人可以下订单。 那么,我想要

  • 具有查看所有orders表行的rex权限的用户
  • 具有delivery权限的用户只能查看orders表中zip列设置为delivery用户的zip的行

orders表中,我可以为每个订单获取一个zip 使用表zip_user ,我可以从zip中获取user_id 从那个user_id中,我可以从users表中获取交付用户。

虽然让rex查看所有orders表很简单,但我还不能为delivery用户配置权限。 我需要做什么?

换句话说,假设用户在orders表上执行 select 将x-hasura-user-id设置为某个用户 id 并将x-hasura-role设置为delivery ,那么该用户如何仅从orders表中获取那些与与该用户的user_id关联的zip匹配?

Hasura 有关系的概念。 如果你有外键,它会自动建立关系,如果没有,你可以在 UI 中自己建立。 建立关系后,您将能够设置深度权限,因此在orders表上,您将能够使用users.id

从这里开始: https://hasura.io/docs/1.0/graphql/manual/schema/relationships/index.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM