ThingsBoard的重要能力之一是为终端用户创建dashboards。 客户应仅能访问您授予的场所、设备和数据,并享受其个性化dashboard的全部功能。 同时不得访问其他客户的场所、设备或其它数据。 作为管理员,您始终可编辑和修改dashboard。
Tenant Administrator可通过两种方式向Customer授予对特定实体(如Device、Dashboard、Asset等)的访问:
- 分配所有权:使客户成为唯一可访问该实体及其数据的用户;
- 共享实体:允许多个客户访问同一实体。
We’re continuing to enhance our dashboard. In the last lesson, we set up alarm rules for the Indoor Air Quality sensor and added a widget to manage alarms. If you haven’t completed that lesson yet, I suggest going through it first.
本课将添加两名客户,并为其配置对之前课程所建dashboard的共享访问。 本示例中,Customer指租用您建筑内办公室并使用其中设备的个人或组织。 每位客户仅能访问其租赁的办公室及其中设备。
本课示例中,假设有两名客户:Customer A租用Building A的Office A,Customer B租用同栋楼的Office B。
创建这两名客户并授予必要访问权限。
添加客户
先添加两名客户。
- 进入「Customers」页面。默认进入客户组「All」。点击「加号」打开新客户表单;
- 输入客户名称,必要时填写其他个人信息。点击「Add」完成新客户添加;
- Customer A 已添加。
类似地创建名为 “Customer B” 的客户,并将其加入 “Office renters” 组。
共享dashboard
由于两位客户都会使用该dashboard,无法将两者都设为owner,但可为其提供dashboard的共享访问。无法共享单个dashboard,仅能共享包含该dashboard的group。
- 进入「Dashboard」页面,打开「Groups」标签页。仪表板位于「Buildings」组中。点击该组旁的「Share」图标;
- 选择 Customer A,将权限设为「Read」,点击「Share」;
- 对 Customer B 重复此操作。
变更设备owner
接下来变更设备owner。将Customer A设为Office A中所有设备的owner,即 “Indoor Air Quality Sensor”、”Energy Meter” 和 “Water Flow Meter”。将Customer B设为Office B中 “IAQ Sensor” 的owner。
- 打开「Devices」页面。点击「SD-001」(室内空气质量传感器)设备打开其详情。然后点击「Manage owner and groups」按钮;
- 在「Owner」行从下拉列表选择「Customer A」。创建新设备组。在「Groups」行输入所需组名,例如「Office A sensors」。然后点击「Create a new one!」;
- 点击「Add」按钮确认创建设备组;
- 点击「Update」确认更改设备所有者。您可随时将所有者改回租户;
- 在设备页面的「Customer name」列可查看设备所属客户;
类似地,将Customer A设为 “EM-002”(Energy Meter)和 “WM-003”(Water Flow Meter)的owner,将Customer B设为 “AM-307”(Indoor Air Quality Sensor)的owner。
Make sure that the devices are assigned to Customer A.
- 进入「Customers」页面,在客户列表中找到 Customer A。点击 Customer A 旁的「Manage customer devices」图标;
- 您的设备归该客户所有,位于客户的设备组「Office A devices」中。
确认设备已分配给Customer B。
- 点击 Customer B 旁的「Manage customer devices」图标;
- 您的设备归该客户所有,位于客户的设备组「Office B devices」中。
访问assets
由于Office A和Office B均位于Building A,客户应对建筑有共享访问,但对办公室的访问应受限,使其仅能查看各自的办公室。操作如下:
变更Office A和Office B的owner:
- 将Customer A设为Office A的owner;
- 将Customer B设为Office B的owner。
共享Building A的访问:
- 将Building A与Customer A和Customer B共享;
- 将两者权限级别设为 “Read”,使其可访问建筑共享数据但无法查看彼此办公室。
变更assets的owner
- 进入「Assets」页面。点击「Office A」资产打开其详情。然后点击「Manage owner and groups」按钮;
- 将 Customer A 指定为资产所有者。然后将「Office A」资产加入组。输入所需设备组名,例如「Customer A offices」,点击「Create a new one!」;
- 点击「Add」按钮确认创建设备组;
- 点击「Update」确认设备所有权更改;
- 同样,将 Customer B 设为 Office B 的所有者。
确认办公室assets已分配给正确客户。
- 进入「Customers」页面,点击 Customer A 旁的「Manage customer assets」图标;
- 您的 Office A 现归该客户所有,位于客户的资产组「Customer A offices」中。
- 找到 Customer B,点击其旁的「Manage customer assets」图标;
- 您的 Office B 现归该客户所有,位于客户的资产组「Customer B offices」中。
共享assets
接下来将Building A加入group并为两位客户共享访问。
- 进入「Assets」页面,在「Building A」资产详情中点击「Manage owner and groups」按钮;
- 为「Building A」资产创建新组。输入「Building A」作为组名,点击「Create a new one!」;
- 点击「Add」按钮确认创建设备组;
- 点击「Update」按钮;
- 已将 Building A 加入组。现可将其共享给客户。进入「Groups」标签页;
- 点击「Building A」组旁的「Share」图标;
- 选择 Customer A,将权限设为「Read」,点击「Share」;
- 同样,以「Read」权限向 Customer B 授予仪表板访问权限。
我们已为所有必要客户授予访问权限。接下来添加客户用户。
添加客户用户
最后为每位客户创建一个 user。他们将能访问我们的dashboards及我们授予的数据。
首先为Customer A添加用户Emma Johnson:
- 进入 “Customers” 页面。在客户列表中找到客户并点击 “Manage customer users” 图标;
- 进入 “Groups” 选项卡,选择 “Customer Users” 组。这是自动创建的客户用户组,已授予只读权限。更多关于权限和 Role-Based Access Control (RBAC) 的信息请参阅相关文档;
- 点击右上角 “plus” 图标。输入用户邮箱,并填写名和姓。然后点击 “Add”;
- 复制用户激活链接并妥善保存。然后点击 “OK”;
- 新客户用户已添加。点击该用户打开详情,再点击橙色大号 “pencil” 图标进入编辑模式;
- 将我们的 “Building” dashboard设为默认,并勾选 “Always fullscreen”。最后应用更改。
Customer A的用户已添加完成。类似地为Customer B添加客户用户Jack Smith。
从客户用户视角查看dashboard
接下来激活客户用户并分别查看dashboard在各用户视角下的效果。
先从Customer A的用户Emma Johnson开始。
- 将之前复制的用户激活链接粘贴到浏览器地址栏并按 Enter。设置并输入账户密码,然后点击「Create Password」;
- 之后您的账户将被激活,您将以客户用户身份登录。
dashboard将打开,仅显示您办公室所在的建筑 —— Building A。浏览dashboard以确认用户仅能访问您已授予的数据。
类似地激活Customer B的用户。他们应能访问Building A中的Office B以及Office B内IAQ Sensor的数据。
Conclusion
本系列中,我们已开发一个用于可视化和监控设施内连接设备数据的完整dashboard。 我们还为客户共享了该dashboard的访问,每位客户仅能查看您授予权限的数据。 希望本系列对您有帮助,并激发您进一步扩展dashboard的能力。下次见!