向 Azure 通訊服務驗證
每一個與 Azure 通訊服務互動的用戶端都必須接受驗證。 在一般結構中,通常會使用用戶端與伺服器結構、存取金鑰或 Microsoft Entra 驗證進行伺服器端的驗證。
其他類型的驗證採用「使用者存取權杖」驗證需要使用者參與的服務。 例如,聊天或電話撥接服務會用使用者存取權杖,允許將使用者新增至執行緒並與彼此交談。
驗證選項
下表顯示 Azure 通訊服務 SDK 及其驗證選項:
SDK | 驗證選項 |
---|---|
身分識別 | 存取金鑰或 Microsoft Entra 驗證 |
SMS | 存取金鑰或 Microsoft Entra 驗證 |
電話號碼 | 存取金鑰或 Microsoft Entra 驗證 |
電子郵件 | 存取金鑰或 Microsoft Entra 驗證 |
進階傳訊 | 存取金鑰或 Microsoft Entra 驗證 |
通話 | 使用者存取權杖 |
聊天 | 使用者存取權杖 |
下面簡要說明每個授權選項:
便捷鍵
存取金鑰驗證適合於受信任服務環境中執行的服務應用程式。 您的存取金鑰可位於 Azure 通訊服務入口網站中。 服務應用程式會使用存取金鑰作為認證,以此初始化對應的 SDK。 請參閱身分識別 SDK 了解使用範例。
由於存取金鑰屬於您資源中連接字串的一部分,使用連接字串進行驗證等同於使用存取金鑰進行驗證。
如果您希望使用存取金鑰手動呼叫 Azure 通訊服務的 API,則您必須簽署要求。 有關簽署要求的詳細說明,請參閱此教學課程。
若要設定服務主體,請從 Azure CLI 建立已註冊的應用程式, 之後即可用端點和認證來驗證 SDK。 請參閱範例,了解服務主體的使用方式。
通訊服務支援對通訊服務資源進行 Microsoft Entra ID 驗證。 您可以在「如何搭配 Azure 通訊服務使用受控識別」中找到更多有關受控識別支援的詳細資料。
Microsoft Entra ID 驗證
Azure 平台提供了角色型存取 (Azure RBAC) 來控制對資源的存取。 Azure RBAC 安全性主體代表要求存取 Azure 資源的使用者、群組、服務主體或受控識別。 與其他授權選項相比,Microsoft Entra ID 驗證提供了卓越的安全性和易用性。
受控識別:
- 藉由使用受控識別,您可以避免必須將您的帳戶存取金鑰儲存在您的程式碼中,就像使用存取金鑰授權一樣。 受控識別認證由平台完全管理、輪換和保護,降低了認證暴露的風險。
- 受控識別可以對支援 Microsoft Entra ID 驗證的 Azure 服務和資源進行驗證。 此方法提供了一種無縫且安全的方式來管理認證。
- 如需如何搭配 Azure 通訊服務使用受控識別的詳細資訊,請參閱本指南。
服務主體:
- 若要設定服務主體,請從 Azure CLI 中建立已註冊的應用程式。 之後即可用端點和認證來驗證 SDK。
- 請參閱範例,了解服務主體的使用方式。
通訊服務支援對通訊服務資源進行 Microsoft Entra ID 驗證,雖然您可以繼續對通訊服務應用程式使用存取金鑰授權,但 Microsoft 建議盡可能移到 Microsoft Entra ID。
使用受信任的驗證服務 Hero 範例,將 Azure 通訊服務存取權杖與 Microsoft Entra ID 相對應。
使用者存取權杖
使用者存取權杖係透過身分識別 SDK 而產生,且與身分識別 SDK 中建立的使用者相關聯。 請參閱範例,了解如何建立使用者並產生權杖。 之後,系統會以使用者存取權杖來驗證在聊天或電話撥接 SDK 中新增至交談的參與者。 如需詳細資訊,請參閱將聊天新增至您的應用程式。 使用者存取權杖驗證與存取金鑰及 Microsoft Entra 驗證有所不同,前者是用來驗證使用者,而非受保護的 Azure 資源。
針對監視和計量使用身分識別
使用者身分識別的用意,在於充當透過 Azure 監視器收集記錄和計量的主要金鑰。 如果您希望檢視特定使用者所有通話之類的內容,請設定您的驗證方式,使其可將特定 Azure 通訊服務識別對應至單一使用者。 深入了解您可使用的記錄分析 和計量。
下一步
如需詳細資訊,請參閱下列文章: