应用程序用户角色

在这款实时 Slack 应用程序中,我们需要将所有查询仅限于登录用户。我们假设数据不可公开访问。一切都以用户在应用程序上进行什么操作为中心。 此外,表中的某些列不需要向用户公开。

我们来看一下用户可以拥有的不同职责。

管理职责

所有管理任务都需要有对数据库的写入访问权限。某些管理任务包括:

  • 创建和管理工作空间
  • 创建和管理频道
  • 将成员添加至工作空间和频道

非管理职责

非管理任务需要对数据库的有限读取和写入访问权限。

例如,你在 Slack 应用程序中有“成员”。他们可以加入 Slack 工作空间。他们可以使用 Slack,与其他成员进行沟通和协作。

  • 用户可以读取消息并发送消息到频道中
  • 用户可以读取同在一个工作空间的用户的消息并向其发送消息

我们需要能够将这些操作应用于某个角色。我们会在下一部分中看到如何实现。

Did you find this page helpful?
Start with GraphQL on Hasura for Free
  • ArrowBuild apps and APIs 10x faster
  • ArrowBuilt-in authorization and caching
  • Arrow8x more performant than hand-rolled APIs
Promo
footer illustration
Brand logo
© 2024 Hasura Inc. All rights reserved
Github
Titter
Discord
Facebook
Instagram
Youtube
Linkedin