简介

默认安装的activemq 使用 ActiveMQConnectionFactory 时没有用户名/密码。只要有人知道了我们activemq服务器的ip和端口,就可以连上去消费掉我们的消息,所以我们需要给activemq设置一个username和pasword;

ActiveMQ也提供了安全认证。就是用户名密码登录规则。ActiveMQ如果需要使用安全认证的话,必须在activemq的核心配置文件中开启安全配置。配置文件就是conf/activemq.xml

配置文件:

conf/login.config
user代表用户信息配置文件,group代表用户组信息配置文件。寻址路径为相对当前配置文件所在位置开始寻址。

conf/users.properties
户信息配置文件,格式:用户名=密码

conf/groups.properties
用户组信息配置文件,格式:组名=用户名,用户名…

二、配置用户名/密码

方式1:

在conf下的activemq.xml的broker节点插入一个子节点如下:

<plugins><simpleAuthenticationPlugin><users><authenticationUser username="vincent" password="123456" groups="users,admins" /></users></simpleAuthenticationPlugin>
</plugins>

重启activemq 并执行

 ConnectionFactory factory = new ActiveMQConnectionFactory(null,null,"tcp://localhost:61616");Connection connection = null;Session session = null;try {connection = factory.createConnection();connection.start();session = connection.createSession(false, Session.CLIENT_ACKNOWLEDGE);Destination destination = session.createQueue("first_mq");MessageProducer producer = session.createProducer(destination);TextMessage msg = session.createTextMessage("");for(int i=0;i<10;i++) {msg.setText("你好" + i);try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}producer.send(msg);}} catch (JMSException e) {e.printStackTrace();}finally {if(session != null) {try {session.close();} catch (JMSException e) {e.printStackTrace();}}}


使用配置的用户名 / 密码将能连接成功。

方式2
在conf下的activemq.xml的broker节点插入一个子节点如下:

<plugins><!--activemq在login.config文件里定义 --><jaasAuthenticationPlugin configuration="activemq"/><authorizationPlugin><map><authorizationMap><authorizationEntries><!--  > 表示通配符所有,read表示读权限用户组,write表示写权限用户组,admin表示是否能创建的用户组--><authorizationEntry queue=">" read="admins" write="admins" admin="admins" /><authorizationEntry topic=">" read="admins" write="admins" admin="admins" /><authorizationEntry queue="ActiveMQ.Advisory.>" read="admins" write="admins" admin="admins" /><authorizationEntry topic="ActiveMQ.Advisory.>" read="admins" write="admins" admin="admins" /></authorizationEntries></authorizationMap></map></authorizationPlugin>
</plugins>

conf/users.properties
新增一个用户名/密码:vincent2=123456

conf/groups.properties
添加 vincent2 至 admins 用户组:admins=admin,vincent2

重启activemq 并执行没有用户名/密码的连接:

使用配置的用户名 / 密码将能连接成功。

三、总结

安全认证 方式1 和 方式2 能共存,方式1 更简单。

