首页 > 解决方案 > 为多租户应用程序设计 UI

问题描述

我们正在为 Web 应用程序开发具有共享模式的多租户应用程序。我想知道设计 UI 策略的最佳实践。

我们将为 saas 所有者提供不同的角色,例如管理员、帮助台、客户经理,因此 SAAS 所有者可能需要多个用户来访问应用程序并完成他们的工作。

HelpDesk:如果租户提出工单,Helpdesk团队应该能够查看和解决。

账户管理:账户经理可能需要访问租户的付款信息以跟踪租户。

ServiceManagers:执行维护和升级等。

在这种情况下

我们是否需要为“Saas 所有者”和“租户”提供不同的 UI,还是使用权限和角色来管理它更好?

有什么最佳实践吗?

标签: multi-tenantsaas

解决方案


交付方式有很多方面需要决定

  1. 如果您更喜欢使用Micro FrontEnds,管理员和租户功能可以分开。然而,像帮助台、账户管理这样的个别功能可以是一个单独的微前端
  2. 租户应该可以选择给 UI 贴上白标签(自定义徽标、自定义主题、自定义布局(更多开发工作))等。

无论有没有微前端,您的 UI 层都应该基于作为用户角色聚合(甚至跨租户)的权限工作。

UI 始终对 API 进行探测以获取权限并根据授予用户的权限呈现各种 UI 组件。

我们曾经构建自定义 UI 组件,如自定义网格、自定义表单等,以便可以根据用户可能拥有的权限使用权限来显示或隐藏各种 UI 元素。

例如:在管理员的上下文中,我将能够看到所有团队成员,但在 a 的上下文中,我将Service Administrator能够将成员分配到各种租户功能,如帮助台、会计等Administrator执行,但可以查看映射。

同样,您的业务需求将驱动 UI,因此如果您按照permissionsUI 使用,它总是very fine-grained比依赖于更高级别的抽象(如Roles.

高温高压


推荐阅读