【问题标题】:Securing JMS Communication with an Application Certificate使用应用程序证书保护 JMS 通信
【发布时间】:2011-03-23 17:03:44
【问题描述】:

我有一个使用 Eclipse Workbench 框架的客户端应用程序。我希望我的客户端应用程序使用 jar 文件中提供的证书连接/订阅 JMS 主题。也就是说,我没有使用最终用户的证书——它是一个应用程序证书。

现在明显的安全风险是任何人都可以打开我的 jar 文件并取出证书并使用它来连接到 JMS 队列,而无需使用我的客户端应用程序。 (这很糟糕)。

您可能会说,在证书上使用密码并加密密码。但是...客户端应用程序需要在将密码提供给 JMS 连接之前对其进行解密。所以解密代码必须在客户端 Jar 文件中,坏人也可以反编译并获得解密密码的代码。所以现在他有了证书和密码。

最后,这是我的问题...有没有办法将应用程序的证书绑定到 jar 文件或代码,以便只有我的客户端应用程序可以使用该证书连接到 JMS 队列?

感谢您阅读本文。

【问题讨论】:

    标签: security encryption jms client-server


    【解决方案1】:

    这是标准的 DRM 问题。你想运送一些加密的东西,这样坏人就不能做未经授权的事情。但是您交付给客户的产品需要对其进行解密,以便这些客户可以按照您授权的方式使用它。

    如果您找到防弹解决方案,请以 1B 美元的价格将其卖给好莱坞。哎呀,以 1.1B 美元的价格卖掉它,然后给我我的想法。

    好的,不需要防弹?现在你正试图像上面描述的那样隐藏它。你试图保护的东西有什么价值?如果它很低,将花费很少的精力来解决您的解决方案,也许它会站得住脚。如果它的价值很高,就会有人破解它(以好莱坞为例)。

    【讨论】:

    • 感谢 John,经过更多讨论后,我们决定与客户端打包应用程序证书,并让用户在其本地 java 密钥库中使用自己的证书对 JMS 主题进行身份验证.他们的默认权限将只是订阅公告主题并发布到查询主题。他们是我们知道的一群受控用户,所以他们能做的最糟糕的事情就是从他们自己的身份创建 DoS 攻击,这将是非常愚蠢的。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-16
    • 2014-05-23
    • 1970-01-01
    • 2020-10-09
    • 1970-01-01
    相关资源
    最近更新 更多