Autenticare un'applicazione con Microsoft Entra ID per accedere alle risorse di Hub eventi

Microsoft Azure offre una gestione integrata del controllo di accesso per le risorse e le applicazioni in base all'ID Microsoft Entra. Un vantaggio fondamentale dell'uso di Microsoft Entra ID con Hub eventi di Azure è che non è più necessario archiviare le credenziali nel codice. È invece possibile richiedere un token di accesso OAuth 2.0 da Microsoft Identity Platform. Il nome della risorsa per richiedere un token è https://eventhubs.azure.net/ed è lo stesso per tutti i cloud/tenant (per i client Kafka, la risorsa per richiedere un token è https://<namespace>.servicebus.windows.net). Microsoft Entra autentica l'entità di sicurezza (un utente, un gruppo o un'entità servizio) che esegue l'applicazione. Se l'autenticazione ha esito positivo, Microsoft Entra ID restituisce un token di accesso all'applicazione e l'applicazione può quindi usare il token di accesso per autorizzare la richiesta di Hub eventi di Azure risorse.

Quando un ruolo viene assegnato a un'entità di sicurezza Di Microsoft Entra, Azure concede l'accesso a tali risorse per tale entità di sicurezza. L'accesso può essere limitato al livello di sottoscrizione, al gruppo di risorse, allo spazio dei nomi di Hub eventi o a qualsiasi risorsa al suo interno. Una sicurezza di Microsoft Entra può assegnare ruoli a un utente, a un gruppo, a un'entità servizio dell'applicazione o a un'identità gestita per le risorse di Azure.

Nota

Una definizione di ruolo è una raccolta di autorizzazioni, Il controllo degli accessi in base al ruolo di Azure controlla il modo in cui queste autorizzazioni vengono applicate tramite l'assegnazione di ruolo. Un'assegnazione di ruolo è costituita da tre elementi: entità di sicurezza, definizione del ruolo e ambito. Per altre informazioni, vedere Informazioni sui diversi ruoli.

Ruoli predefiniti per Hub eventi di Azure

Azure prevede i seguenti ruoli predefiniti per l'autorizzazione dell'accesso ai dati di Hub eventi tramite Microsoft Entra ID e OAuth:

Per i ruoli predefiniti del Registro schemi, vedere Ruoli del Registro di sistema dello schema.

Importante

La versione di anteprima supporta l'aggiunta dei privilegi di accesso ai dati di Hub eventi al ruolo Proprietario o Collaboratore. Tuttavia, i privilegi di accesso ai dati per il ruolo Proprietario e Collaboratore non vengono più rispettati. Se si usa il ruolo Proprietario o Collaboratore, passare all'uso del ruolo Proprietario dati Hub eventi di Azure.

Eseguire l'autenticazione da un'applicazione

Uno dei vantaggi principali dell'utilizzo di Microsoft Entra ID con Hub eventi è che le credenziali non devono più essere archiviate nel codice. È invece possibile richiedere un token di accesso OAuth 2.0 da Microsoft Identity Platform. Microsoft Entra esegue l'autenticazione dell'entità di sicurezza (un utente, un gruppo o un'entità servizio) che esegue l'applicazione. Se l'autenticazione va a buon fine, Microsoft Entra ID restituisce il token di accesso all'applicazione, che può usarlo per autorizzare le richieste a Hub eventi di Azure.

Le sezioni seguenti illustrano come configurare l'applicazione nativa o l'applicazione Web per l'autenticazione con Microsoft Identity Platform 2.0. Per altre informazioni su Microsoft Identity Platform 2.0, vedere Panoramica di Microsoft Identity Platform (v2.0).

Per una panoramica del flusso di concessione del codice OAuth 2.0, vedere Autorizzare l'accesso alle applicazioni Web Microsoft Entra usando il flusso di concessione del codice OAuth 2.0.

Registrare l'applicazione con un tenant di Microsoft Entra

Il primo passaggio nell'uso di Microsoft Entra ID per autorizzare le risorse di Hub eventi consiste nel registrare l'applicazione client con un tenant di Microsoft Entra dal portale di Azure. Seguire la procedura descritta nella guida introduttiva: Registrare un'applicazione con Microsoft Identity Platform per registrare un'applicazione in Microsoft Entra ID che rappresenta l'applicazione che tenta di accedere alle risorse di Hub eventi.

Quando si registra l'applicazione client, si forniscono informazioni sull'applicazione ad AD. Microsoft Entra ID fornisce quindi un ID client (detto anche ID applicazione) che è possibile usare per associare l'applicazione al runtime di Microsoft Entra. Per altre informazioni sull'ID client, vedere Oggetti applicazione e entità servizio in Microsoft Entra ID.

Nota

Se si registra l'applicazione come applicazione nativa, è possibile specificare qualsiasi URI valido come URI di reindirizzamento. Per le applicazioni native, questo valore non deve essere un URL reale. Per le applicazioni Web, l'URI di reindirizzamento deve essere un URI valido, perché specifica l'URL a cui vengono forniti i token.

Dopo aver registrato l'applicazione, verrà visualizzato l'ID applicazione (client) in Impostazioni:

Screenshot showing the app registration page with application ID highlighted.

Creare un segreto client

L'applicazione deve avere un segreto client per dimostrare la propria identità quando richiede un token. Seguire la procedura descritta in Aggiungere un segreto client per creare un segreto client per l'app in Microsoft Entra ID.

Assegnare ruoli di Azure usando il portale di Azure

Assegnare uno dei ruoli di Hub eventi all'entità servizio dell'applicazione nell'ambito desiderato (spazio dei nomi di Hub eventi, gruppo di risorse, sottoscrizione). Per la procedura dettagliata, vedere Assegnare ruoli di Azure usando il portale di Azure.

Dopo aver definito il ruolo e il relativo ambito, è possibile testare questo comportamento con esempi in questa posizione di GitHub. Per altre informazioni sulla gestione dell'accesso alle risorse di Azure con il controllo degli accessi in base al ruolo di Azure e sull'portale di Azure, vedere questo articolo.

Librerie client per l'acquisizione di token

Dopo aver registrato l'applicazione e aver concesso le autorizzazioni per inviare/ricevere dati in Hub eventi di Azure, è possibile aggiungere codice all'applicazione per autenticare un'entità di sicurezza e acquisire il token OAuth 2.0. Per autenticare e acquisire il token, è possibile usare una delle librerie di autenticazione di Microsoft Identity Platform o un'altra libreria open source che supporta OpenID o Connessione 1.0. L'applicazione può quindi usare il token di accesso per autorizzare una richiesta a Hub eventi di Azure.

Per gli scenari in cui è supportato l'acquisizione dei token, vedere la sezione Scenari del repository GitHub microsoft Authentication Library (MSAL) per .NET .

Esempi

Passaggi successivi

Vedere gli articoli correlati seguenti: