Condividi tramite


Controllo di accesso di Azure Synapse

Questo articolo fornisce una panoramica dei meccanismi disponibili per controllare l'accesso alle risorse di calcolo e ai dati di Azure Synapse.

Panoramica

Azure Synapse offre un sistema di controllo di accesso completo e granulare che integra:

  • Ruoli di Azure per la gestione delle risorse e l'accesso ai dati nell'archiviazione
  • Ruoli di Synapse per la gestione dell'accesso in tempo reale al codice e all'esecuzione
  • Ruoli SQL per l'accesso del piano dati ai dati nei pool SQL
  • Autorizzazioni Git per il controllo del codice sorgente, inclusi il supporto per l'integrazione e la distribuzione continue

I ruoli di Azure Synapse forniscono set di autorizzazioni che possono essere applicati in ambiti diversi. Grazie a questa granularità, è facile concedere ad amministratori, sviluppatori, addetti alla sicurezza e operatori l'accesso appropriato a risorse di calcolo e dati.

Il controllo di accesso può essere semplificato usando gruppi di sicurezza allineati ai ruoli lavorativi delle persone. Per gestire l'accesso è sufficiente aggiungere e rimuovere utenti dai gruppi di sicurezza appropriati.

Elementi del controllo di accesso

Creare e gestire le risorse di calcolo di Azure Synapse

I ruoli di Azure vengono usati per controllare la gestione di:

  • Pool SQL dedicati
  • Pool di Esplora dati
  • Pool di Apache Spark
  • Runtime di integrazione

Per creare queste risorse, è necessario avere il ruolo di Proprietario o Collaboratore di Azure sul gruppo di risorse. Per gestirle dopo la creazione, occorre avere il ruolo di Proprietario o Collaboratore di Azure sul gruppo di risorse o sulle singole risorse.

Con il ruolo di Proprietario o Collaboratore di Azure è possibile abilitare o disabilitare l'autenticazione solo per Microsoft Entra per le aree di lavoro di Azure Synapse. Per altre informazioni sull'autenticazione solo per Microsoft Entra, vedere Disabilitazione dell'autenticazione locale in Azure Synapse Analytics.

Sviluppare ed eseguire codice in Azure Synapse

Synapse supporta due modelli di sviluppo.

  • Sviluppo attivo di Synapse. Lo sviluppo e il debug del codice avvengono in Synapse Studio, quindi il codice viene pubblicato per salvarlo ed eseguirlo. Il servizio Synapse è la fonte più attendibile per la modifica e l'esecuzione di codice. Qualsiasi lavoro non pubblicato viene perso quando si chiude Synapse Studio.
  • Sviluppo abilitato per Git. Lo sviluppo e il debug del codice avvengono in Synapse Studio, quindi viene eseguito il commit delle modifiche in un ramo di lavoro di un repository Git. Il lavoro di uno o più rami è integrato in un ramo di collaborazione, da cui viene pubblicato nel servizio. Il repository Git è la fonte più attendibile per la modifica del codice, mentre il servizio lo è per l'esecuzione. Occorre eseguire il commit delle modifiche nel repository Git oppure pubblicarle nel servizio prima di chiudere Synapse Studio. Altre informazioni sull'uso di Synapse Analytics con Git.

In entrambi i modelli di sviluppo, qualsiasi utente che abbia accesso a Synapse Studio può creare artefatti di codice. Sono però necessarie autorizzazioni aggiuntive per pubblicare gli artefatti nel servizio, leggere gli artefatti pubblicati, eseguire il commit delle modifiche in Git, eseguire il codice e accedere ai dati collegati protetti da credenziali. Per configurare, modificare le impostazioni e disconnettere un repository Git con Synapse, gli utenti devono avere il ruolo di Collaboratore (Controllo degli accessi in base al ruolo di Azure) o un ruolo superiore, nell'area di lavoro di Synapse.

Ruoli di Azure Synapse

I ruoli di Azure Synapse consentono di controllare l'accesso al servizio Synapse. I diversi ruoli possono consentire di:

  • Elencare gli artefatti di codice pubblicati
  • Pubblicare artefatti di codice, servizi collegati e definizioni di credenziali
  • Eseguire codice o pipeline che usano risorse di calcolo di Synapse
  • Eseguire codice o pipeline che accedono a dati collegati protetti da credenziali
  • Visualizzare gli output associati ad artefatti di codice pubblicati
  • Monitorare lo stato delle risorse di calcolo e visualizzare i log di runtime

I ruoli di Azure Synapse possono essere assegnati nell'ambito dell'area di lavoro o in ambiti granulari fini per limitare le autorizzazioni concesse a risorse specifiche di Azure Synapse.

Autorizzazioni Git

Quando si usa lo sviluppo abilitato per Git in modalità Git, sono necessarie autorizzazioni Git, oltre ai ruoli Utente di Synapse o Controllo degli accessi in base al ruolo di Synapse per leggere gli artefatti di codice, inclusi i servizi collegati e le definizioni delle credenziali. Per eseguire il commit delle modifiche apportate agli artefatti del codice in modalità Git, sono necessarie autorizzazioni Git e il ruolo di Autore artefatti di Synapse (Controllo degli accessi in base al ruolo di Synapse).

