title | description | author | ms.author | ms.date | ms.service | ms.custom | ms.topic |
---|---|---|---|---|---|---|---|
How to create a WebPubSubServiceClient with .NET and Azure Identity | How to create a WebPubSubServiceClient with .NET and Azure Identity | terencefan | tefa | 11/15/2021 | azure-web-pubsub | devx-track-dotnet | how-to |
This how-to guide shows you how to create a WebPubSubServiceClient
using Microsoft Entra ID in .NET.
Install Azure.Identity from nuget.org.
dotnet add package Azure.Identity
Install Azure.Messaging.WebPubSub from nuget.org
dotnet add package Azure.Messaging.WebPubSub
If using DependencyInjection, install Microsoft.Extensions.Azure from nuget.org
dotnet add package Microsoft.Extensions.Azure
Create a
TokenCredential
with Azure Identity SDK.usingAzure.Identity;namespacechatapp{publicclassProgram{publicstaticvoidMain(string[]args){varcredential=newDefaultAzureCredential();}}}
credential
can be any class that inherits fromTokenCredential
class.- EnvironmentCredential
- ClientSecretCredential
- ClientCertificateCredential
- ManagedIdentityCredential
- VisualStudioCredential
- VisualStudioCodeCredential
- AzureCliCredential
To learn more, see Azure Identity client library for .NET
Then create a
client
withendpoint
,hub
, andcredential
.usingAzure.Identity;usingAzure.Messaging.WebPubSub;publicclassProgram{publicstaticvoidMain(string[]args){varcredential=newDefaultAzureCredential();varclient=newWebPubSubServiceClient(newUri("<endpoint>"),"<hub>",credential);}}
Or inject it into
IServiceCollections
with ourBuilderExtensions
.usingSystem;usingAzure.Identity;usingMicrosoft.Extensions.Azure;usingMicrosoft.Extensions.Configuration;usingMicrosoft.Extensions.DependencyInjection;namespacechatapp{publicclassStartup{publicStartup(IConfigurationconfiguration){Configuration=configuration;}publicIConfigurationConfiguration{get;}publicvoidConfigureServices(IServiceCollectionservices){services.AddAzureClients(builder =>{varcredential=newDefaultAzureCredential();builder.AddWebPubSubServiceClient(newUri("<endpoint>"),"<hub>",credential);});}}}
Learn how to use this client, see Azure Web PubSub service client library for .NET