Autorizzare l'accesso alle tabelle usando Microsoft Entra ID

Archiviazione di Azure supporta l'uso di Microsoft Entra ID per autorizzare le richieste ai dati della tabella. Con Microsoft Entra ID è possibile usare il controllo degli accessi in base al ruolo di Azure per concedere autorizzazioni a un'entità di sicurezza, che può essere un utente o un'entità servizio dell'applicazione. L'entità di sicurezza viene autenticata da Microsoft Entra ID per restituire un token OAuth 2.0. Il token può quindi essere usato per autorizzare una richiesta al servizio tabelle.

L'autorizzazione delle richieste a Archiviazione di Azure con Microsoft Entra ID offre maggiore sicurezza e facilità d'uso rispetto all'autorizzazione con chiave condivisa. Microsoft consiglia di usare l'autorizzazione Microsoft Entra con le applicazioni di tabella quando possibile per garantire l'accesso con privilegi minimi necessari.

L'autorizzazione con Microsoft Entra ID è disponibile per tutti gli scopi generici in tutte le aree pubbliche e nei cloud nazionali. Solo gli account di archiviazione creati con il modello di distribuzione di Azure Resource Manager supportano l'autorizzazione di Microsoft Entra.

Panoramica di Microsoft Entra ID per le tabelle

Quando un'entità di sicurezza (un utente, un gruppo o un'applicazione) tenta di accedere a una risorsa di tabella, la richiesta deve essere autorizzata. Con Microsoft Entra ID, l'accesso a una risorsa è un processo in due passaggi. Viene prima di tutto autenticata l'identità dell'entità di sicurezza e viene restituito un token OAuth 2.0. Il token viene quindi passato come parte di una richiesta al servizio tabelle e usato dal servizio per autorizzare l'accesso alla risorsa specificata.

Per il passaggio di autenticazione è necessario che un'applicazione richieda un token di accesso OAuth 2.0 in fase di esecuzione. Se un'applicazione viene eseguita dall'interno di un'entità di Azure, ad esempio una macchina virtuale di Azure, un set di scalabilità di macchine virtuali o un'app Funzioni di Azure, può usare un'identità gestita per accedere alle tabelle.

Il passaggio di autorizzazione richiede l'assegnazione di uno o più ruoli di Azure all'entità di sicurezza. Archiviazione di Azure fornisce ruoli di Azure che includono set comuni di autorizzazioni per i dati delle tabelle. I ruoli assegnati a un'entità di sicurezza determinano le autorizzazioni di cui avrà l'entità. Per altre informazioni sull'assegnazione dei ruoli di Azure per l'accesso alle tabelle, vedere Assegnare un ruolo di Azure per l'accesso ai dati delle tabelle.

La tabella seguente punta a informazioni aggiuntive per autorizzare l'accesso ai dati in vari scenari:

Lingua .NET Java JavaScript Python Go
Panoramica dell'autenticazione con Microsoft Entra ID Come autenticare le applicazioni .NET con i servizi di Azure Autenticazione di Azure con Java e Identità di Azure Autenticare le app JavaScript in Azure usando Azure SDK Autenticare le app Python in Azure usando Azure SDK
Autenticazione con le entità servizio per sviluppatori Autenticare le app .NET nei servizi di Azure durante lo sviluppo locale usando le entità servizio Autenticazione di Azure con entità servizio Autenticare le app JS nei servizi di Azure con l'entità servizio Autenticare le app Python nei servizi di Azure durante lo sviluppo locale usando le entità servizio Autenticazione di Azure SDK per Go con un'entità servizio
Autenticazione con account utente o sviluppatore Autenticare le app .NET nei servizi di Azure durante lo sviluppo locale usando gli account per sviluppatori Autenticazione di Azure con credenziali utente Autenticare le app JS nei servizi di Azure con account di sviluppo Autenticare le app Python nei servizi di Azure durante lo sviluppo locale usando gli account per sviluppatori Autenticazione di Azure con Azure SDK per Go
Autenticazione da app ospitate in Azure Autenticazione di app ospitate in Azure in risorse di Azure con Azure SDK per .NET Autenticare le applicazioni Java ospitate in Azure Autenticazione di app JavaScript ospitate in Azure con Azure SDK per JavaScript Autenticazione di app ospitate in Azure in risorse di Azure con Azure SDK per Python Autenticazione con Azure SDK per Go usando un'identità gestita
Autenticazione da app locali Eseguire l'autenticazione alle risorse di Azure da app .NET ospitate in locale Autenticare le app JavaScript locali nelle risorse di Azure Eseguire l'autenticazione alle risorse di Azure dalle app Python ospitate in locale
Panoramica della libreria client di identità Libreria client di Identità di Azure per .NET Libreria client di Identità di Azure per Java Libreria client di Identità di Azure per JavaScript Libreria client di Identità di Azure per Python Libreria client di Identità di Azure per Go

Assegnare ruoli di Azure per i diritti di accesso

