我有一个事件中心,看起来像这样:
我已经成功地为服务总线做到了这一点,但仅限于高级RootManageSharedAccessKey。
但是,对于Event Hub,我需要SendOnly共享访问策略的主连接字符串。
我尝试了许多组合,但在部署部署时找不到SendOnly共享访问策略。
下面是我的SendOnly共享访问策略的json。
任何帮助都将不胜感激。
发布于 2017-11-20 06:16:11
最终的工作臂模板代码为:
[listkeys(resourceId('Microsoft.EventHub/namespaces/eventhubs/authorizationRules', variables('ehub').name, parameters('eventhubs_myaccountevents_name'), 'SendOnly'), parameters('eventhubs_api_version')).primaryConnectionString]
请注意,不是这样:
Microsoft.Eventhub/namespaces/authorizationRules
我不得不使用这个:
Microsoft.EventHub/namespaces/eventhubs/authorizationRules
发布于 2017-11-18 20:34:23
使用此命令获取连接字符串:
"[listkeys(resourceId('Microsoft.Eventhub/namespaces/authorizationRules',
parameters('name'), 'RootManageSharedAccessKey'),
'2017-04-01').primaryConnectionString]"
你不能把它分成几行,我这样做是为了便于阅读
发布于 2019-10-22 01:09:06
这就是我解决这个问题的方法(包括创建授权规则):
定义变量:
...
"variables": {
"eventHubNamespaceName": "myehubns",
"eventHubName": "myehub",
"eventhubSendAuthorizationRuleName": "SendOnly",
"eventHubSendRuleId": "[resourceId('Microsoft.EventHub/namespaces/eventhubs/authorizationRules', variables('eventHubNamespaceName'),variables('eventHubName'), variables('eventhubSendAuthorizationRuleName'))]"
}
创建授权规则:
...
"resources": [{
"apiVersion": "2017-04-01",
"name": "[variables('eventhubSendAuthorizationRuleName')]",
"type": "authorizationRules",
"dependsOn": [
"[concat('Microsoft.EventHub/namespaces/', variables('eventHubNamespaceName'),'/eventhubs/',variables('eventHubName'))]"
],
"properties": {
"rights": [
"Send"
]
}
}
]
检索之前创建的规则的主连接字符串:
"EventHubConnectionstring": "[listkeys(variables('eventHubSendRuleId'), '2017-04-01').primaryConnectionString]"
https://stackoverflow.com/questions/47360529
复制相似问题