【发布时间】:2017-09-21 01:22:20
【问题描述】:
我已按照https://www.graph.cool/ 设置介绍项目的步骤进行操作。在项目的权限部分,我可以查看和编辑例如权限Posts:
单击显示Everyone 可以Edit Data 发布帖子的行时,会出现一个对话框。在那里我可以编辑权限,以便只有经过身份验证的用户才能编辑帖子:
但是,如何制定规则,让用户只能编辑自己的帖子,而不能编辑其他用户创建的帖子?
【问题讨论】:
标签: graphcool
我已按照https://www.graph.cool/ 设置介绍项目的步骤进行操作。在项目的权限部分,我可以查看和编辑例如权限Posts:
单击显示Everyone 可以Edit Data 发布帖子的行时,会出现一个对话框。在那里我可以编辑权限,以便只有经过身份验证的用户才能编辑帖子:
但是,如何制定规则,让用户只能编辑自己的帖子,而不能编辑其他用户创建的帖子?
【问题讨论】:
标签: graphcool
您的问题恰逢其时 :-) 昨天 Graphcool 发布了一个新的基于 GraphQL 查询的高级权限系统,允许您根据数据中的关系声明任意权限规则。
限制帖子所有者的 UPDATE 权限是一个简单的示例(代码如下),但我鼓励您查看文档并开始考虑此功能如何帮助您实现更复杂的权限规则
仅限作者编辑帖子
query ($node_id: ID!, $user_id: ID!) {
SomePostExists(filter:{
id: $node_id,
author: {id: $user_id}
})
}
文档
https://www.graph.cool/blog/2017-04-25-graphql-permission-queries-oolooch8oh/ https://www.graph.cool/docs/tutorials/authorization-content-management-system-miesho4goo/
【讨论】: