是否有C#API可以为Azure Service Bus命名空间重新生成共享访问密钥?

时间:2019-02-19 20:23:51

标签: c# azure azureservicebus

我发现API可以重新生成队列和主题的密钥,例如:

TopicDescription topicDescription = namespaceManager.GetTopic(topicName);

SharedAccessAuthorizationRule rule;

bool topicSuccess = topicDescription.Authorization.TryGetSharedAccessAuthorizationRule("RootManageSharedAccessKey", out rule);

if (topicSuccess)
{
    string newkey = SharedAccessAuthorizationRule.GenerateRandomKey();
    rule.PrimaryKey = newkey;
    namespaceManager.UpdateTopic(topicDescription);
}

The docs online声称“您可以在Service Bus名称空间,队列或主题上配置SharedAccessAuthorizationRule规则”,但是我只能为队列和主题找到C#API。我在命名空间级别上找到了REST API,但没有其他内容。

是否有一种支持的方法来重新生成命名空间级别的密钥?

2 个答案:

答案 0 :(得分:2)

您可以使用Microsoft.Azure.Management.ServiceBus.Fluent库重新生成名称空间密钥。

此库中有一种方法RegenerateKeysAsync可重新生成名称空间的访问密钥。

所有名称空间级别的操作都可以使用此库完成。

答案 1 :(得分:0)

您可以按照此代码存储库中的示例进行操作

Azure SDK for .NET

您将对以下代码感兴趣

csrf_token

希望有帮助。

MV