使用guest用户远程连接RabbitMQ用户名密码错误
来源:互联网 发布:免费电子期刊制作软件 编辑:程序博客网 时间:2024/06/07 08:12
使用的是默认用户guest,密码也是guest
代码:
package com.adtec.rabbitmq;import com.rabbitmq.client.Channel;import com.rabbitmq.client.Connection;import com.rabbitmq.client.ConnectionFactory;public class Send { private final static String QUEUE_NAME = "hello"; public static void main(String[] argv) throws Exception { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("192.168.71.111"); factory.setUsername("guest"); factory.setPassword("guest"); factory.setPort(5672); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); String message = "Hello World!"; channel.basicPublish("", QUEUE_NAME, null, message.getBytes("UTF-8")); System.out.println(" [x] Sent '" + message + "'"); channel.close(); connection.close(); }}
错误信息:
[AMQP Connection 192.168.71.111:5672] WARN com.rabbitmq.client.impl.ForgivingExceptionHandler - An unexpected connection driver error occured (Exception message: Connection reset)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:342) at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:62) at com.rabbitmq.client.impl.recovery.AutorecoveringConnection.init(AutorecoveringConnection.java:99) at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:900) at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:859) at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:817) at com.rabbitmq.client.ConnectionFactory.newConnection(ConnectionFactory.java:954) at com.adtec.rabbitmq.Send.main(Send.java:17)
我在Windows机器上也装了一个RabbitMQ,也用这个用户登录,结果是可以!!!
package com.adtec.rabbitmq;import com.rabbitmq.client.Channel;import com.rabbitmq.client.Connection;import com.rabbitmq.client.ConnectionFactory;public class Send { private final static String QUEUE_NAME = "hello"; public static void main(String[] argv) throws Exception { ConnectionFactory factory = new ConnectionFactory(); factory.setHost("localhost"); factory.setUsername("guest"); factory.setPassword("guest"); factory.setPort(5672); Connection connection = factory.newConnection(); Channel channel = connection.createChannel(); channel.queueDeclare(QUEUE_NAME, false, false, false, null); String message = "Hello World!"; channel.basicPublish("", QUEUE_NAME, null, message.getBytes("UTF-8")); System.out.println(" [x] Sent '" + message + "'"); channel.close(); connection.close(); }}
查了官网才知道
因为guest用户只是被容许从localhost访问。官网文档描述如下:
“guest” user can only connect via localhost
有兴趣的可以详细了解:http://www.rabbitmq.com/access-control.html
解决办法就是新建用户并授权
新建test用户,授予administrator权限
rabbitmqctl add_user test rootrabbitmqctl set_user_tags test administratorrabbitmqctl set_permissions -p / test ".*" ".*" ".*"
再连接:
好使了!!!
阅读全文
0 0
- 使用guest用户远程连接RabbitMQ用户名密码错误
- 远程连接提示用户名和密码错误
- rabbitmq创建远程连接用户
- RabbitMQ创建远程连接用户
- rabbitmq的web管理界面无法使用guest用户登录
- 远程桌面连接提示“您的凭据不工作”和远程共享磁盘“未知的用户名或密码错误”
- JSP 连接远程 LDAP 实现用户名和密码验证
- JSP 连接远程LDAP 实现用户名和密码验证
- Linux 查看用户名,修改密码,远程ssh连接
- rabbitmq的web管理界面无法使用guest用户登录的问题
- rabbitmq远程连接
- rabbitmq开启远程连接
- 登录使用OPENSHIFT搭建的PHP+MYSQL应用,显示【连接数据库失败,数据库用户名或密码错误
- MongoDb3配置简单远程连接-(无授权)即无需用户名密码来远程登录
- MongoDb3配置远程连接-(带授权)即必须用户名密码来远程登录(win10)
- Rabbitmq 添加用户访控制台(guest无法登陆控制台问题)
- 发生系统错误 1219。不允许一个用户使用一个以上用户名与服务器或共享资源的多重连接。
- 使用用户名+密码的方式连接SQLSERVER
- log4net之syslog和logstash结合
- 友元函数和友元类
- jquery获取,改变页面内容
- visibilitychange事件判断当前页面——可见性的状态
- Mysql ubuntu 定时备份
- 使用guest用户远程连接RabbitMQ用户名密码错误
- SSM项目从零开始到入门003-maven集中定义依赖版本号
- 标题带"精""热"。ReplacementSpan实践
- 两年Java开发工作经验面试总结
- linux下,用终端打开软件,例如matlab,如何解除终端占用
- Android 手势检测---GestureDetector
- MVC框架集成
- Solve the android adb connect problem(Linux)
- 1014. 福尔摩斯的约会 (20)