访问被拒绝 - 使用认证机制PLAIN RabbitMQ Queue拒绝登录
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了访问被拒绝 - 使用认证机制PLAIN RabbitMQ Queue拒绝登录相关的知识,希望对你有一定的参考价值。
我正在尝试使用RabbitMQ从一个应用程序发布消息并在另一个应用程序中接收它们。我可以使用localhost发布消息。
ex: amqp://guest:guest@localhost:5672
当我试图使用不同的Ip发布消息得到以下提到异常。
com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED-Login was refused using authentication mechanism PLAIN. For details see the broker logfile.
示例代码:
private Connection getConnection(){
Connection connection = null;
try {
ConnectionFactory factory = new ConnectionFactory();
final URI uri = URI.create(PropertyReader.read("rabbit.mq.uri").trim());
factory.setConnectionTimeout(30000);
factory.setAutomaticRecoveryEnabled(true);
factory.setTopologyRecoveryEnabled(true);
factory.setNetworkRecoveryInterval(10000);
factory.setExceptionHandler(new DefaultExceptionHandler());
factory.setRequestedHeartbeat(360);
factory.setUri(uri);
connection = factory.newConnection();
LOGGER.info("Rabbit MQ Connection established successfully");
} catch (Exception e) {
LOGGER.error("Error { }"+e);
}
return connection;
}
我需要帮助。
使用telnet我检查提供了IP。
答案
guest
用户默认只能连接到localhost
:see the documentation。
“guest”用户只能通过localhost连接
默认情况下,禁止访客用户远程连接到代理;它只能通过环回接口(即localhost)连接。这适用于AMQP 0-9-1以及通过插件启用的任何其他协议。您创建的任何其他用户都不会(默认情况下)以这种方式受到限制。
这是通过配置文件中的loopback_users项配置的。
如果您希望允许guest用户从远程主机进行连接,则应将loopback_users配置设置为
none
。...
以上是关于访问被拒绝 - 使用认证机制PLAIN RabbitMQ Queue拒绝登录的主要内容,如果未能解决你的问题,请参考以下文章