`
baobeituping
  • 浏览: 1064497 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

ActiveMQ安全验证配置

阅读更多

ActiveMQ的安全验证配置存在的原因是:

我们在自己的服务器上假设avtivemq 消息代理,如果不加入安全机制的话,任何连入internet的人,只要知道消息服务的具体地址(包括ip,端口,消息地址[队列或者主题地址],),都可以肆无忌惮的发送、接收消息。想象如果没有安全机制,这将会引起上么样的后果。

主要是配置activemq.xml

在activemq.xml中(下面加粗部分为新增部分)

...

<transportConnectors>
            <transportConnector name="openwire" uri="tcp://localhost:61616" discoveryUri="multicast://default"/>
            <transportConnector name="ssl" uri="ssl://localhost:61617"/>
            <transportConnector name="stomp" uri="stomp://localhost:61613"/>
            <transportConnector name="xmpp" uri="xmpp://localhost:61222"/>
        </transportConnectors>

 

<plugins>
 
     <simpleAuthenticationPlugin> 

<!--该部分是配置发送或接受的用户名和密码,以及所处的用户组-->
    <users>
      <authenticationUser username="system" password="manager" groups="users,admins"/>
      <authenticationUser username="user" password="password" groups="users"/>
      <authenticationUser username="guest" password="password" groups="guests"/>
    </users> 

    </simpleAuthenticationPlugin>

       <!--  use JAAS to authenticate using the login.config file on the classpath to configure JAAS -->

    <!--以下采用的是JAAS的管理机制来配置各种角色的权限-->
     <jaasAuthenticationPlugin configuration="activemq-domain" />

     <!--  lets configure a destination based authorization mechanism -->
     <authorizationPlugin>
   <map>
    <authorizationMap>
     <authorizationEntries>

    <!-->表示通配符,例如USERS.>表示以USERS.开头的主题,>表示所有主题,read表示读的权限,write表示写的权限,admin表示角色组-->
      <authorizationEntry queue=">" read="admins"
    write="admins" admin="admins" />
      <authorizationEntry queue="USERS.>"
    read="users" write="users" admin="users" />
      <authorizationEntry queue="GUEST.>"
    read="guests" write="guests,users" admin="guests,users" />

      <authorizationEntry topic=">" read="admins,users"
    write="admins" admin="admins" />
      <authorizationEntry topic="USERS.>"
    read="users" write="users" admin="users" />
      <authorizationEntry topic="GUEST.>"
    read="guests" write="guests,users" admin="guests,users" />

      <authorizationEntry
    topic="ActiveMQ.Advisory.>" read="guests,users"
    write="guests,users" admin="guests,users" />
     </authorizationEntries>

     <!-- let's assign roles to temporary destinations. comment this entry if we don't want any roles assigned to temp destinations  -->
     <tempDestinationAuthorizationEntry>
      <tempDestinationAuthorizationEntry
    read="tempDestinationAdmins" write="tempDestinationAdmins"
    admin="tempDestinationAdmins" />
     </tempDestinationAuthorizationEntry>
    </authorizationMap>
   </map>
     </authorizationPlugin>
   </plugins>
 

...

把红色部分加如到activemq.xml中

然后你在生产者和发送者连接的地方:

ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory("guest", "password", url);

该连接表示用户以guest用户登陆

标记你的连接用户名和密码,activemq会根据你的用户来判断该用户拥有什么权限

分享到:
评论

相关推荐

    activemq5配置文档

    - **用户认证与授权**:ActiveMQ允许通过Jaas配置用户身份验证和权限控制,你可以定义多个用户角色并分配不同的访问权限。 - **虚拟主题(Virtual Topics)**:虚拟主题提供了安全隔离,使得不同用户组可以订阅...

    ActiveMQ的activemq.xml详细配置讲解

    对于与数据库的集成,如`activemq数据库,验证持久化标准配置.txt`所示,ActiveMQ支持使用JDBC进行持久化,确保在故障恢复时数据的完整性。 总之,`activemq.xml`配置文件是管理ActiveMQ核心行为的核心,通过细致地...

    为activemq服务器添加简单验证机制

    默认情况下,ActiveMQ配置并不包含任何安全措施,这意味着如果不进行额外的配置,任何客户端都可能连接到服务器并发送或接收消息,这显然存在严重的安全风险。 ActiveMQ支持两种验证机制:用户名/密码映射和JAAS...

    activemq 配置说明与activemq入门讲解

    ActiveMQ支持JAAS(Java Authentication and Authorization Service)进行身份验证和授权。 三、ActiveMQ的使用入门 1. **安装与启动**:下载ActiveMQ的二进制包,解压后运行`bin/activemq start`启动服务。 2. **...

    activemq ssl双向认证连接

    理解并正确配置SSL双向认证对于确保在ActiveMQ上的通信安全至关重要。由于这是一个涉及到多个步骤的过程,建议在每个环节都仔细检查,确保所有证书和配置都正确无误。如果在实施过程中遇到困难,不要犹豫寻求帮助,...

    ActiveMQ配置Mysql8为持久化方式所需Jar包.rar

    本主题主要探讨如何将ActiveMQ配置为使用MySQL 8作为其持久化存储方式,以及在这个过程中所需的Jar包。 1. **ActiveMQ与持久化**: - ActiveMQ允许用户选择不同的持久化机制,包括文件系统(KahaDB)和关系数据库...

    ActiveMQ使用SSL加密文件Demo

    本 Demo 将向你展示如何配置 ActiveMQ 以使用 SSL 加密文件,帮助初学者快速理解并实践这一关键安全措施。 首先,了解 SSL/TLS 协议是至关重要的。SSL(Secure Sockets Layer)与 TLS(Transport Layer Security)...

    ActiveMq安装.docx

    在实际应用中,ActiveMQ的配置可能需要根据具体的业务需求进行调整,例如设置消息持久化、网络连接策略、安全性、日志记录等。消息中间件的核心作用在于提供异步处理、解耦系统组件、实现负载均衡和容错机制。...

    apache-activemq-5.15.9.rar

    Apache ActiveMQ提供了多种安全机制,如用户身份验证、角色授权和SSL/TLS加密。你可以在“conf”目录下的“users.properties”和“groups.properties”文件中定义用户和权限,而在“activemq.xml”中配置相应的安全...

    activeMQ收发工具.rar

    10. **安全配置**:理解ActiveMQ的安全模型,包括用户身份验证和权限控制,这对于企业级部署至关重要。 总之,这个"activeMQ收发工具.jar"是调试和测试ActiveMQ服务器的强大辅助工具,通过它,开发者可以深入理解...

    activemq自启动并设置用户名密码

    以上步骤完成了ActiveMQ的基本安装、配置以及安全认证设置。需要注意的是,实际部署时还需要根据具体需求进一步调整配置文件,如调整监听端口、增加额外的安全策略等。此外,为了确保系统的稳定性和安全性,建议定期...

    配置ActiveMQ 静态集群

    - **安全性**:确保集群节点之间的通信是安全的,可以配置SSL/TLS连接。 通过以上步骤,你将成功地配置了ActiveMQ的静态集群,从而提高了服务的可用性和数据的一致性。请根据实际情况调整配置,以满足特定的业务...

    activemq安装.rar

    你可以通过修改`conf/users.properties`和`conf/groups.properties`来配置用户和角色,启用身份验证和授权。 - 还可以通过修改`conf/jetty-realm.properties`来配置Jetty服务器的安全设置。 8. **日志和调试**: ...

    ActiveMQ

    通过运行 `TestMQ`,开发者可以验证 ActiveMQ 的配置是否正确,以及消息传递的功能是否正常。 在实际开发中,理解并熟练运用 ActiveMQ 的特性和用法,可以显著提高系统的设计质量和性能。同时,对于 `TestMQ` 这样...

    apache-activemq-5.16.6-bin.zip

    7. **安全(Security)**: ActiveMQ允许配置访问控制和身份验证策略,保护消息的传输安全。 **ActiveMQ 5.16.6新特性与改进** 1. **性能优化**: 版本5.16.6可能包含性能提升,如更快的消息处理速度,更低的内存...

    Linux下activeMQ的启动和停止.docx

    执行`./activemq stop`命令后,ActiveMQ服务将会被安全地关闭,释放资源并停止监听网络端口。等待一段时间,直到终端输出提示服务已成功关闭。 **启动ActiveMQ服务:** 在确保ActiveMQ服务已经关闭的情况下,你...

    ActiveMQ实践入门指南_ActiveMQ实践入门指南_源码

    3. 安全问题:定期更新补丁,加强身份验证和访问控制。 以上就是ActiveMQ实践入门的基本内容。通过深入学习和实践,你可以更好地掌握ActiveMQ的使用,为你的分布式系统构建稳定、高效的通信桥梁。阅读提供的...

    window系统搭建activeMQ集群和操作步骤

    下面将详细介绍如何在Windows环境下配置ActiveMQ集群及其操作步骤。 1. **ActiveMQ集群概念** - **集群**:ActiveMQ集群是多个ActiveMQ服务器实例的集合,它们共享消息负载,提高系统的可用性和可靠性。当一个节点...

    activemq通过IP或特征码授权插件

    总结一下,`activemq通过IP或特征码授权插件`是一种增强ActiveMQ安全性的策略,它通过自定义插件实现对连接请求的IP地址和特征码的验证。这要求开发者编写Java插件代码,集成到ActiveMQ配置中,并可能涉及到数据库或...

    apache-activemq-5.9.0 下载

    8. **安全性**:ActiveMQ提供了身份验证和授权功能,支持JAAS(Java Authentication and Authorization Service)和基于角色的访问控制(RBAC),确保只有授权的用户和应用程序才能访问消息。 9. **消息过滤**:...

Global site tag (gtag.js) - Google Analytics