QPID和AmqNetLite的连接错误SASL错误

时间:2019-01-29 22:34:57

标签: c# amqp qpid sasl

我对AMQP不熟悉。 我尝试将AmqpNetLite程序连接到Qpid服务器,但出现以下异常: Amqp.AmqpException:sasl机制(sasl服务器机制:[CRAM-MD5,SCRAM-SHA-1,SCRAM-SHA-256])

注意:我可以连接到基本的AMQP服务器,但不能连接到QPID。

以下是创建连接的代码:

请告知从哪里开始解决我的问题。

void Main(string[] args)
{     
    try
    {
    Address address = new Address("amqp://guest:guest@localhost:5672");
    Connection connection = new Connection(address);
    Session session = new Session(connection);
    ReceiverLink receiver = new ReceiverLink(session, "receiver-link", "queue");
    Message message = receiver.Receive();
    receiver.Accept(message);
    receiver.Close();
    session.Close();
    connection.Close();
    }
    catch (Exception ex)
    {
       Console.WriteLine(ex.ToString());
    }
    Console.ReadLine();
}

1 个答案:

答案 0 :(得分:0)

该错误似乎表明代理无法向客户端提供其支持的SASL机制。我认为AmqpNetLite仅执行匿名,普通和外部,但也许已经改变了。您可以调查您的代理配置,并将这些机制之一提供给客户端,这可能会允许匹配并成功进行身份验证。或者,您可以使用SSL连接,这将允许那些SASL机制起作用,并为您的连接提供一些额外的安全性。

Broker-J文档站点的security section应该为您提供一些启发。