Panoramica sull'autenticazione e autorizzazione di bus di servizio

L'autenticazione verifica l'identità di un'entità di sicurezza, ovvero un utente, un gruppo, un'applicazione o un'identità gestita, che richiede l'accesso alle risorse di bus di servizio di Azure. L'autorizzazione determina le azioni che l'entità può eseguire.

bus di servizio di Azure supporta due meccanismi di autenticazione e autorizzazione:

  • Microsoft Entra ID: approccio consigliato con il controllo degli accessi in base al ruolo
  • Firma di accesso condiviso :autenticazione basata su token con chiavi crittografiche

Questo articolo illustra il funzionamento di ogni meccanismo che consente di scegliere il modello di sicurezza appropriato per l'applicazione.

Microsoft Entra ID

L'integrazione di Microsoft Entra con il bus di servizio fornisce il controllo degli accessi in base al ruolo per le risorse del bus di servizio. Puoi usare Azure RBAC per concedere autorizzazioni per un'entità di sicurezza, che può essere un utente, un gruppo, un principale del servizio dell'applicazione o un'identità gestita. Microsoft Entra autentica l'entità di sicurezza e restituisce un token OAuth 2.0. Usare questo token per autorizzare una richiesta di accesso a una risorsa bus di servizio (coda, argomento o sottoscrizione).

Nota

L'API REST del bus di servizio supporta l'autenticazione OAuth con Microsoft Entra ID.

L'autorizzazione di utenti o applicazioni tramite un token OAuth 2.0 di Microsoft Entra ID offre sicurezza e facilità di utilizzo superiori rispetto alle firme di accesso condiviso. Con Microsoft Entra ID, non è necessario archiviare i token nel codice e rischiare potenziali vulnerabilità di sicurezza. Usare l'ID Microsoft Entra con le applicazioni del bus di servizio di Azure, quando possibile.

È possibile disabilitare l'autenticazione della chiave di firma di accesso condiviso o locale per uno spazio dei nomi del bus di servizio e consentire solo l'autenticazione Microsoft Entra. Per istruzioni dettagliate, vedere Disabilitare l'autenticazione locale.

Firma di accesso condiviso

È possibile usare l'autenticazione sas per concedere a un utente l'accesso alle risorse del bus di servizio, con diritti specifici. L'autenticazione sas in bus di servizio implica la configurazione di una chiave crittografica con diritti associati per una risorsa bus di servizio. I client possono quindi ottenere l'accesso a questa risorsa presentando un token SAS, composto dall'URI della risorsa a cui si vuole accedere e da una data di scadenza associata alla firma generata con la chiave configurata.

È possibile configurare i criteri di accesso condiviso in uno spazio dei nomi bus di servizio. La chiave si applica a tutte le entità di messaggistica nello spazio dei nomi. È anche possibile configurare i criteri di accesso condiviso su code e argomenti del bus di servizio. Per usare SAS, è possibile configurare una regola di autorizzazione di accesso condiviso in uno spazio dei nomi, una coda o un argomento. Questa regola include gli elementi seguenti:

  • KeyName: nome della regola.
  • PrimaryKey: una chiave crittografica usata per firmare/convalidare token SAS.
  • SecondaryKey: una chiave crittografica usata per firmare/convalidare token SAS.
  • Rights: la raccolta di diritti di ascolto, invio e gestione concessi.

Le regole di autorizzazione configurate a livello di spazio dei nomi possono concedere l'accesso a tutte le entità in uno spazio dei nomi per i client con token firmati tramite la chiave corrispondente. È possibile configurare fino a 12 regole di autorizzazione di questo tipo in uno spazio dei nomi, una coda o un argomento bus di servizio. Per impostazione predefinita, una regola di autorizzazione all'accesso condiviso con tutti i diritti viene configurata per ogni spazio dei nomi quando ne viene eseguito il provisioning per la prima volta.

Per accedere a un'entità, il client richiede un token SAS generato da una specifica regola di autorizzazione di accesso condiviso e dalla firma HMAC-SHA256 di una stringa di risorsa. La stringa di risorsa è costituita dall'URI della risorsa a cui viene richiesto l'accesso e da una scadenza con una chiave crittografica associata alla regola di autorizzazione.

Per altre informazioni sull'uso di Microsoft Entra ID per l'autenticazione, vedere gli articoli seguenti:

Per ulteriori informazioni sull'uso di SAS per l'autenticazione, consultare il seguente articolo: