将 Powershell 与 Azure 结合使用来检索服务总线主题的 AuthoriztionRule 的 ConnectionString

Use Powershell with Azure to retrieve the ConnectionString of an AuthoriztionRule of a Service Bus Topic

我是 Azure 和 Powershell 的新手。

我正在尝试编写 PowerShell 脚本来创建一个可以从 Azure DevOps 发布到的环境。

作为其中的一部分,我正在创建一个包含多个主题的服务总线。每个主题将有多个授权规则 - 一个用于发布,一个用于订阅。

我有这个工作的脚本。但是,我需要获取这些规则的连接字符串并将它们保存到密钥库中,以便应用程序可以使用它们。

这是我卡住的地方。

这与我现有的代码类似:

   New-AzServiceBusTopic -ResourceGroupName myResourceGroup -Namespace myServiceBus -EnablePartitioning $false -Name myTopic

   New-AzServiceBusAuthorizationRule `
      -ResourceGroupName myResourceGroup `
      -Namespace myServiceBus `
      -Topic myTopic`
      -Name myTopic.pub  `
      -Rights  @("Send") 

在 Azure 门户中,我将单击服务总线和主题,select 共享访问策略并单击该策略。它会向我显示带有主连接字符串的 SAS 策略。

PowerShell 中有什么方法可以获取主连接字符串吗?

谢谢

如果你安装了 azure powershell Az.ServiceBus 模块,你可以直接使用这个命令:Get-AzServiceBusKey.

例如:

Get-AzServiceBusKey -ResourceGroup Default-ServiceBus-WestUS -Namespace SB-Example1 -Name AuthoRule1