Controllare l'accesso agli eventi

Completato

Hub eventi di Azure supporta sia Microsoft Entra ID che le firme di accesso condiviso (SAS) per gestire sia l'autenticazione che l'autorizzazione. Azure prevede i seguenti ruoli predefiniti per l'autorizzazione dell'accesso ai dati di Hub eventi tramite Microsoft Entra ID e OAuth:

Autorizzare l'accesso con identità gestite

Per autorizzare una richiesta al servizio Hub eventi da un'identità gestita nell'applicazione, è necessario configurare le impostazioni del controllo degli accessi in base al ruolo di Azure per l'identità gestita. Hub eventi di Azure definisce i ruoli di Azure che includono le autorizzazioni per l'invio e la lettura da Hub eventi. Quando il ruolo di Azure viene assegnato a un'identità gestita, all'identità gestita viene concesso l'accesso ai dati di Hub eventi nell'ambito appropriato.

Autorizzare l'accesso con la piattaforma Microsoft Identity

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.

Autorizzare l'accesso agli editori di Hub eventi con firme di accesso condiviso

Un publisher di eventi definisce un endpoint virtuale per un hub eventi. Il publisher può essere usato solo per inviare messaggi a un hub eventi e non per ricevere messaggi. In genere, un hub eventi usa un solo publisher per ogni client. Tutti i messaggi inviati a uno dei publisher di un hub eventi vengono accodati all'interno di tale hub eventi. Publishers consentono il controllo di accesso con granularità fine.

A ogni client di Hub eventi viene assegnato un token univoco, che viene caricato nel client. Un client in possesso di un token può inviare a un solo publisher e a nessun altro. Se più client condividono lo stesso token, ognuno condivide il publisher.

Tutti i token vengono assegnati con chiavi di firma di accesso condiviso. Tutti i token vengono in genere firmati con la stessa chiave. I client non conoscono la chiave, quindi non possono creare token. I client operano sugli stessi token fino alla scadenza.

Autorizzare l'accesso ai consumer di Hub eventi con firme di accesso condiviso

Per autenticare le applicazioni back-end che utilizzano i dati generati dai producer di Hub eventi, l'autenticazione dei token di Hub eventi richiede ai client di avere diritti di gestione o privilegi di ascolto assegnati al relativo spazio dei nomi di Hub eventi oppure all'istanza o all'argomento dell'hub eventi. I dati vengono utilizzati da Hub eventi tramite gruppi di consumer. Anche se i criteri di firma di accesso condiviso offrono un ambito granulare, questo ambito viene definito solo a livello di entità e non a livello di consumer. Questo significa che i privilegi definiti a livello di spazio dei nomi oppure a livello di istanza o argomento dell'hub eventi vengono applicati ai gruppi di consumer di tale entità.