ActiveMQ 中的只读 Web 控制台访问

2024-02-04

我正在使用 ActiveMQ 5.10,并且想创建一个通过 Web 控制台具有只读访问权限的用户。

红帽发布本文 https://access.redhat.com/solutions/389323,提到由于 ActiveMQ 中的错误,它并不是真正只读的。 根据错误报告AMQ-4567 https://issues.apache.org/jira/browse/AMQ-4567,该错误从 ActiveMQ 5.9 开始已修复。但是,我没有看到它正常工作。

我尝试了多种不同的配置,最近的一个是两个独立的 JAAS 实现,一个用于 Jetty,一个用于 ActiveMQ。相关属性文件摘录如下。

I can mostly使用“system”用户登录 Web 控制台。但访客用户根本不起作用。应用程序用户 (appuser) 根本不需要访问 Web 控制台。

我的 authN/authZ 需求非常简单:一个管理员用户、一个应用程序帐户和一个只读监控帐户。

有什么好的方法可以让它与最新版本的 ActiveMQ(> = 5.9.0)一起使用吗?

组.属性

管理员=系统

用户=应用程序用户,管理员

客人=客人

用户.属性

系统={密码已编辑}

应用程序用户=应用程序用户

客人=客人

jetty-realm.properties

系统:MD5:46cf1b5451345f5176cd70713e0c9e07,用户,管理员

客人:客人,客人

顺便说一句,我用了码头教程 https://wiki.eclipse.org/Jetty/Tutorial/JAAS#PropertyFileLoginModuleRundeck 说明 http://rundeck.org/docs/administration/authenticating-users.html找出 jetty-realm.properties 文件和第 6 章ActiveMQ 实际应用制定ActiveMQ JAAS。


我终于能够通过将 Web 控制台部署到外部 Tomcat 实例来实现我想要的目标。我认为当它超出进程时,它无法绕过安全性,因此必须使用您提供的任何凭据。在本例中,我为 Tomcat 实例提供了只读 JMX 用户凭据。

