本文介绍了发送AMQP遥测到Azure事件集线器不使用TLS加密的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否可以发送AMQP数据包/遥测到Azure事件中心不使用TLS加密?
Is it possible to send AMQP packets/telemetry to Azure Event Hub not using TLS encryption?
我想这样做的原因是看到什么未加密的AMQP数据包看起来像。
The reason I want to do this, is to see exactly what a non-encrypted AMQP packet looks like.
我尝试过以下代码(请参阅 amqpTransSetting.UseSslStreamSecurity = false ,但它仍然加密通信。
I have tried the following code (see amqpTransSetting.UseSslStreamSecurity = false, but it still encrypts the communication.
var amqpTransSetting = new AmqpTransportSettings();
amqpTransSetting.UseSslStreamSecurity = false;
var cs = @"Endpoint=sb://companyname-ns.servicebus.windows.net/;SharedAccessKeyName=EventHubPublisher;SharedAccessKey=84EHa5NNllnZBzH5ksogvNfhMWtIokdTdjxXXXXXXX=";
var builder = new ServiceBusConnectionStringBuilder(cs)
{
TransportType = TransportType.Amqp,
};
var client = EventHubClient.CreateFromConnectionString(builder.ToString(), "companyname-eh");
int sentCount = sendCount;
string infoText;
for (int i = 0; i < sendCount; i++)
{
try
{
if (MessageType.Text == "Fake Sensor")
{
infoText = "Sent using AMQP protocol";
}
else
{
infoText = "Sent using AMQP protocol";
}
Random rnd = new Random();
int intTemp = rnd.Next(15, 25);
int intHum = rnd.Next(50, 80);
var e = new Event
{
MessageType = MessageType.Text,
Temp = intTemp,
Humidity = intHum,
Location = Location.Text,
Room = Room.Text,
Info = infoText
};
var serializedString = JsonConvert.SerializeObject(e);
var data = new EventData(Encoding.UTF8.GetBytes(serializedString))
{
PartitionKey = rnd.Next(6).ToString()
};
// Set user properties if needed
data.Properties.Add("Type", "Telemetry_" + DateTime.Now.ToLongTimeString());
await client.SendAsync(data).ConfigureAwait(false);
}
catch (Exception exp)
{
Console.WriteLine("Error on send: " + exp.Message);
sentCount--;
}
推荐答案
SSL / TLS连接是必需的用于访问服务总线中的所有实体(队列,主题/订阅和事件集线器)。你不能没有连接。
SSL/TLS connection is mandatory for accessing to all entities in the Service Bus (queues, topics/subscriptions and event hubs). You can't connect without it.
保罗。
这篇关于发送AMQP遥测到Azure事件集线器不使用TLS加密的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!