Condividi tramite


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

Microsoft Azure offre la gestione integrata del controllo di accesso per le risorse e le applicazioni basata su Microsoft Entra ID. 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, un'entità servizio o un'identità gestita) che esegue l'applicazione. Se l'autenticazione riesce, Microsoft Entra ID restituisce un token di accesso all'applicazione e questa può quindi usare il token di accesso per autorizzare le richieste a Hub eventi di Azure.

Quando un ruolo viene assegnato a un'entità di sicurezza 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. Un'entità di sicurezza di Microsoft Entra può assegnare ruoli a un utente, un gruppo, un'entità servizio dell'applicazione o 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 schemi.

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 di 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 di OAuth 2.0, vedere Autorizzare l'accesso ad applicazioni Web di Microsoft Entra mediante il flusso di concessione di 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 in Avvio rapido: 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. Microsoft Entra ID fornisce quindi un ID client (detto anche ID applicazione) che si può usare per associare l'applicazione al runtime di Microsoft Entra. Per altre informazioni sull'ID client, vedere Oggetti applicazione e oggetti 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, viene visualizzato l'ID applicazione (client) in Impostazioni:

Screenshot che mostra la pagina di registrazione dell'app con l'ID applicazione evidenziato.

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 tramite il controllo degli accessi in base al ruolo di Azure e il portale di Azure, vedere questo articolo.

Librerie client per l'acquisizione di token

Dopo aver registrato l'applicazione e 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 Connect 1.0. L'applicazione può quindi usare il token di accesso per autorizzare una richiesta in Hub eventi di Azure.

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

Esempi

Vedere gli articoli correlati seguenti: