Главная / Справочник ошибок / RabbitMQ
RabbitMQ отклонил имя или пароль
ACCESS_REFUSED - Login was refused using authentication mechanism PLAIN
ACCESS_REFUSED Login was refused using authentication mechanism PLAIN: RabbitMQ не принял учётные данные. Неверный пароль, пользователь guest не с localhost или нет прав на виртуальный хост.
Что это значит
Брокер получил подключение и отклонил учётные данные. Причины три. Пароль или имя в настройках сервиса не совпадают с брокером. Используется встроенный пользователь guest: ему разрешён вход только с того же сервера, где работает брокер. Пользователь существует, но у него нет прав на нужный виртуальный хост: тогда текст ошибки будет про access to vhost.
Как проверить
В логе брокера причина написана прямо: user 'rx' - invalid credentials или user 'guest' can only connect via localhost.
rabbitmqctl list_users
rabbitmqctl authenticate_user <имя> <пароль>
rabbitmqctl list_permissions -p <виртуальный хост>
Что сделать
- Завести отдельного пользователя для RX, не использовать
guest. - Задать пароль заново:
rabbitmqctl change_password <имя> <пароль>и тот же пароль в настройках сервисов. - Выдать права на виртуальный хост:
rabbitmqctl set_permissions -p <хост> <имя> ".*" ".*" ".*". - Если брокер пересоздавали без сохранения данных, пользователи и права пропали вместе с ним. Их нужно завести заново.