java - JMS/Hornetq = 如何在不受信任的网络中确保安全?

标签 java security jms hornetq

我知道HornetQ提供

  1. Netty SSL 传输
  2. 基于角色的安全模型

我的用例:

我的 HornetQ 服务器将/应该在任何人都可以访问的公共(public)主机(=绑定(bind)到公共(public) IP 的服务)上运行(=任何人都可以通过端口扫描检测到该服务...)

我的问题:

1.) 据我所知,netty SSL Transport 不提供通过 SSL 的身份验证(如果我没看错的话,这已安排在 3.0 版本中)。所以它只是保护传输,但每个人都可以连接到 HornetQ 服务器?

2.) Role Base Security 有 7 个可以授予的权限。我的问题是。如果我撤销所有权利,这被认为是安全的吗?如果有人在没有任何这些权限的情况下进行连接(并且默认用户没有分配权限/角色/全部被撤销),HornetQ 会安全吗?还是强烈建议不要这样做,因为它仍然提供对系统的深入访问?

3.) 性能。在情况 2.) 中是安全的。有人用“未经身份验证”的消息攻击我的系统。基于角色的安全模型是在非常高的级别上实现的(因此不会消耗大量资源)还是这会使 DOS 变得非常容易,因为它必须深入到服务器进行大量处理(并且还提供更多的攻击媒介,因为攻击者将深入系统......)

非常感谢!! 马库斯

最佳答案

1) 是的,有一个功能请求。

2) 如果您进行了正确的配置,您应该是安全的。

3) 性能应该没问题

但是,我不确定任何系统都能承受某种大规模攻击。除了基本安全之外,您可能还需要其他类型的措施。

与任何其他软件一样,可能会有改进。作为 HornetQ 的项目开发人员/负责人,我们始终乐于接受任何建议,我们将修复发现并相应提交的任何违规和错误。

关于java - JMS/Hornetq = 如何在不受信任的网络中确保安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7017000/

相关文章:

security - API 网关中的授权与微服务端点

java - 在 TomEE 中设置 ActiveMQ

java - 如何检查执行器何时完成运行特定的 Runnable

java - Android "back"按钮

ios - APNS token 应该加密吗?

php - PHP 中的暴力/DoS 预防

java - 自定义AsyncCallback的序列化问题(?)

java - session 事务消费者或生产者中的消息代理异常处理

java - RequestParam 的自定义验证不适用于 Spring MVC

java - 在 Eclipse 中导入 Gradle 项目时无法初始化类 java.net.DualStackPlainDatagramSocketImpl