`
longgangbai
  • 浏览: 7328544 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ActiveMQ中消息权限策略

 
阅读更多
在ActiveMQ发送消息的时候,可以通过MessageAuthorizationPolicy验证消息是否可以发送到消息消费者。
package org.apache.activemq.security;

import org.apache.activemq.broker.ConnectionContext;
import org.apache.activemq.command.Message;

/**
 * A plugin to allow custom message-level security checks to be performed before
 * a message is consumed.
 * 
 * 
 */
public interface MessageAuthorizationPolicy {

    /**
     * Returns true if the given message is able to be dispatched to the connection
     * performing any user
     * 
     * @return true if the context is allowed to consume the message
     */
    boolean isAllowedToConsume(ConnectionContext context, Message message);

}
设置消息生产者启动时候设置验证规则:
        在消息生产者创建消息的时候创建消息的时候,设置消息的相关权限验证字段,便于发送消息。
@Override
    protected BrokerService createBroker() throws Exception {
        BrokerService answer = new BrokerService();
        answer.setPersistent(false);
        //设置消息权限验证策略
        answer.setMessageAuthorizationPolicy(new MessageAuthorizationPolicy() {
            public boolean isAllowedToConsume(ConnectionContext context, Message message) {
                try {
                    Object value = message.getProperty("myHeader");
                    return "abc".equals(value);
                }
                catch (IOException e) {
                    System.out.println("Caught: " + e);
                    e.printStackTrace();
                    return false;
                }
            }
        });
        answer.addConnector(bindAddress);
        return answer;
}

 

分享到:
评论

相关推荐

    基于activeMQ的消息推送.zip

    8. **安全性**:了解如何配置ActiveMQ的安全策略,包括用户认证和权限控制。 9. **性能优化**:讨论如何调整ActiveMQ配置以提高消息处理速度和系统性能。 10. **监控与日志**:学习如何监控ActiveMQ的运行状态,...

    ActiveMQ消息服务器 v5.17.6.zip

    《ActiveMQ消息服务器详解》 Apache ActiveMQ是业界广泛使用的开源消息代理,它遵循Java Message Service(JMS)规范,提供了...无论是在毕业设计、论文研究还是实际项目开发中,ActiveMQ都是值得信赖的消息解决方案。

    activemq消息中间件-视频教程

    7. **安全性与网络配置**:介绍如何设置用户权限,保护ActiveMQ服务器的安全,以及网络配置,如集群和多数据中心的部署策略。 8. **监控与管理**:讲解如何使用ActiveMQ的Web控制台进行实时监控,以及通过JMX进行...

    ActiveMQ消息服务器 v5.18.3.zip

    3. **Web控制台**:ActiveMQ提供了一个基于Web的管理界面,用户可以监控消息队列的状态、管理用户权限、查看日志等,方便系统管理和故障排查。 4. **安全特性**:ActiveMQ支持身份验证和授权,可以通过JAAS(Java ...

    ActiveMQ消息服务配置

    ### ActiveMQ消息服务配置详解 #### 一、ActiveMQ配置概览 ActiveMQ是一款非常流行的开源消息中间件,它基于Java开发,支持多种消息传递模式,如点对点(P2P)、发布/订阅(Pub/Sub)等。本文将详细介绍ActiveMQ的配置...

    最新稳定版ActiveMQ5.15.0

    3. **安全性**:ActiveMQ提供了基于角色的访问控制(RBAC),可设置用户权限,确保只有授权的用户和应用可以访问消息。此外,还支持SSL/TLS加密,保护数据传输的安全。 4. **多种协议支持**:如前所述,ActiveMQ...

    activemq 配置说明与activemq入门讲解

    实际使用时,根据业务需求调整配置,并结合JMS API进行应用开发,就能充分发挥ActiveMQ在消息传递中的作用。记得定期备份配置文件和数据存储,以防止数据丢失。同时,关注ActiveMQ社区的更新和最佳实践,持续优化你...

    ActiveMQ.zip

    这个文件可能是课程中的一部分,用来讲解ActiveMQ如何利用内存映射技术优化消息处理性能,或者介绍特定的性能优化策略。 综上所述,ActiveMQ是一个强大的消息中间件,它在分布式系统中起到了关键的角色,提供可靠的...

    apache-activemq-5.12.0-bin

    6. **安全**:ActiveMQ支持多种安全策略,如用户认证和授权,可以限制不同用户的操作权限,保护系统的安全性。 7. **网络连接**:ActiveMQ可以通过TCP/IP协议与其他服务器或客户端通信,并且支持SSL/TLS加密,确保...

    ActiveMQ

    1. **解耦组件**:在大型系统中,通过 ActiveMQ 实现组件间的消息通信,降低各组件间的依赖,提高系统的灵活性。 2. **流量削峰填谷**:当系统面临突发高流量时,消息队列可以暂时存储过多的请求,避免服务器过载。...

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

    Apache ActiveMQ是一款开源的消息中间件,它是Java消息服务(JMS)的实现,广泛应用于分布式系统中的异步通信。ActiveMQ以其高性能、高可靠性和易于管理的特点,在企业级应用中备受青睐。本指南将带你逐步了解如何...

    apache-activemq Linux版本

    在Linux系统上部署和使用Apache ActiveMQ能够提供稳定、高效的消息传递服务,支持分布式系统中的异步通信和解耦。 Apache ActiveMQ的主要功能包括: 1. **消息队列**: 它允许应用程序将消息放入队列中,由其他应用...

    activemq-example

    1. 消息与队列:在ActiveMQ中,消息是数据传输的载体,它包含了要传递的信息。队列(Queue)则是一种存储和转发消息的结构,遵循先进先出(FIFO)原则,每个消息只能被一个消费者接收。 2. 主题(Topic)与发布/...

    ActiveMQ 配置文件详解

    除了上述配置,ActiveMQ还支持主题和队列的动态创建、网络集群、消息重试策略、消息分页、消息压缩等多种特性,这些都可以在`activemq.xml`中进行配置。 理解并灵活运用这些配置,能帮助你更好地管理和优化ActiveMQ...

    apache-activemq-5.11

    5. **安全性**:ActiveMQ提供了用户认证和授权功能,可以设置访问控制列表(ACL),限制不同用户或组对消息资源的访问权限。此外,还可以通过SSL/TLS加密传输,保障数据的安全性。 6. **管理与监控**:ActiveMQ提供...

    ActiveMQ消息中间件面试专题.zip

    - **消息队列**:ActiveMQ中的消息队列是一种存储和转发消息的机制,保证了消息的顺序性和可靠性。 - **生产者与消费者**:生产者负责创建和发送消息,消费者则接收并处理这些消息。 - **主题(Topic)与队列...

    ActiveMQ学习 完整例子

    - **消息中间件**:ActiveMQ作为一个消息中间件,负责在分布式系统中传递消息,解耦生产者和消费者。 - **JMS(Java Message Service)**:JMS是Java平台上的标准,定义了消息生产和消费的接口,ActiveMQ是实现JMS...

    apache-activemq-5.16.5

    1. **消息持久化**:ActiveMQ支持将消息存储在磁盘上,即使在服务器重启后也能保证消息的完整性,这是基于JMS规范中的持久化队列和主题实现的。 2. **多种协议支持**:除了JMS,ActiveMQ还支持STOMP、AMQP、MQTT等...

    activemq安装.rar

    通过以上步骤和知识点,你可以在Linux环境中成功安装和配置Apache ActiveMQ,利用其强大的消息传递功能来构建可靠、可扩展的应用系统。不过,请记得在实际操作中根据你的具体需求和环境进行相应的调整。

    ActiveMQ的文档.rar

    6. **性能优化**:ActiveMQ支持多种策略优化性能,如预取策略、批量发送和消息压缩,以减少网络延迟和提高吞吐量。 7. **管理工具**:ActiveMQ提供了一个Web控制台,用户可以通过浏览器进行监控和管理消息队列,...

Global site tag (gtag.js) - Google Analytics