本文将讲解 Mosquitto 权限管理、如果还没有搭建 Mosquitto 服务的可以参考我的另外两篇文章<< 一、Mosquitto 介绍&安装>> << 二、 Mosquitto 的使用说明 >> 来搭建 Mosquitto 服务。

  Mosquitto 权限是根据 topic 控制的、类似与目录管理。您可以设定每个用户订阅/发布权限、也可以设定每个用户可访问的topic范围、从而达到权限控制的目的。
  这里我们需要用到<<四、Mosquitto 高级应用之用户配置>> 中创建的2个用户。

  1: 给这两个用户配置不同的权限

    admin 设置为订阅权限,并且只能访问的主题为"root/topic/#"

    mosquitto 设置为发布权限,并且只能访问的主题为"root/topic/#"

    如果用 admin 进行发布是不会成功的、反过来用 mosquitto 进行订阅同样不会接受到任何信息。因为他们的权限不同。

  2: 增加权限配置

    打开配置文件 aclfile.example 在其中添加如下配置信息。

user admin
topic read root/topic/#
user mosquitto
topic write root/topic#

read 订阅权限 、write 发布权限、# 通配符表示所有的、保存退出。

  3:修改 Mosquitto.conf 配置选项

    打开mosquitto.conf文件,找到acl_file节点。打开配置做如下修改:
    修改前:#acl_file
    修改后:acl_file /etc/mosquitto/aclfile.example 根据自己文件实际位置填写

至此admin 、 Mosquitto 两个用户的权限已配置完成。 测试请使用<<三、Java 客户端实现>>中测试代码进行测试。

五、Mosquitto 高级应用之权限管理的更多相关文章

  1. MySQL行(记录)的详细操作一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理

    MySQL行(记录)的详细操作 阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: ...

  2. mosquitto --用户配置 及权限管理

    mosquitto中可以添加多个用户,只有使用用户名和密码登陆服务器才允许用户进行订阅与发布操作.可以说用户机制是mosquitto重要的安全机制,增强服务器的安全性.用户与权限配置需要修改3处地方: ...

  3. 五天一体_企业权限管理(SSM整合)

    学于黑马程序员和传智播客联合做的教学项目 感谢 黑马程序员官网 传智播客官网 个人根据教程的每天的工作进度的代码和资料 密码:cti5 b站在线视频 微信搜索"艺术行者",关注并回 ...

  4. Yii2系列教程五:简单的用户权限管理

    上一篇文章讲了用户的注册,验证和登录,这一篇文章按照约定来说说Yii2之中的用户和权限控制. 你可以直接到Github下载源码,以便可以跟上进度,你也可以重头开始,一步一步按照这个教程来做. 鉴于本教 ...

  5. 2018/09/05《涂抹MySQL》【权限管理】学习笔记(二)

    读 第四章<管理MySQL库与表> 第五章<MySQL的权限管理> 总结 1:当配置好 MySQL 数据库后,发现有几个默认的库,他们的意义和作用?(这里只做简单了解,之后用到 ...

  6. MySQL数据库用户和权限管理

    一.视图 视图:VIEW,虚表,保存有实表的查询结果,在视图插入的内容都会存入表中.创建方法: CREATE VIEW view_name [(column_list)] AS select_st ...

  7. Linux系列教程(五)——Linux链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  8. Linux系列教程(五)——Linux常用命令之链接命令和权限管理命令

    前一篇博客我们讲解了Linux文件和目录处理命令,还是老生常淡,对于新手而言,我们不需要完全记住命令的详细语法,记住该命令能完成什么功能,然后需要的时候去查就好了,用的多了我们就自然记住了.这篇博客我 ...

  9. liunx权限管理之高级权限

    高级权限 suid,sgid,sticky ======================================================== 文件权限管理之:高级权限 问题1: 为什么 ...

随机推荐

  1. MVC C# JS根据后台传入对象设置

    今天(20170401)在借鉴代码的时候,看到如下一串 @if (Model.Product.ID > 0) { <script> $(function () { setSpecLi ...

  2. Linux线程编程之生产者消费者问题

    前言 本文基于顺序循环队列,给出Linux生产者/消费者问题的多线程示例,并讨论编程时需要注意的事项.文中涉及的代码运行环境如下: 本文假定读者已具备线程同步的基础知识. 一  顺序表循环队列 1.1 ...

  3. C++中的异常安全性【转】

    原文写的非常好,来自这里 一个函数如果说是“异常安全”的,必须同时满足以下两个条件:1.不泄漏任何资源:2.不允许破坏数据. 我们先通过两个反面的例子开始. 第一个是造成资源泄漏的例子.一个类Type ...

  4. 【Studio】解决格式化时,注释部分没有缩进的问题

    android studio默认代码格式化(默认Ctrl+Alt+L),是让注释从每行最左边开始显示,比如这样: 我个人喜欢注释也要缩进对齐.其实这个需要自己设置,打开studio的设置,依次找 Se ...

  5. Jenkins常见任务配置

    一.pmd 二.checkstyle -DskipTests=true clean compile package -Dcheckstyle.config.location="custom- ...

  6. vue组件定义方式

    一.全局组件 <div id="box"> {{msg}} <my-aaa></my-aaa> </div> var Home = ...

  7. C语言位操作--逻辑运算符组合

    假设读者熟悉普通代数与布尔代数,下面是部分常见的涉及到加法.减法与逻辑运算符的组合: a.        -x=~x+1 b.           =~(x-1) c.        ~x=-x-1 ...

  8. NET中的设计模式---单件模式

    如众所知,单件模式做为<Gof 23中设计模式>之一,其意图仅允许单件类的一个实例存在(扩展单件模式不在此文范围内),并提供全局的访问方法.UML类图如下. http://csharpin ...

  9. 神奇的thrust::device_vector与nvcc编译选项

    在C++的GPU库thrust中,有两种vector thrust::device_vector<int> D; //GPU使用的内存中的向量 thrust::host_vector< ...

  10. Spark2 Dataset聚合操作

    data.groupBy("gender").agg(count($"age"),max($"age").as("maxAge&q ...