ActiveMQ 之安全认证相关推荐

  1. 内网渗透 | 最全的内网凭据密码收集方法和技巧总结

    内网凭据密码收集指南 原创投稿作者:深蓝实验室天威战队 前言 在攻防场景下,红队人员拿下一台终端或服务器后,第一步要做的往往就是信息收集,为最大化利用权限,扩大战果,密码抓取必不可少,这里针对常见应用 ...

  2. activemq中怎么知道推送消息是否成功_如何优雅的使用activeMQ 安装、应用、安全认证、持久化...

    ActiveMQ安装 1. 下载资源 ActiveMQ官网: 版本说明 ActiveMQ5.10.x以上版本必须使用JDK1.8才能正常使用. ActiveMQ5.9.x及以下版本使用JDK1.7即可 ...

  3. ActiveMQ 认证

    新搭建的ActiveMQ服务,在发布和读取消息时,连接的权限为ActiveMQConnection.DEFAULT_USER和ActiveMQConnection.DEFAULT_PASSWORD. ...

  4. ActiveMQ消息队列的使用及应用

    目录:  一:JMQ的两种消息模式1.1:点对点的消息模式1.2:订阅模式 二:点对点的实现代码2.1:点对点的发送端2.2:点对点的接收端 三:订阅/发布模式的实现代码3.1:订阅模式的发送端3.2 ...

  5. 安全的 ActiveMQ

    本章知识点 ActiveMQ 鉴权 ActiveMQ 授权 怎么创建一个自定义安全插件 使用基于证书的安全保证 简介 安全地访问消息代理以及它的 destinations 是公众关注的焦点.因此,Ac ...

  6. ActiveMQ入门系列二:入门代码实例(点对点模式)

    在上一篇<ActiveMQ入门系列一:认识并安装ActiveMQ(Windows下)>中,大致介绍了ActiveMQ和一些概念,并下载.安装.启动他,还访问了他的控制台页面. 这篇,就用代 ...

  7. ActiveMQ 学习(VM Transport)

    http://jinguo.iteye.com/blog/233947 1 JMS 在介绍ActiveMQ之前,首先简要介绍一下JMS规范. 1.1 JMS的基本构件 1.1.1 连接工厂 连接工厂是 ...

  8. SpringBoot整合 ActiveMQ、SpringBoot整合RabbitMQ、SpringBoot整合Kafka

    1.概念:SpringBoot 整合消息服务2.具体内容对于异步消息组件在实际的应用之中会有两类:· JMS:代表作就是 ActiveMQ,但是其性能不高,因为其是用 java 程序实现的:· AMQ ...

  9. ActiveMQ的自定义安全插件(十)

    ActivityMQ的自定义安全插件 上一节提到了ActivityMQ的两种安全插件 Simple Authentication(简单的身份验证) JAAS authentication(JAAS身份 ...

  10. mq服务器与客户端消息同步,使用 ActiveMQ 实现JMS 异步调用

    目录 简介 服务之间的同步调用,可以使用 HTTP 或 RPC 来完成,但并非所有的调用都需要同步,有些场景下,当客户端调用服务端时,并不需要等待服务端做出响应,此时就应该使用异步调用.异步调用的常用 ...

最新文章

  1. 使用MLX90640自制红外热像仪(三):图像插值、图像彩色编码
  2. python安装不了jupyter_求救 python3.8安装jupyter报错无“winpty.h”
  3. tpcc mysql下载_tpcc-mysql 试用
  4. linux 文件按照大小排列
  5. Android Glide图片加载框架(三)缓存机制
  6. 利用openssl来计算sha256哈希值
  7. adcetris研发历程_AZ、MSD、吉利德争相布局ADC药物
  8. 回文判断(栈+队列)
  9. html 头标签 meta http-equiv 属性应用。
  10. idea集成svn问题
  11. 高数下学习笔记——思维导图
  12. Emmagee性能测试小工具
  13. 推荐9个能让你看一天的网站
  14. ue4 计算向量夹角
  15. Ionic5项目android打包流程
  16. 清华领军计划计算机试题,清华大学2017自主招生真题
  17. 2022软件测试好学吗,大概要学多久?(附学习路线图)
  18. 最简单的人脸检测(免费调用百度AI开放平台接口)
  19. 帝国php漏洞,帝国cms远程代码执行漏洞-1
  20. XR872 移植 u-boot-v2021.07

热门文章

  1. 做最好的自己(李开复)
  2. [Matlab]中solve函数与subs函数的使用方法
  3. XML的写入_dom4j添加、删除、修改Xml文件内容
  4. LeetCode刷题-反转字符串中的元音字母
  5. 上海杉达学院计算机课程,上海杉达学院计算机科学与技术专业介绍
  6. pytest -------- 生成测试报告+ 定制报告(allure生成报告)测试报告生成工具Allure 集成到pytest中【十三】
  7. Protocol(基本语法和使用场景)
  8. 推荐一款串口调试助手(win10,无广告,功能齐全,操作简单)
  9. 智慧城市:中国特色新型城镇化的发展方向
  10. 山寨芯片大鳄终于来了MTK6577 A9双核全功能通讯平板(2012年芯片,低端以A9双核为代表)