【问题标题】:Retrieve Service Bus primaryConnectionString with az cli使用 az cli 检索服务总线 primaryConnectionString
【发布时间】:2018-01-02 04:24:13
【问题描述】:

是否可以使用 AZ CLI 获取 Azure 服务总线 primaryConnectionString?

输入参数:

  1. 资源组
  2. 服务总线名称

【问题讨论】:

    标签: azure azureservicebus azure-cli azure-cli2


    【解决方案1】:

    多年后它现在得到支持。万一其他人像我一样偶然发现这个问题,可以这样做:

    az servicebus namespace authorization-rule keys list --resource-group myresourcegroup --namespace-name mynamespace --name RootManageSharedAccessKey --query primaryConnectionString -o tsv
    

    【讨论】:

      【解决方案2】:

      目前,Azure CLI 2.0 不支持服务总线。您可以使用az -h 进行检查。 Power Shell 和 Azure CLI 1.0(asm 模式)现在支持服务总线。

      您可以使用 Power Shell 来获取主 ConnectionString。

      $CurrentRule = Get-AzureRmServiceBusNamespaceAuthorizationRule -ResourceGroup $ResGrpName -NamespaceName $Namespace -AuthorizationRuleName $AuthRule
      $AuthRule=$CurrentRule.Name
      (Get-AzureRmServiceBusNamespaceKey -ResourceGroup shuibus -NamespaceName shuitest -AuthorizationRuleName $AuthRule).PrimaryConnectionString
      

      更多信息请参考这个link

      更新:

      在 Linux VM 上,您可以使用 this Rest API 自动生成连接字符串。

      POST /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceBus/namespaces/{namespaceName}/AuthorizationRules/{authorizationRuleName}/listKeys?api-version=2015-08-01
      

      【讨论】:

      • 谢谢。但我尝试在 linux 下自动化部署脚本。如何在 linux 环境下调用 Power Shell 脚本?
      • @popalka 目前,这是不可能的。
      • @popalka 在 Linux 上,您可以使用 Rest API 来获取 ConnectionString。 docs.microsoft.com/en-us/rest/api/servicebus/…
      • 谢谢,我试试
      • @popalka 你需要先创建一个服务原则。我用Invoke-RestMethod 测试成功。现在,我用curl 进行测试,我会给你结果。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-17
      相关资源
      最近更新 更多