ThingsBoard CE(社区版)中,租户管理员拥有对规则链、客户、资产、设备、仪表板等资源的全面管理权限。如果你想为租户创建一个普通用户,并限制其不能操作规则链、高级功能、安全设置等,可以通过以下步骤实现:

一、系统管理员增加租户普通用户

 在增加用户时,增加一个单选框,分别为租户管理员、租户普通用户。Thingslink.cn - 物联网设备管理平台、智能设备调试、设备监控、设备接入

增加选择框的源代码修改如下:

1)在src\app\modules\home\pages\user\user.component.html增加单选框
<mat-radio-group [(ngModel)]="authority" name="authority" required>
          <mat-radio-button [value]="'TENANT_ADMIN'">{{ 'user.tenant-admin' | translate }}</mat-radio-button>
          <mat-radio-button [value]="'TENANT_USER'">{{ 'user.tenant-user' | translate }}</mat-radio-button>
        </mat-radio-group>

2)在src\app\modules\home\pages\user\users-table-config.resolver.ts 去掉对角色强制付值。
  saveUser方法去掉user.authority = this.authority;

3)在src\app\modules\home\pages\user\add-user-dialog.component.ts文件里对页面选项值的获取
  add()方法里
    this.user.authority = this.detailsForm.value.authority;   //this.data.authority;

4)在src\app\modules\home\pages\user\user-routing.module.ts文件里增加权限
const routes: Routes 方法里,增加
auth: [Authority.SYS_ADMIN, Authority.TENANT_ADMIN, Authority.TENANT_USER],

二、对租户普通用户这个角色增加采单权限,增加源代码里如:

Authority.TENANT_USER,[{name: 'customer.management',places: [MenuId.customers]},{name: 'asset.management',places: [MenuId.assets, MenuId.asset_profiles]},{name: 'device.management',places: [MenuId.devices, MenuId.device_profiles, MenuId.otaUpdates]},{name: 'entity-view.management',places: [MenuId.entity_views]},{name: 'edge.management',places: [MenuId.edges, MenuId.rulechain_templates]},{name: 'dashboard.management',places: [MenuId.widget_library, MenuId.dashboards]},{name: 'audit-log.audit',places: [MenuId.audit_log, MenuId.api_usage]},]

三、权限对比

  • 默认情况下,客户用户只能查看被授权的设备、资产、仪表盘,无法操作规则链、租户配置、安全设置

  • 如果你使用了 ThingsBoard PE(专业版),还可以通过 角色(Role)用户组(User Group) 进一步细化权限:

    • 创建自定义角色 → 只勾选“读取设备”“读取仪表盘”等权限。

    • 将用户加入该角色即可。

ThingsBoard CE(社区版),权限控制相对简化,建议通过客户层级来隔离权限

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/94563.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/94563.shtml
英文地址,请注明出处:http://en.pswp.cn/web/94563.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【笔记】大模型业务场景流程综述

前言 大模型是指具有大规模参数和复杂计算结构的深度学习模型,这些模型通常由众多神经网络构建而成,拥有数十亿甚至数千亿个参数。本章将围绕大模型概念及特点展开,介绍模型算法的分类、典型大模型及应用、大模型训练流程和大模型业务流程。 目标 学完本课程后,您将能够…

【两数相互求余等于输入两数】2022-10-20

缘由关于#c#的问题&#xff1a;这个应该按照怎么个思路来写&#xff1a;想老半天莫得思路想法-编程语言-CSDN问答 void 两数相互求余等于输入两数() {//缘由https://ask.csdn.net/questions/7813625int a 0, b 0, x 0, y 0;cin >> a >> b;if (a > b)x a, y…

Linux系统调优

目录 1.CPU 负载查看 1.1.使用 uptime 查看系统负载 1.2.使用 top 按 CPU 使用率排序 1.3.使用 ps 查看 CPU 使用最多的进程 1.4.使用 mpstat 查看 CPU 详细状态 1.5.查看 /proc/meminfo 获取详细内存信息 2查看内存运行状态 2.1.使用 free 查看内存使用 1.CPU 负载查看…

AtCoder Beginner Contest 420

比赛链接如下&#xff1a; AtCoder Beginner Contest 420 - AtCoder A - What month is it? Problem Statement You are given integers X and Y between 1 and 12, inclusive. Find what month it will be Y months after month X (for example, month 1 is January). Cons…

Python算法-贪心算法(Greedy Algorithm)

Python算法&#xff1a;贪心算法&#xff08;Greedy Algorithm&#xff09;深度解析 引言 贪心算法&#xff08;Greedy Algorithm&#xff09;是计算机科学中最基础的算法设计思想之一&#xff0c;其核心在于通过局部最优选择逐步构建全局最优解。尽管它并不总能保证得到绝对最…

告别臃肿与广告:精选9款安卓电视桌面Launcher,还你清爽高效体验 (2025版)

[实测] 9款优秀安卓电视桌面Launcher推荐&#xff1a;告别原生臃肿&#xff0c;重塑清爽TV体验 引言&#xff1a;当前智能电视桌面的痛点 目前市面上许多智能电视或电视盒子的原生桌面&#xff08;Launcher&#xff09;系统&#xff0c;为了商业推广和内容聚合&#xff0c;往…

Docker Desktop紧急修复CVSS9.3高危容器逃逸漏洞

Docker公司修复了Windows和macOS版Docker Desktop应用程序中的一个高危漏洞&#xff08;CVE-2025-9074&#xff0c;CVSS评分9.3&#xff09;&#xff0c;攻击者可能利用该漏洞突破容器隔离限制。漏洞技术细节根据Docker官方文档披露&#xff0c;恶意容器能够访问Docker引擎并在…

