C# QPID和AmqNetLite的连接错误SASL错误

C# QPID和AmqNetLite的连接错误SASL错误,c#,amqp,qpid,sasl,C#,Amqp,Qpid,Sasl,我不熟悉AMQP。 我尝试将AmqpNetLite程序连接到Qpid服务器,但出现以下异常: Amqp.Amqp异常:sasl机制(sasl服务器机制:[CRAM-MD5,SCRAM-SHA-1,SCRAM-SHA-256]) 注意:我可以连接到基本的AMQP服务器,但不能连接到QPID 以下是创建连接的代码: 请告诉我从哪里开始解决我的问题 void Main(string[] args) { try { Address address = new Addre

我不熟悉AMQP。 我尝试将AmqpNetLite程序连接到Qpid服务器,但出现以下异常: Amqp.Amqp异常: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();
}

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


Broker-J文档站点的发布应该会为您提供一些信息。

您能确认您使用的是哪个Qpid服务器实现(和版本)吗?Apache Qpid项目有两个:Qpid CPP Broker和Qpid Broker-J(这是一个Java实现)。Qpid Broker-J版本:6.1 AmqpNetLite 2.1.6是的,确实如此:目前只支持SASL普通、外部和匿名。