Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden von Azure Identity mit
Dieser Artikel zeigt, wie man eine WebPubSubServiceClient erstellt, die Microsoft Entra ID verwendet, um Anfragen an Azure Web PubSub zu autorisieren.
Voraussetzungen
- Ein Azure-Abonnement.
- Eine bestehende Azure Web PubSub-Ressource.
- Eine Microsoft Entra-Identität, wie eine Anwendung oder eine verwaltete Identität.
Important
Weisen Sie der Microsoft Entra-Identität eine Azure-Rolle zu, die die Datenebenenberechtigungen umfasst, die von den SDK-Operationen Ihrer Anwendung benötigt werden. Um ein Clientzugriffstoken zu erzeugen und es zum Herstellen einer Verbindung zu verwenden, benötigt die Identität sowohl Microsoft.SignalRService/WebPubSub/clientConnection/generateToken/action als auch Microsoft.SignalRService/WebPubSub/clientConnection/write. Die integrierte Rolle Web PubSub Service Owner umfasst beide Berechtigungen, gewährt jedoch Zugriff auf alle Data-Plane-APIs. Keine enger gefasste integrierte Rolle enthält beide Berechtigungen. Für den Zugang mit geringsten Privilegien verwenden Sie eine benutzerdefinierte Rolle, die nur die Berechtigungen enthält, die Ihre Anwendung benötigt.
Wählen Sie eine Sprache:
Installieren Sie die Pakete Azure Identity und Azure Web PubSub:
dotnet add package Azure.Identity
dotnet add package Azure.Messaging.WebPubSub
Erstelle ein DefaultAzureCredential, und übergebe es an WebPubSubServiceClient:
using Azure.Identity;
using Azure.Messaging.WebPubSub;
var credential = new DefaultAzureCredential();
var client = new WebPubSubServiceClient(
new Uri("<endpoint>"),
"<hub>",
credential);
Für andere Zugangsdaten siehe die Azure Identity Client-Bibliothek für .NET.
Abhängigkeitsinjektion verwenden
Installieren Sie das Abhängigkeitsinjektionspaket:
dotnet add package Microsoft.Extensions.Azure
Registrieren Sie WebPubSubServiceClient sich bei der Servicesammlung:
using Azure.Identity;
using Microsoft.Extensions.Azure;
using Microsoft.Extensions.DependencyInjection;
void ConfigureServices(IServiceCollection services)
{
services.AddAzureClients(builder =>
{
builder.AddWebPubSubServiceClient(
new Uri("<endpoint>"),
"<hub>",
new DefaultAzureCredential());
});
}
Weitere Informationen finden Sie in der Azure Web PubSub-Service-Client-Bibliothek für .NET und im vollständigen Beispiel.