簡體   English   中英

如何使用SAS密鑰通過Node.js SDK連接到Azure Service Bus訂閱?

[英]How to connect to an Azure Service Bus subscription with the Node.js SDK using SAS Keys?

有沒有一種方法可以使用Node.js SDK中的共享訪問簽名密鑰連接到Azure服務總線訂閱? 我們要使用SAS密鑰從訂閱中讀取消息。

文檔中有關於SAS內容,但沒有具體內容。

我不知道。

共享訪問簽名(SAS)是服務總線消息傳遞的主要安全機制。 通常,僅在特定隊列或主題上具有發送和接收特權的情況下創建服務總線發布者的SAS令牌。 因此,您需要使用連接字符串來連接到Azure Service Bus命名空間。

該軟件包使您可以輕松生成共享訪問簽名: https : //github.com/mitchdenny/shared-access-signature

關於如何通過REST API使用SAS令牌將消息發送到服務總線隊列或主題的方法,可以參考https://docs.microsoft.com/zh-cn/rest/api/servicebus/send-message-to -隊列

有關使用SAS的更多信息,請參閱使用Service Bus進行共享訪問簽名身份驗證

針對您的評論:

理解但沒有創建實例,您將無法對服務總線操作進行任何操作-這些功能包括能夠從訂閱中讀取消息?

因此,理論上,您的代碼應如下所示:

var serviceBusConnectionString = "Endpoint=sb://somens.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=mykey";

var retryOperations = new azure.ExponentialRetryPolicyFilter();
var serviceBusService = azure.createServiceBusService(serviceBusConnectionString).withFilter(retryOperations);

serviceBusService.receiveSubscriptionMessage('MyTopic', 'LowMessages', function(error, receivedMessage){
    if(!error){
        // Message received and deleted
        console.log(receivedMessage);
    }
});

更多信息在這里

原件

檢查一下這個以及后續stackoverflow的答案 ,結合這兩個鏈接應該可以把您整理出來?

謝謝

暫無
暫無

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

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