携程旅游的 AI 网关落地实践

原创 董艺荃 Higress 2025年08月21日 16:32 陕西本文整理自携程旅游研发总监董艺荃在2025中国可信云大会上的分享&#xff0c;董艺荃 GitHub ID CH3CHO&#xff0c;同时也是 Higress 的 Maintainer。分享内容分为以下4部分。01 大规模应用 AI 技术过程中遇到了哪些问题02 网关…

CloudBase云开发MCP + CodeBuddy IDE:打造智能化全栈理财助手的完整实践

CloudBase云开发MCP CodeBuddy IDE&#xff1a;打造智能化全栈理财助手的完整实践 &#x1f31f; Hello&#xff0c;我是摘星&#xff01; &#x1f308; 在彩虹般绚烂的技术栈中&#xff0c;我是那个永不停歇的色彩收集者。 &#x1f98b; 每一个优化都是我培育的花朵&#x…

ESP8266学习

一&#xff0c;连接Wifi1.Esp8266连接手机热点ATATRST ATCWMODE1 ATCWJAP"ESP8266","123456789"手机查看连接信息2.Esp8266连接手机热点进入透传模式ATATRST ATCWMODE1 ATCWJAP"ESP8266","123456789"ATCIPMUX0 ATCIPSTART"TCP&qu…

Mac安装mitmproxy及操作对监控的请求

在 macOS 上安装和配置 mitmproxy 是一个相对简单的过程&#xff0c;可以使用常见的包管理工具如 Homebrew 或直接通过 Python 的包管理工具 pip。以下是详细的安装步骤&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Homebrew 是 macOS 上流行的包管理工具。它可以快速安…

c++ 数据结构-堆、优先队列 小总结

之前学习了一些堆、优先队列的知识点&#xff0c;在此做一个小总结。堆&#xff08;Heap&#xff09;堆&#xff08;Heap&#xff09;是一种特殊的完全二叉树数据结构&#xff0c;具有以下重要特性&#xff1a;结构特性堆是一棵完全二叉树&#xff0c;即除了最后一层外&#xf…

编写Linux下usb设备驱动方法:probe函数中要进行的工作

一. 简介 前一篇文章简单学习了 Linux下usb设备驱动实现流程&#xff0c;文章如下&#xff1a; 编写Linux下usb设备驱动方法&#xff1a;usb设备驱动实现流程-CSDN博客 本文来学习一下 usb设备驱动的 probe函数要完成的任务。 当usb主控制器检测到设备与 驱动相匹配时&…

动态规划:为什么暴力算法会有重复子问题

第一步&#xff1a;先明确 “子问题” 和 “重复子问题” 的定义 在算法中&#xff0c;“子问题” 不是泛指 “小一点的问题”&#xff0c;而是具有明确 “状态参数” 的、可独立求解的问题单元。 状态参数&#xff1a;描述子问题核心信息的变量&#xff08;比如 01 背包中的 “…

【网络】添加路由时,via和dev参数作用、直连路由

文章目录概述1、带via1.1 添加路由前的初始状态1.2. 执行添加路由的命令1.3. 添加路由后的状态2、不带 via (使用设备接口)&#xff0c;直连3、带via还是不带via ?4、dev xx的作用4.1 命令中带via时&#xff0c;建议不带 dev eth0 (让系统自动判断)4.2 命令中带via&#xff0c…

云原生---企业级Kubernetes

一、Kubernetes介绍 1.简介 kubernetes的本质是一组服务器集群&#xff0c;它可以在集群的每个节点上运行特定的程序&#xff0c;来对节点中的容器进行管理。目的是实现资源管理的自动化&#xff0c;主要提供了如下的主要功能&#xff1a; 自我修复&#xff1a;一旦某一个容器…

无人机三维路径规划首选算法:RRT_

无人机三维路径规划首选算法&#xff1a;RRT* 要判断哪种算法更适合无人机三维路径规划&#xff0c;需先明确无人机三维路径规划的核心需求&#xff0c;再结合各算法的底层逻辑与特性进行匹配。以下先梳理核心需求&#xff0c;再逐一分析算法特性&#xff0c;最终通过对比得出结…

CentOS 7 服务器初始化:从 0 到 1 的安全高效配置指南

前言 对于运维或开发人员而言&#xff0c;新到手的 CentOS 7 服务器绝非 “开箱即用”—— 默认的国外软件源下载缓慢、系统缺乏基础工具、防火墙未做安全配置&#xff0c;这些问题都会影响后续使用效率与服务器安全性。本文整理了 CentOS 7 服务器初始化的全套实操方案&#…

32.Attention-注意力机制

不是所有的信息都是有用的&#xff0c;或者说重要的。我们应该把注意力放在他该在的地方。 在人工智能领域&#xff0c;注意力机制被广泛应用。他可以帮助模型关注与当前任务相关的特征&#xff0c;而忽略不重要的特征&#xff0c;以提高准确率。注意力机制本质&#xff1a;即通…

如何设计 “用户共创型” IP 成长社群模型?​

“用户共创型” IP 成长社群的核心&#xff0c;是从 “IP 单向输出” 转向 “IP 与用户共生”&#xff0c;让用户从 “被动接收者” 变为 “主动参与者”&#xff0c;通过 “需求共建、内容共造、价值共享” 形成闭环&#xff0c;既强化用户归属感&#xff0c;又为 IP 注入持续…