【问题标题】:Unauthorized error when using SendListen shared access key to GetConsumerGroupAsync将 SendListen 共享访问密钥用于 GetConsumerGroupAsync 时出现未经授权的错误
【发布时间】:2017-08-14 11:19:27
【问题描述】:

当我们尝试使用 SendListen Key 访问消费者组时,我们从昨天开始观察到以下错误。它抛出未经授权的错误。如果我使用 RootManagerSharedAccessKey,这可以正常工作。

var connectionString = "Endpoint=sb://*****.servicebus.windows.net/;SharedAccessKeyName=SendListen;SharedAccessKey=****";
        var ns = NamespaceManager.CreateFromConnectionString(connectionString);
        var result= ns.GetConsumerGroupAsync("**", "**").GetAwaiter().GetResult();

例外: '远程服务器返回错误:(401)未经授权。 TrackingId:e2993246-9253-4cb7-ab54-2a9b32abfec7,SystemTracker:*.windows.net:dataoffload/ConsumerGroups/,时间戳:8/11/2017 12:33:46 AM'

EventHub 最近有什么变化吗?

【问题讨论】:

    标签: azure-eventhub


    【解决方案1】:

    根据您的描述,我在我这边检查了这个问题。这是我的测试,你可以参考一下。

    设置 > 共享访问政策

    代码 sn-p:

    var connString = "Endpoint=sb://{my-hubname}.servicebus.windows.net/;SharedAccessKeyName=SendListen;SharedAccessKey=aTu3sxJ1TMLXDWN6ErkHp28aVL/Fstfa49MkuibbQ7A=";
    var ns = Microsoft.ServiceBus.NamespaceManager.CreateFromConnectionString(connString);
    var result = ns.GetConsumerGroupAsync("myhub01", "$Default").GetAwaiter().GetResult();
    

    通过设置,我可以检索我的消费组的描述。此外,对于单一的 Listen 策略,它也可以工作。根据您的错误,我建议您检查您的CONNECTION STRING。此外,您可以利用 fiddler 收集网络跟踪以获取详细信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-09
      • 1970-01-01
      • 1970-01-01
      • 2016-06-29
      • 2018-05-25
      • 2013-05-17
      • 1970-01-01
      • 2011-09-15
      相关资源
      最近更新 更多