这不太好,因为没有经过安全调整的用户界面。您仍然可以尝试创建新目标、删除目标等。当您尝试使用只读用户时,您会收到错误消息。这在用户体验方面得到了“D”,但在安全方面得到了“B”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ActiveMQ 中的只读 Web 控制台访问 的相关文章

  • activemq启动成功但web管理页面却无法访问

    前提 在linux启动activemq成功 本地能ping通linux 处理方案 确定防火墙是否关闭 有两种处理方案 第一种 关闭防火墙 第二种 暴漏8161和61616两个端口 netstat lnpt 查看8161和61616端口 注意
  • ActiveMQ授权

    如果我想在Apache ActiveMQ上实现JAAS授权 是否必须使用activemq xml配置文件中的插件 这种方式确实不好 因为如果我想更改授权 我必须更改 activemq xml 文件并且restart服务器才能工作 有什么方法
  • 是否可以镜像 ActiveMQ 中的单个队列?

    我在生产系统中运行 ActiveMQ 我们的一些队列数量非常多 有些队列数量非常少 我有兴趣镜像低容量队列之一 以便我可以围绕收到的消息构建非正式的监视服务 很遗憾 我能找到的唯一文档似乎暗示镜像队列是全有或全无 您要么为您拥有的每个队列创
  • Apache Camel 到底是如何处理 JMSReplyTo 的?骆驼什么时候隐式使用目的地?

    使用 spring camel 我构建了一条从 JMS 主题进行消费的路由 预计为每个输入消息设置 JMSReplyTo 将消息分割成更小的块 将它们发送到 REST 处理器 然后聚合答案并应该生成发送到 JMSReplyTo 指向的目的地
  • ActiveMQ 未找到连接的 IConnectionFactory 实现

    我已在服务器上安装了 ActiveMQ 5 13 0 Release 并尝试使用 C 客户端访问代理 我创建了一个控制台应用程序并安装了 Apache NMS ActiveMQ 版本 1 7 1 nuget 包 当我尝试访问经纪人时 Lin
  • 我应该为这个带有 websockets 的 web 应用程序使用什么解决方案。活动MQ?

    我目前正在开发一个网络应用程序 它需要一个 websocket 连接来接收来自服务器的事件通知 客户端被分成组 并且组中的所有客户端必须接收相同的事件通知 我认为 ActiveMQ 可能可以支持这种模型 为每组客户端使用不同的队列 使用 s
  • ActiveMQ从java获取监听主题的消费者数量

    我希望能够获取同一 JVM 中嵌入式 ActiveMQ 5 4 2 代理从 java 监听主题的消费者数量 JMX 真的是唯一的选择吗 JMX 似乎是一个糟糕的选择 因为它可以选择性地禁用 这篇文章展示了如何使用 JMX 获取连接列表 Ac
  • 在哪里可以手动配置 ActiveMQ 主机名? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我第一次尝试设置 Apache ActiveMQ 我发现我的服务器名称中有一个下划线 这导致 ActiveMQ 无法启动 它抛出这个异常
  • 在WSO2 ESB 4.7.0中,我们可以在接收序列中进行JMS回滚吗?

    我已经在 WSO2 ESB 4 7 0 中配置了带有事务和 CLIENT ACKNOWLEDGE 的 Apache ActiveMQ axis2 xml 配置是
  • ActiveMQ NMS C# 对象消息使用什么序列化方法?

    我计划使用 Apache NMS 进行 ActiveMQ 消息传递 并且想知道我发送的对象将使用什么序列化方法 XML 二进制 什么控制序列化以及如何自定义它 有人有使用 C 对象执行此操作的经验吗 您知道有哪些陷阱吗 IObjectMes
  • SpringBoot应用程序发布并读取ActiveMQ主题

    我有两个应该从一个主题中读取的接收器 但只有一个随机接收者收到消息 就像它实际上是从队列而不是主题中读取的一样 我读了this https stackoverflow com questions 40144561 how to listen
  • 使用 ActiveMQ/Stomp 在 PHP 和 Java 之间进行通信

    背景 我有两个服务需要通过消息队列相互通信 一种是用 PHP 编写的遗留服务 另一种是用 Java 编写的 迟早 PHP 服务将被 Java 重写 它们当前相互通信的方式是写入共享数据库 由其他服务轮询 这就是我试图摆脱并用消息队列替换的内
  • ActiveMQ:如何使旧消息出队?

    我正在学习如何使用ActiveMQ 现在我们面临以下问题 假设我在 ActiveMQ 上有一个名为 topic test 的主题 它有两个订阅者 在特定时刻 我只有一个订阅者在等待消息 而生产者则为我上面提到的主题发送一条消息 好的 连接的
  • ActiveMQ:在没有代理的情况下启动消费者

    我正在编写一个从队列消费的 JMS 客户端 如果重要的话 我的经纪人是 activemq 一项要求是 即使代理关闭 客户端也应该启动 在这种情况下 它的行为应该就像队列中没有消息一样 一旦代理启动并且消息开始出现 就会做出相应的行为 问题是
  • 如何在Mule中创建独占队列消费者?

    在 ActiveMQ 中 您可以为队列配置独占消费者 例如 Queue Name Here consumer exclusive true 如何在 Mule 中配置像上面这样的独占消费者 您需要对队列名称进行 URL 编码 因为 Mule
  • 使用 Gattle 向 ActiveMQ 发布消息

    我一直在使用Gatling将消息发布到 ActiveMq 服务器 我明白了 java lang SecurityException 无效的用户名 null 或空 不过我使用有效的用户名和密码 这是我的测试代码 抛出了异常 任何有关如何解决此
  • ActiveMQ:如何以编程方式监控嵌入式代理

    我想从代码内部监控嵌入式 ActiveMQ 5 8 代理 如何才能做到这一点 我需要 JMX 连接吗 我想防止暴露 JMX 有没有办法访问org apache activemq broker jmx http activemq apache
  • 在 ActiveMQ 中查看消息时,代理无法使用可序列化类:java.lang.ClassNotFoundException

    我想查看已在 ActiveMQ 队列中排队的消息内容 我打开网络控制台 http localhost 8161 admin queues jsp http localhost 8161 admin queues jsp 并单击队列消息的消息
  • ActiveMQ - 向特定消费者发送消息

    连接单个 AMQ 代理和 100 个消费者 我会将消息发送给某个特定的消费者 这样其他消费者就不会收到它 客户端过滤不起作用 最简单的方法是创建虚拟目的地 将其命名为queue consumer 并在那里发送消息 然而 这将导致 100 个
  • activemq 的优先级

    我们目前正在使用 JMS 和 activemq 5 5 1 开发一个应用程序 我们想为某些消息定义更高的优先级 这将使它们首先被消耗 设置生产者和消费者后 通过spring 3 1 JMSTemplate 优先级并不能完全发挥作用 事实上

