Azure Web PubSub 服務數據平面 REST API 參考
如上述工作流程圖表所說明,以及內部描述的詳細工作流程,您的應用程式伺服器可以將訊息傳送至用戶端,或使用 Web PubSub 服務公開的 REST API 來管理連線的用戶端。 本文詳細說明 REST API。
重要
原始 連接字串 只針對示範目的出現在本文中。
連接字串包含應用程式存取 Azure Web PubSub 服務所需的授權資訊。 連接字串內的存取金鑰類似於服務的根密碼。 在生產環境中,請一律保護您的存取金鑰。 使用 Azure 金鑰保存庫,安全地管理和輪替密鑰,並使用保護連線WebPubSubServiceClient
。
避免將存取金鑰散發給其他使用者、寫入程式碼,或將其以純文字儲存在他人可以存取的位置。 如果您認為金鑰可能已遭盜用,請輪替金鑰。
使用 REST API
透過 Azure Web PubSub Service AccessKey 進行驗證
在每個 HTTP 要求中,需要具有 JSON Web 令牌 (JWT) 的授權標頭,才能向 Azure Web PubSub 服務進行驗證。
簽署演算法和簽章
HS256
,即 HMAC-SHA256,用來做為簽署演算法。
您應該使用 AccessKey
Azure Web PubSub Service 實例 連接字串 中的 來簽署產生的 JWT 令牌。
宣告
下列宣告必須包含在 JWT 令牌中。
宣告類型 | 是必要的 | 描述 |
---|---|---|
aud |
true | 應該 與您的 HTTP 要求 URL 相同 。 例如,廣播要求的物件看起來像: https://example.webpubsub.azure.com/api/hubs/myhub/:send?api-version=2022-11-01 。 |
exp |
true | 此令牌到期的 Epoch 時間。 |
JS 中的虛擬程式代碼:
原始 連接字串 只會出現在本文中,以供示範之用。 在生產環境中,請一律保護您的存取金鑰。 使用 Azure 金鑰保存庫,安全地管理和輪替密鑰,並使用保護連線WebPubSubServiceClient
。
const bearerToken = jwt.sign({}, connectionString.accessKey, {
audience: request.url,
expiresIn: "1h",
algorithm: "HS256",
});
透過 Microsoft Entra 令牌進行驗證
如同使用 AccessKey
, 也需要 JSON Web 令牌 (JWT) 來驗證 HTTP 要求。
差異在於,在此案例中,JWT 令牌是由Microsoft Entra ID 所產生。
使用的認證範圍應該是 https://webpubsub.azure.com/.default
。
您也可以使用角色型 存取控制 (RBAC) 來授權伺服器對 Azure Web PubSub 服務的要求。
API
作業群組 | 描述 |
---|---|
服務狀態 | 提供檢查服務狀態的作業 |
中樞作業 | 提供作業來管理連線,並傳送訊息給它們。 |