0

我们已经为服务总线启用了“用户分配”的 MSI,而我们尝试在 Azure 功能中使用 MSI 连接 Azure 服务总线。它正在抛出异常

代码片段

    var credential = new DefaultAzureCredential(new DefaultAzureCredentialOptions { ManagedIdentityClientId = userAssignedClientId });
    var client=new ServiceBusAdministrationClient($"{serviceBusName}.servicebus.windows.net", credential); 
    var topics = client.GetTopicsAsync()?.GetAsyncEnumerator();//Throwing an exception 
    
    Exception Message: Service request failed.
          Status: 401 (Unauthorized)Content:<Error><Code>401</Code>
          <Detail>claim is empty or token is invalid. 
           SystemTracker:"<ServiceBusName>".servicebus.windows.net:$Resources/topics

  1. 在 Azure 函数上启用了身份(用户分配)。
  2. 在服务总线命名空间上分配了角色 Azure 服务总线数据所有者 我是否缺少某个步骤或要求?
4

1 回答 1

0

您可以尝试通过完全重新生成函数应用项目并将所有内容放回其中、删除 Azure 上的函数应用并重新发布来解决此问题。

并且在 Github 中也存在类似错误的未解决问题。

你也可以参考这个问题

于 2021-09-29T11:13:51.077 回答