簡體   English   中英

創建和刪除Azure服務總線主題的最低權限?

[英]Minimum Permissions for Creating and Deleting Subscriptions to an Azure Service Bus Topic?

我正在創建一個應用程序,該應用程序需要在azure服務總線中創建和刪除對已創建主題的訂閱。

我的共享訪問令牌是否需要該主題的管理權限才能創建和刪除訂閱? 我已經進行了一些初步的谷歌搜索,但我找不到的文章都沒有顯示這三個角色(管理,發送,監聽)與訂閱實體的相關性。

謝謝!

更新我已經直接在該主題上創建了共享訪問策略,然后編寫了以下代碼以訪問該主題,創建訂閱,然后通過IDisposable接口取消/處置它們:

public class SubscriptionHandler : IDisposable
{
    protected NamespaceManager SubManager { get; set; }
    protected SubscriptionDescription SubDetails { get; set; }
    public SubscriptionClient Client { get; }

    public SubscriptionHandler(AuthDetails details)
    {
        try
        {
            var connectionString = ConfigurationManager.AppSettings["Microsoft.ServiceBus.ConnectionString"];
            SubManager = NamespaceManager.CreateFromConnectionString(connectionString);
            SubDetails = new SubscriptionDescription("topic", $"record{details.ID}.Other{details.OtherID}");
            if (!SubManager.SubscriptionExists(SubDetails.TopicPath, SubDetails.Name))
            {   //setting subscription to receive all bookings that are for the given businessID
                SubManager.CreateSubscription(SubDetails, new SqlFilter($"ID = {details.ID}"));
            }

            Client = SubscriptionClient.CreateFromConnectionString(connectionString, SubDetails.TopicPath, SubDetails.Name);
        }catch (Exception ex)
        {
            throw;
        }
    }

    public void Dispose()
    {
        if(Client != null)
        {
            Client.Close(); // telling subscription we are no longer going to recieve messages
        }

        if (SubManager != null && SubManager.SubscriptionExists(SubDetails.TopicPath, SubDetails.Name))
        {
            SubManager.DeleteSubscription(SubDetails.TopicPath, SubDetails.Name);
        }
    }

但是,我仍然收到未經授權的異常

SubManager.CreateSubscription(SubDetails,new SqlFilter($“ ID = {details.ID}”))); 呼叫。 我從SharedAccessPolicy連接字符串中復制了連接字符串,然后刪除了EntityPath名稱值對。...我在做什么錯?

我的共享訪問令牌是否需要該主題的管理權限才能創建和刪除訂閱?

正如有關服務總線操作所需權限的正式文檔所述,“ Create a subscription和“ Delete subscription操作需要對該主題具有“ 管理”權限。

沒有“管理”權限,當您處理“創建/刪除”訂閱操作時,將得到如下所示的401響應:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM