You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从应用获取Azure Event Hub实例详情?ARM API使用问题

解决Azure Event Hub实例详情及连接字符串获取问题

嘿,我明白你现在的困扰——用Resources ListByResourceGroup API只能拿到Event Hub命名空间,但拿不到具体的实例名称和连接字符串对吧?别担心,这是因为Event Hub实例是命名空间下的子资源,而连接字符串则和命名空间(或实例)的授权规则绑定,得用专门的Event Hub API来获取。

获取Event Hub实例名称

要列出指定命名空间下的所有Event Hub实例,你需要调用Event Hub的专用列表API:

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs?api-version=2024-01-01

这个API的返回结果里,每个条目都会包含name字段,这就是你要找的Event Hub实例名称。你可以先通过Resources ListByResourceGroup拿到所有命名空间,再逐个调用这个API来获取对应命名空间下的实例列表。

获取连接字符串

连接字符串是和授权规则(Authorization Rule)关联的,分两种场景:

1. 获取命名级别的连接字符串(适用于该命名空间下所有实例)

首先获取命名空间的所有授权规则:

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/authorizationRules?api-version=2024-01-01

然后针对每个授权规则,调用listKeys接口获取连接字符串:

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/authorizationRules/{ruleName}/listKeys?api-version=2024-01-01

返回结果里的primaryConnectionString和secondaryConnectionString就是你需要的连接字符串。

2. 获取单个Event Hub实例的专属连接字符串

如果需要针对某个特定实例的连接字符串,可以调用实例级别的listKeys接口:

GET /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventHub/namespaces/{namespaceName}/eventhubs/{eventHubName}/authorizationRules/{ruleName}/listKeys?api-version=2024-01-01

这个接口返回的是仅对该Event Hub实例有效的连接字符串。

整体流程总结

  • 用Resources ListByResourceGroup API获取目标资源组下的所有Event Hub命名空间;
  • 遍历每个命名空间,调用Event Hub实例列表API获取该命名空间下的所有实例名称;
  • 根据需求,调用对应级别的授权规则listKeysAPI获取连接字符串。

内容的提问来源于stack exchange,提问作者Abhishek Upadhyay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.11 09:25:39