首页 > 解决方案 > 通过 MassTransit 将应用程序连接到 RabbitMQ 集群。AuthenticationFailureException:ACCESS_REFUSED

问题描述

我有以下情况:

在此处输入图像描述

在我的代码中:

container.AddMassTransit(x =>
{
    LogContext.ConfigureCurrentLogContext(container.Resolve<SerilogLoggerFactory>());
    x.AddBus(context => Bus.Factory.CreateUsingRabbitMq(cfg =>
    {
        var host = cfg.Host("testServer", hostConfigurator =>
        {
            hostConfigurator.Username("user-app");
            hostConfigurator.Password("user-password");

            hostConfigurator.UseCluster(c =>
            {
                string[] hostnames = ("testServer:5672;testServer:5682;testServer:5692").Split(';');
                c.ClusterMembers = hostnames;
            });
        });


        cfg.ConfigureEndpoints(container);
    }));

});

IBusControl busControl = container.Kernel.Resolve<IBusControl>();
try
{
    busControl.Start();
}
catch (Exception ex)
{
    var logger = container.Resolve<ILogger>();
    logger.Error("RabbitMQ broker is not reachable, BusControl cannot be started. ", ex);
}

问题:当我尝试启动应用程序时,它说:

代理无法访问:testServer:5672/ ---> RabbitMQ.Client.Exceptions.BrokerUnreachableException:指定的端点均不可访问 ---> RabbitMQ.Client.Exceptions.AuthenticationFailureException:ACCESS_REFUSED - 使用身份验证机制 PLAIN 拒绝登录。有关详细信息,请参阅代理日志文件。

我的用户页面:

在此处输入图像描述

用户应用程序可以访问虚拟主机。我错过了什么吗?

标签: c#.netrabbitmqmasstransit

解决方案


推荐阅读