随机推荐

  • java.lang.NullPointerException Selenium 2 类

    当我的程序从本地计算机运行时运行良好 无需使用带有远程 Web 驱动程序的 selenium 网格 但是 当我使用带有远程 Web 驱动程序的 selenium 网格设置相同的测试用例时 在 eclipse 中收到消息说 java lang
  • 获取当前正在执行的线程的TThread对象?

    我想要一个像 GetCurrentThread 这样的函数 它返回当前执行线程的 TThread 对象 我知道有一个 Win32 API 调用 GetCurrentThread 但它返回线程 Id 如果有可能从该 ID 获取 TThread
  • Python错误:NameError:名称未定义[重复]

    这个问题在这里已经有答案了 import numpy as np from scipy import optimize as opt import time def grad d weight 0 0 learnrate 0 01 tol
  • 未启用延迟段创建功能 (ORA-00439)

    I have sql包含 60 多个表的 DDL 的脚本文件 我正在尝试将脚本复制粘贴到 SQL Developer 中 连接到数据库 Oracle Database 11g Express Edition Release 11 2 0 2
  • zurb 基金会中心网格中的内容

    我试图将图像水平居中到 zurb 列中 但这似乎不可能 我尝试了一切 到处搜索 但我无法让它工作 这是我的代码 div class row div class twelve columns br img src img 06 jpeg al
  • 如何删除 Rabbitmq 以便我可以重新安装

    我遇到了麻烦 所以我进入注册表并删除了rabbitmq的服务条目 现在 当我尝试重新安装时 它说它已经存在 但无法启动 因为我删除了它 我可以执行以下操作sc delete rabbitmq 如何完全删除它的所有痕迹并从头开始重新安装 我猜
  • 我想扩展 std::string,但不是出于您可能认为的原因

    我有一个有效地接受字符串的方法 但是 我想要使用的字符串子集非常有限 我正在考虑将 std string 作为某个类进行 typedef ing 并显式调用函数 不过 我不确定这是否有效 有想法吗 通常的规则仍然适用 该类不是设计为继承的
  • 检查 iOS 应用程序上的互联网连接,Cordova Phonegap 3.3.0 无法正常工作

    我尝试过以下this http cordova apache org docs en 3 3 0 cordova connection connection md html The 20Command Line 0AInterfaceCor
  • ASP.Net MVC 基于安全性隐藏/显示菜单项

    我正在开发一个 ASP Net MVC 3 网站 Layout 主视图包含一个菜单 我想根据您是否登录以及您所处的角色隐藏菜单中的一些项目 目前使用这样的代码可以工作 if HttpContext Current User Identity
  • MySQL默认值错误与ON DUPLICATE KEY UPDATE

    为什么我会收到此错误 MySQL 版本是否发生了某些变化 导致此操作 曾一度有效 现在失败 INSERT INTO 未指定 user id 值would如果插入已完成 则需要 但由于 id 1 已经存在 因此这应该成为更新并且有效 mysq
  • MassTransit - 等待所有活动完成然后继续处理

    如果我有很多活动 是否会导致资源阻塞或请求超时 这是我的场景 我有一个 api 控制器 它向消费者发送订单请求 我使用请求 响应模式来接收错误信息来自消费者的属性并基于该属性响应返回 如果它为空我想返回OK 否则 返回BadRequest
  • 为 MySql 中的视图生成唯一的长 ID

    我可以看到三张桌子 它有 6 列 如下所示 ID NAME PRINCIPAL ID DESCRIPTION GROUP ID TYPE 正如我正在使用的hibernate要从数据库检索数据 我必须将ID此视图中的列 问题是 我无法生成唯一
  • 有没有办法通过联合访问各个位?

    我正在写一个C程序 我想要一个可以作为字符访问的变量 但我也可以访问其特定位 我想我可以使用这样的工会 typedef union unsigned char status bit bits 8 DeviceStatus 但编译器不喜欢这样
  • Android 警报对话框中可以有垂直按钮吗?

    默认情况下 我们会在警报对话框中看到两个或三个水平对齐的按钮 是否可以让它们在警报对话框中垂直对齐 当然 你可以使用Dialog setContentView 将对话框的内容设置为任意布局 Dialog dialog new Dialog
  • 如何显示Windows 7风格的上下文菜单?

    在我的 NET 应用程序中 上下文菜单与左侧类似 我怎样才能将 Windows 7 风格应用到它们上 使它们看起来像正确的样式 右键单击工具箱 选择项目 勾选 ContextMenu 命名空间 System Windows Forms 且目
  • 改变布局的 Javascript/jQuery focusout 事件导致 click 事件不触发

    我有一个字段 当您将焦点放在它上时 它会更改页面的布局 我的页面上还有提交表单的按钮 如果我进入字段并输入一个值 然后单击按钮 则按钮单击事件永远不会触发 这似乎是因为布局正在改变而发生的before单击事件被触发 这意味着按钮改变了位置
  • MSVC-10 包含路径

    如何指定 MSVC 搜索包含文件的位置 我想将增强标头添加到搜索路径中 我没有使用 Visual Studio 项目 只是使用编译器 您需要将它们编辑到 INCLUDE 环境变量中 您可以通过系统属性属性页找到它 例如 仅限 Windows
  • perlbrew 失败并显示“无法找到 Devel/PatchPerl.pm”

    perlbrew失败了Can t locate Devel PatchPerl pm 更准确地说 失败的是运行patchperl这是由产生的perlbrew There is事实上Devel PatchPerl pm通过环境变量中的路径访问
  • 如何在Android Studio中从默认的ConstraintLayout切换到RelativeLayout

    我有最新的 android Studio 2 3 beta 3 似乎 ConstraintLayout 是创建项目时的默认设置 如何让 Android Studio 使用relativelayout作为新项目的默认布局元素 嗯 我看到了上面
  • ActiveMQ 中的只读 Web 控制台访问

    我正在使用 ActiveMQ 5 10 并且想创建一个通过 Web 控制台具有只读访问权限的用户 红帽发布本文 https access redhat com solutions 389323 提到由于 ActiveMQ 中的错误 它并不是