Azure功能中的服务总线连接字符串被拒绝

时间:2017-04-25 08:57:27

标签: azure azure-storage azure-functions azure-iot-hub

我正在使用 Azure功能通过this指南将 IoTHub 消息提交到 Azure存储。我在第5d节,我需要为我的函数创建一个新的服务总线连接字符串,但无论我使用什么,包括指南中的格式:

Endpoint=<Event Hub-compatible endpoint>;SharedAccessKeyName=iothubowner;SharedAccessKey=<Primary key>

我收到错误:

  

不是有效的服务总线连接字符串。

我已尝试使用IoT中心端点的Event Hub-compatible endpoint以及iothubowner访问政策中的connection string –- primary key,但又拒绝了它。

然后我创建了一个新的服务总线并使用了该连接(请参阅下面的答案和最初的乐观主义!)但是当我尝试编辑该函数时,我收到了404 Toast通知:

  

函数($ DeviceDataToStorage)错误:函数的监听器   'Functions.DeviceDataToStorage'无法启动。   Microsoft.ServiceBus:消息传递实体'管理操作   失败。 status-code:404,status-description:消息传递实体   'sb:// {我的服务巴士连接线是哪个   <找不到} / {EVENTHUBNAME}'找不到..'找不到。

任何使用过Azure功能的人都可以在建议这需要什么格式之前,或者更重要的是,我可以从门户网站获取这些格式吗?

2 个答案:

答案 0 :(得分:3)

我以为我知道了,但我没有。 这就是我的想法,但它并没有

*

  

它缺少教程,但你需要手动创建一个新的   服务总线端点(见   https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-dotnet-get-started-with-queues)   并从中复制CONNECTIONSTRING-PRIMARYKEY   RootManageSharedAccessKey的{​​{1}}政策。

*

答案 1 :(得分:0)

根据您的描述,我检查了这个问题。正如Prepare for IoT Hub connection to read messages所述,您需要为IoT中心端点构建连接字符串,如下所示:

Endpoint={Event Hub-compatible endpoint};SharedAccessKeyName=iothubowner;SharedAccessKey={Primary key}

{Event Hub兼容端点} 替换为:

enter image description here

{主键} 替换为:

enter image description here

  

不是有效的服务总线连接字符串。

我假设您在创建新的事件中心连接时遇到此错误,如下所示:

enter image description here

为Event Hub添加新的连接字符串时,它应如下所示:

enter image description here

注意:我认为您对Service Bus连接字符串和IoT Hub连接字符串感到困惑。

Service Bus的连接字符串:

Endpoint=sb://{your-servicebus-name}.servicebus.windows.net/;SharedAccessKeyName={SharedAccessKeyName};SharedAccessKey={SharedAccessKey}