Поделиться через


Создание платформы WebPubSubServiceClient с помощью .NET и удостоверений Azure

В этом руководстве показано, как создать WebPubSubServiceClient идентификатор Microsoft Entra в .NET.

Требования

  • Установите Azure.Identity из nuget.org.

    dotnet add package Azure.Identity
    
  • Установка Azure.Messaging.WebPubSub из nuget.org

    dotnet add package Azure.Messaging.WebPubSub
    
  • При использовании DependencyInjection установите Microsoft.Extensions.Azure из nuget.org

    dotnet add package Microsoft.Extensions.Azure
    

Пример кода

  1. Создайте пакет TokenCredential SDK для удостоверений Azure.

    using Azure.Identity;
    
    namespace chatapp
    {
        public class Program
        {
            public static void Main(string[] args)
            {
                var credential = new DefaultAzureCredential();
            }
        }
    }
    

    credential может быть любым классом, наследуемым от TokenCredential класса.

    • EnvironmentCredential
    • ClientSecretCredential
    • ClientCertificateCredential
    • ManagedIdentityCredential
    • VisualStudioCredential
    • VisualStudioCodeCredential
    • AzureCliCredential

    Дополнительные сведения см . в клиентской библиотеке удостоверений Azure для .NET

  2. Затем создайте client с помощью endpoint, hubи credential.

    using Azure.Identity;
    using Azure.Messaging.WebPubSub;
    
    public class Program
    {
        public static void Main(string[] args)
        {
            var credential = new DefaultAzureCredential();
            var client = new WebPubSubServiceClient(new Uri("<endpoint>"), "<hub>", credential);
        }
    }
    

    Или вставить его IServiceCollections в нашу BuilderExtensions.

    using System;
    
    using Azure.Identity;
    
    using Microsoft.Extensions.Azure;
    using Microsoft.Extensions.Configuration;
    using Microsoft.Extensions.DependencyInjection;
    
    namespace chatapp
    {
        public class Startup
        {
            public Startup(IConfiguration configuration)
            {
                Configuration = configuration;
            }
    
            public IConfiguration Configuration { get; }
    
            public void ConfigureServices(IServiceCollection services)
            {
                services.AddAzureClients(builder =>
                {
                    var credential = new DefaultAzureCredential();
                    builder.AddWebPubSubServiceClient(new Uri("<endpoint>"), "<hub>", credential);
                });
            }
        }
    }
    

    Сведения об использовании этого клиента см. в клиентской библиотеке службы Azure Web PubSub для .NET

Полный пример