Microsoft Entra autorizza i diritti di accesso alle risorse protette tramite il controllo degli accessi in base al ruolo di Azure. Archiviazione di Azure definisce un set di ruoli predefiniti di Azure che includono set comuni di autorizzazioni usate per accedere ai dati della tabella. È anche possibile definire ruoli personalizzati per l'accesso ai dati della tabella.

Quando un ruolo di Azure viene assegnato a un'entità di sicurezza Microsoft Entra, Azure concede l'accesso a tali risorse per tale entità di sicurezza. Un'entità di sicurezza Di Microsoft Entra può essere un utente, un gruppo, un'entità servizio dell'applicazione o un'identità gestita per le risorse di Azure.

Ambito risorsa

Prima di assegnare un ruolo controllo degli accessi in base al ruolo di Azure a un'entità di sicurezza, determinare l'ambito di accesso che l'entità di sicurezza deve avere. In base alle procedure consigliate, è sempre preferibile concedere solo l'ambito più restrittivo possibile. I ruoli controllo degli accessi in base al ruolo di Azure definiti in un ambito più ampio vengono ereditati dalle risorse sottostanti.

È possibile definire l'ambito dell'accesso alle risorse della tabella di Azure ai livelli seguenti, a partire dall'ambito più ristretto:

  • Tabella singola. In questo ambito, un'assegnazione di ruolo si applica alla tabella specificata.
  • L'account di archiviazione. In questo ambito, un'assegnazione di ruolo si applica a tutte le tabelle nell'account.
  • Il gruppo di risorse. In questo ambito, un'assegnazione di ruolo si applica a tutte le tabelle in tutti gli account di archiviazione nel gruppo di risorse.
  • La sottoscrizione. In questo ambito, un'assegnazione di ruolo si applica a tutte le tabelle in tutti gli account di archiviazione in tutti i gruppi di risorse nella sottoscrizione.
  • Un gruppo di gestione. In questo ambito, un'assegnazione di ruolo si applica a tutte le tabelle in tutti gli account di archiviazione in tutti i gruppi di risorse in tutte le sottoscrizioni del gruppo di gestione.

Per altre informazioni sull'ambito per le assegnazioni di ruolo di Controllo degli accessi in base al ruolo di Azure, vedere Informazioni sull'ambito per il controllo degli accessi in base al ruolo di Azure.

Ruoli predefiniti di Azure per le tabelle

Il controllo degli accessi in base al ruolo di Azure fornisce ruoli predefiniti per autorizzare l'accesso ai dati delle tabelle usando Microsoft Entra ID e OAuth. I ruoli predefiniti che forniscono le autorizzazioni per le tabelle in Archiviazione di Azure includono:

  • Archiviazione Collaboratore dati tabella: usare per concedere autorizzazioni di lettura/scrittura/eliminazione alle risorse di archiviazione tabelle.
  • Archiviazione lettore dati tabella: usare per concedere autorizzazioni di sola lettura alle risorse di archiviazione tabelle.

Per informazioni su come assegnare un ruolo predefinito di Azure a un'entità di sicurezza, vedere Assegnare un ruolo di Azure per l'accesso ai dati della tabella. Per informazioni su come elencare i ruoli controllo degli accessi in base al ruolo di Azure e le relative autorizzazioni, vedere Elencare le definizioni dei ruoli di Azure.

Per altre informazioni sul modo in cui vengono definiti i ruoli predefiniti per Archiviazione di Azure, vedere Informazioni sulle definizioni di ruolo. Per informazioni sulla creazione di ruoli personalizzati di Azure, vedere Ruoli personalizzati di Azure.

Solo i ruoli definiti in modo esplicito per l'accesso ai dati consentono a un'entità di sicurezza di accedere ai dati della tabella. I ruoli predefiniti, ad esempio Proprietario, Collaboratore e Collaboratore account Archiviazione consentono a un'entità di sicurezza di gestire un account di archiviazione, ma non forniscono l'accesso ai dati della tabella all'interno di tale account tramite Microsoft Entra ID. Tuttavia, se un ruolo include Microsoft.Archiviazione/storageAccounts/listKeys/action, quindi un utente a cui è assegnato tale ruolo può accedere ai dati nell'account di archiviazione tramite l'autorizzazione chiave condivisa con le chiavi di accesso dell'account.

Per informazioni dettagliate sui ruoli predefiniti di Azure per Archiviazione di Azure, sia per i servizi dati che per il servizio di gestione, vedere la sezione Archiviazione in Ruoli predefiniti di Azure per il controllo degli accessi in base al ruolo di Azure. Per informazioni sui diversi tipi di ruoli che forniscono autorizzazioni in Azure, vedere Ruoli di Azure, ruoli di Microsoft Entra e ruoli di amministratore della sottoscrizione classica.

Importante

La propagazione delle assegnazioni di ruolo di Azure può richiedere fino a 30 minuti.

Autorizzazioni di accesso per le operazioni dei dati

Per informazioni dettagliate sulle autorizzazioni necessarie per chiamare operazioni specifiche del servizio tabelle, vedere Autorizzazioni per chiamare le operazioni sui dati.

Passaggi successivi