Librerie di gestione di Hub eventi

Le librerie di gestione di Hub eventi possono effettuare il provisioning di entità e spazi dei nomi di Hub eventi in modo dinamico, per consentire distribuzioni complesse e scenari di messaggistica e permettere di determinare a livello di codice le entità di cui effettuare il provisioning. Queste librerie sono attualmente disponibili per .NET.

Funzionalità supportate

  • Creazione, aggiornamento, eliminazione di spazi dei nomi
  • Creazione, aggiornamento, eliminazione di Hub eventi
  • Creazione, aggiornamento, eliminazione di gruppi di consumer

Prerequisiti

Per iniziare a usare le librerie di gestione di Hub eventi, è necessario eseguire l'autenticazione con Azure Active Directory (AAD). AAD richiede l'autenticazione come entità servizio, che fornisce l'accesso alle risorse di Azure in uso. Per informazioni su come creare un'entità servizio, vedere uno di questi articoli:

Nel corso di queste esercitazioni vengono forniti un AppId (ID client), un TenantId e un ClientSecret (chiave di autenticazione) che sono usati per l'autenticazione da parte delle librerie di gestione. È necessario avere autorizzazioni di Proprietario per il gruppo di risorse in cui verranno eseguite le librerie.

Modello di programmazione

Il modello di modifica delle risorse di Hub eventi segue un protocollo comune:

  1. Ottenere un token da AAD usando la libreria Microsoft.IdentityModel.Clients.ActiveDirectory.

    var context = new AuthenticationContext($"https://login.microsoftonline.com/{tenantId}");
    
    var result = await context.AcquireTokenAsync(
        "https://management.core.windows.net/",
        new ClientCredential(clientId, clientSecret)
    );
    
  2. Creare l'oggetto EventHubManagementClient.

    var creds = new TokenCredentials(token);
    var ehClient = new EventHubManagementClient(creds)
    {
        SubscriptionId = SettingsCache["SubscriptionId"]
    };
    
  3. Impostare i parametri CreateOrUpdate sui valori specificati.

    var ehParams = new EventHubCreateOrUpdateParameters()
    {
        Location = SettingsCache["DataCenterLocation"]
    };
    
  4. Effettuare la chiamata.

    await ehClient.EventHubs.CreateOrUpdateAsync(resourceGroupName, namespaceName, EventHubName, ehParams);
    

Passaggi successivi