簡體   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