Loading...
首页专栏正文

ThingBoard教程(三):系统设置模块的使用

 
1人已赏
Fizz 发布于 2021-02-01 17:56:51 浏览 3408 点赞 96 收藏 8

系统设置模块的使用

上一篇我们讲到了,使用系统管理员登录系统后,对租户,租户配置,部件组模块的操作 这三个部分在平台管理中占据这很重要的地位。特别是部件组模块。还没了解的读者可以先看看上一篇 ThingBoard教程(二):租户,租户配置,部件组模块的使用

今天这篇我将给大家讲解一下,使用系统管理员登录系统后,对系统做一些定制化操作。设置。包括安全类,邮件,OAuth2。

本篇文章主要讲的内容有这些,

  • 基本设置
  • 发送邮件
  • SMS服务商
  • 安全设置
  • OAuth2

基本设置模块

基础设置模块只有二个配置项,即基本URL,和是否禁止从客户端请求头中使用主机名

改项目我是在Windows上使用docker启动的,docker是在虚拟机里跑的,ip与宿主机不一样, 真正的访问路径是 http://192.168.99.102:8080 所以我们要把 http://localhost:8080 改成 http://192.168.99.102:8080

目前我也没搞懂这里的配置项有什么用。

发送邮件模块

发送邮件模块是用于配置邮件发送方和SMTP协议,以及主机和端口。 默认的情况下邮件配置如下图的。底部有一个发送测试邮件,试了一下,果然不行。

目前系统中有几处发送邮件的,告警,激活账号,就是一个租户管理员创建了一个客户,让这个客户激活该账号, 可以选择给他发送一封邮件,或者生成一个激活链接给他。 如下图

那么这里的邮件配置 到底要怎么配那?

首先使用默认的系统管理员用户登录系统,点击右上角的属性按钮,修改系统管理员的电子邮件,

修改之后重新登录系统。使用刚刚修改的电子邮箱。

只是修改系统管理员的电子邮件还不行,你还要正确配置STMP选项才能正确发送邮件。 目前官方提供了二种配置电子邮件的方式,一是Sendgrid配置示例 二是Gmail配置示例

这里我就使用谷歌邮箱Gmail来演示一下,

谷歌的STMP配置参数

在TB中配置

SMS服务商模块

SMS服务上设置其实就是短信平台的设置,目前只支持亚马逊和Twilio二个平台。 如果需要国内的SMS服务商,可以自己开发。 有关SMS的设置,可以查阅官方的帮助文档

安全设置模块

安全模块就是为了防止被人暴力破解,和引导用户加强密码请到的配置

可以配置的项有

  • 登录失败之前的最大登录尝试次数
  • 如果用户账号锁定,请发送通知到电子邮件
  • 最小的密码长度,默认6位
  • 最小大写字母数
  • 最小小写字母数
  • 最小位数
  • 最小特殊字符数
  • 密码有效期(天)
  • 密码重用频率(天)

OAuth2模块

OAuth2模块是用于配置多系统单点登录。

ThingsBoard允许你为客户提供单一登录功能,并使用支持OAuth 2.0协议的外部用户管理平台自动创建租户,客户或子客户。 支持OAuth 2.0协议的平台列表:Google,Okta,Auth0等。

基本的流程是这个样子的

ThingsBoard支持授权码授予类型,以交换访问令牌的授权码。 用户通过重定向URL返回ThingsBoard客户端后,平台将从URL获取授权代码,并将其用于从外部用户管理平台请求访问令牌。使用基本映射器或自定义映射器,外部用户信息对象将从外部平台转换为ThingsBoard内部OAuth 2.0用户。此后,将发生常规的ThingsBoard授权流程。

官方提供了二种详细的配置OAuth2模块的方式,一种是Google,一种是OAuth0

使用谷歌的场景描述

使用Google身份验证。用户将登录到租户,并且租户名称将等于用户的电子邮件。如果系统中不存在租户,则将创建新的租户。

第二步,我们将添加新的身份验证外部提供者Auth0。在这种情况下,用户将登录到租户,该租户的名称将等于用户电子邮件域名。此外,对于每个用户,我们将创建一个新的客户,并且客户名称将等于用户电子邮件。

要从Google和Auth0平台映射该外部用户信息,我们将使用内置的基本mapper。

如果基本的映射器功能不适合您的业务需求,则可以配置自定义映射器,以便您可以添加满足特定需求的实现。

以下是配置谷歌OAuth2.0的步骤 设置谷歌OAuth2.0 凭据

配置OAuth2.0

最后结果

结束语

今天的文章就写到这里了,相信大家读了这篇文章一定对TB的发送邮件模块,安全设置OAuth2模块, 有了大致的了解。 下一篇我会给大家讲解一下,使用如何常见一个租户,以及租户管理员操作的那些模块

创作不易,那么多字,在不开空调的房间,手都快冻僵了,为了分享知识,我也是蛮拼的。如果对你有帮助,还请多多支持,点赞收藏,打赏更好。你的点滴鼓励就是我支撑我继续分享的动力。谢谢各位读者。

前端架构师,精通前端技术栈,混迹云原生开源社区。

*本文仅代表作者观点,不代表易百纳技术社区立场。系作者授权易百纳技术社区发表,未经许可不得转载。

精彩评论

内容存在敏感词
打赏
打赏作者
Fizz
您的支持将鼓励我继续创作!
金额:
¥1 ¥5 ¥10 ¥50 ¥100
支付方式:
微信支付
支付宝支付
微信支付
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

易百纳技术社区
确定要删除此文章、专栏、评论吗?
确定
取消
易百纳技术社区