【问题标题】:RabbitMQ authentication without password无需密码的 RabbitMQ 身份验证
【发布时间】:2016-04-19 10:01:48
【问题描述】:

因为我不需要考虑我的应用程序中的安全问题,所以我想使用 Java 客户端连接到 RabbitMQ 而无需密码。

在管理 UI 中,我将用户密码设置为“无密码”。然后我就这样试了:

ConnectionFactory factory = new ConnectionFactory();
factory.setHost("localhost");
factory.setUsername("myuser");
connection = factory.newConnection();

或者,我尝试手动组装 URI:

factory.setUri("amqp://myuser@localhost:5672");

...但在这两种情况下,身份验证都失败并出现以下异常:

Exception in thread "main" com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN. For details see the broker logfile.
    at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:339)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:716)
    at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:760)
    at de.bmw.rabbitmq.workerqueue.Producer2.main(Producer2.java:51)

甚至可以在没有密码的情况下获得连接吗?

【问题讨论】:

    标签: java rabbitmq amqp


    【解决方案1】:

    可以使用 rabbitmq-auth-mechanism-ssl 来实现无密码身份验证,如下所述:https://github.com/rabbitmq/rabbitmq-auth-mechanism-ssl。这需要设置 SSL/TLS 支持并使其正常工作。如果选择此选项,则使用受信任的根证书进行身份验证,并且完全忽略任何用户名/密码。

    我目前正在调查是否可以将无密码身份验证与 LDAP 结合使用,但我没有任何运气让它发挥作用。

    编辑: 在我的环境中,Windows 服务使用基于证书的身份验证进行身份验证,RabbitMQ 集群管理员可以使用 LDAP 对管理 Web UI 进行身份验证。如果您对 LDAP 身份验证感兴趣,请here's another post about it

    【讨论】:

      【解决方案2】:

      因为我不需要考虑我的应用程序中的安全问题

      我会严重质疑这个假设。事实上,我什至会说这是不正确的。

      话虽如此:

      只需使用任何人都可以知道的简单密码。这样做会比尝试在没有密码的情况下使 RMQ 工作更容易。

      【讨论】:

      • 我期待这样的回复 ;) 但实际上,在这种情况下,它是一个孤立的测试网,我们希望避免设置和维护方面的任何麻烦。
      • 同意安全问题,但 RabbitMQ 管理插件 API 文档指出 Setting [password] to "" will ensure the user cannot use a password to log in,因此当您需要用户获取连接但不登录管理 API 时,您需要使用无密码身份验证。
      【解决方案3】:

      完成这个问题。正如 Derick Bailey 所建议的那样:我通过为不同的客户引入(默认)凭据来帮助自己。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-02-15
        • 2012-02-19
        • 2018-06-18
        • 2018-03-26
        相关资源
        最近更新 更多