簡體   English   中英

在 netstandard2 項目中使用 Azure.Messaging.ServiceBus 和 SAS 令牌

[英]Using Azure.Messaging.ServiceBus with SAS token in netstandard2 project

Microsoft.Azure.ServiceBus package 允許通過 Z2DB46Z358CFB3BDA9A 令牌連接到 Azure Microsoft 建議改用較新的 package Azure.Messaging.ServiceBus

在此處輸入圖像描述

但是我找不到在 SAS 令牌的幫助下創建ServiceBusClient的方法。

有沒有辦法使用 SAS 令牌創建ServiceBusClient ,如果是:如何。 如果不是:通過 SAS 令牌連接到 Azure 的推薦方法是什么? 我是否必須使用過時的Microsoft.Azure.ServiceBus package? 還有第三個 package 名為WindowsAzure.ServiceBus但似乎這個需要一個 .NET 框架項目並且不適用於 .NET 標准?

注意:我們不能通過 Azure.Identity 使用身份驗證,因為應該訪問服務總線的用戶不是我們 Azure AD 的一部分,而且永遠不會。

先感謝您。

使用帶有ServiceBusClient的 SAS 令牌可以通過將 SAS 令牌添加到連接字符串來完成,使用模式SharedAccessSignature=<<SAS>>; 並刪除門戶填充的SharedAccessKeySharedAccessKeyName令牌。

在 7.2.x-beta 行中,還可以使用接受AzureSasCredential的構造函數指定 SAS 令牌:

var credential = new AzureSasCredential("<< YOUR SAS TOKEN >>");

var fullyQualifiedNamespace = 
    "<< NAMESPACE (likely similar to {your-namespace}.servicebus.windows.net) >>";

await using var client = new ServiceBusClient(fullyQualifiedNamespace, credential);

如果您能夠使用測試版,我建議您使用憑證,因為它允許您在不創建新客戶端的情況下更新 SAS 令牌,而連接字符串方法不支持。

關於庫, Azure.Messaging.ServiceBus是當前一代,我們建議在您提到的兩個遺留庫上使用它。

暫無
暫無

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

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