Accedere ai dati in SQL

Quando si usano pool SQL dedicati e serverless, l'accesso al piano dati viene controllato tramite le autorizzazioni SQL.

All'autore di un'area di lavoro viene assegnato il ruolo di amministratore di Active Directory nell'area di lavoro. Dopo la creazione, questo ruolo può essere assegnato a un altro utente o a un gruppo di sicurezza nel portale di Azure.

Pool SQL serverless: agli amministratori di Synapse vengono concesse le autorizzazioni db_owner (DBO) per il pool SQL serverless 'Predefinito'. Per concedere ad altri utenti l'accesso a pool SQL serverless, gli amministratori di Synapse devono eseguire script SQL sul pool serverless.

Pool SQL dedicati: gli amministratori di Synapse dispongono dell'accesso completo ai dati nei pool SQL dedicati e hanno la possibilità di concedere l'accesso ad altri utenti. Gli amministratori di Synapse possono anche eseguire attività di configurazione e manutenzione nei pool dedicati, esclusa la rimozione di database. l'autorizzazione di amministratore di Active Directory viene concessa all'autore dell'area di lavoro e all'identità del servizio gestita dell'area di lavoro. L'autorizzazione di accesso ai pool SQL dedicati non viene concessa automaticamente. Per concedere ad altri utenti o gruppi l'accesso ai pool SQL dedicati, l'amministratore di Active Directory o l'amministratore di Synapse, deve eseguire script SQL su ogni pool SQL dedicato.

Per esempi di script SQL per la concessione di autorizzazioni SQL in pool SQL, vedere Come configurare il controllo di accesso per l'area di lavoro Synapse.

Accedere ai dati nei pool di Esplora dati

Quando si lavora con i pool di Esplora dati, l'accesso al piano dati viene controllato tramite le autorizzazioni di Esplora dati. Agli amministratori di Synapse vengono concesse autorizzazioni All Database admin per i pool di Esplora dati. Per concedere ad altri utenti o gruppi l'accesso ai pool di Esplora dati, gli amministratori di Synapse devono fare riferimento alla Gestione dei ruoli di sicurezza. Per altre informazioni sull'accesso al piano dati, vedere Panoramica del controllo di accesso di Esplora dati.

Accesso a dati gestiti dal sistema nell'archiviazione

I pool SQL serverless e le tabelle Apache Spark archiviano i dati in un contenitore di ADLS Gen2 associato all'area di lavoro. Anche le librerie di Apache Spark installate dall'utente vengono gestite nello stesso account di archiviazione. Per abilitare questi casi d'uso, agli utenti e all'identità del servizio gestita dell'area di lavoro deve essere assegnato il ruolo di Collaboratore ai dati dei BLOB di archiviazione per poter accedere a questo contenitore di archiviazione di ADLS Gen2.

Uso dei gruppi di sicurezza come procedura consigliata

Per semplificare la gestione del controllo di accesso, si possono usare i gruppi di sicurezza per assegnare ruoli a singoli utenti e gruppi. I gruppi di sicurezza possono essere creati per eseguire il mirroring di utenti tipo o funzioni lavorative dell'organizzazione che devono poter accedere alle risorse o agli artefatti di Synapse. A questi gruppi di sicurezza basati su utente tipo è quindi possibile assegnare uno o più ruoli di Azure, ruoli di Synapse, autorizzazioni SQL o autorizzazioni Git. Scegliendo bene i gruppi di sicurezza, sarà facile assegnare a un utente le autorizzazioni necessarie aggiungendolo al gruppo di sicurezza appropriato.

Nota

Se si usano i gruppi di sicurezza per gestire l'accesso, è prevista una latenza aggiuntiva introdotta da Microsoft Entra ID prima che le modifiche abbiano effetto.

Applicazione del controllo di accesso in Synapse Studio

Il comportamento di Synapse Studio cambia in base alle autorizzazioni e alla modalità corrente:

  • Modalità Live di Synapse: Synapse Studio impedisce agli utenti che non hanno le autorizzazioni necessarie, di visualizzare i contenuti pubblicati, di pubblicare contenuti o di eseguire altre azioni. In alcuni casi, impedisce di creare artefatti di codice che non possono essere usati o salvati.
  • Modalità Git: se si hanno autorizzazioni Git che consentono di eseguire il commit delle modifiche sul ramo corrente, l'azione di commit sarà consentita se si dispone dell'autorizzazione per pubblicare le modifiche al servizio Live (ruolo di Autore artefatti di Synapse).

In alcuni casi, è consentito creare artefatti di codice anche senza l'autorizzazione per la pubblicazione o il commit. In questo modo è possibile eseguire il codice (con le autorizzazioni di esecuzione necessarie). Per altre informazioni sui ruoli necessari per eseguire le attività comuni, vedere Informazioni sui ruoli necessari per eseguire attività comuni in Azure Synapse.

Se una funzionalità è disabilitata in Synapse Studio, una descrizione comando indicherà l'autorizzazione necessaria. Usare la guida ai ruoli di controllo degli accessi in base al ruolo di Synapse per sapere qual è il ruolo necessario per fornire l'autorizzazione mancante.

Passaggi successivi