Condividi tramite


Panoramica del controllo di accesso a un'area di lavoro 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.

Azure Synapse offre un sistema di controllo degli accessi completo e granulare che si 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.

Un proprietario o un collaboratore può abilitare o disabilitare l'autenticazione solo Entra-only per le aree di lavoro di Azure Synapse. Per altre informazioni sull'autenticazione solo Microsoft Entra, vedere Usare l'autenticazione di Microsoft Entra per l'autenticazione con Synapse SQL.

Sviluppare ed eseguire codice in Azure Synapse

Synapse supporta due modelli di sviluppo.

  • Sviluppo live di Synapse: si sviluppa ed esegue il debug di codice in Synapse Studio e quindi lo si pubblica per salvare ed eseguire. 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: si sviluppa ed esegue il debug del codice in Synapse Studio ed esegue 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. Per altre informazioni sull'uso di Synapse Analytics con Git, vedere Integrazione e recapito continui per un'area di lavoro di Azure Synapse Analytics.

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. Gli utenti devono avere il ruolo collaboratore di Azure o superiore nell'area di lavoro di Synapse per configurare, modificare le impostazioni e disconnettere un repository Git con 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 le risorse di calcolo di Synapse
  • Eseguire codice o pipeline che accedono ai dati collegati protetti dalle credenziali
  • Visualizzare gli output associati agli 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

Per lo sviluppo abilitato per Git in modalità Git, sono necessarie autorizzazioni Git oltre ai ruoli Synapse User o Synapse RBAC (role-based access control) per leggere gli artefatti del 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 Synapse Artifact Publisher.

Accedere ai dati in SQL

Per i pool SQL dedicati e serverless, l'accesso al piano dati viene controllato usando 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 db_owner autorizzazioni (DBO) nel 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 nei pool SQL, vedere Come configurare il controllo di accesso per l'area di lavoro di Azure Synapse.

Accedere ai dati nei pool di Esplora dati

Per i pool di Esplora dati, l'accesso al piano dati viene controllato tramite 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.

Accedere ai dati gestiti dal sistema nell'archiviazione

I pool SQL serverless e le tabelle Apache Spark archiviano i dati in un contenitore di Azure Data Lake Storage 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 gestito dell'area di lavoro deve essere concesso l'accesso collaboratore ai dati dei BLOB di archiviazione a questo contenitore di Azure Data Lake Storage.

Usare i 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 gruppi di sicurezza per gestire l'accesso, è presente una latenza aggiuntiva introdotta dall'ID Microsoft Entra prima che le modifiche siano effettive.

Applicazione del controllo di accesso in Synapse Studio

Synapse Studio si comporta in modo diverso in base alle autorizzazioni e alla modalità corrente:

  • Modalità live di Synapse: Synapse Studio impedisce di visualizzare contenuto pubblicato, pubblicare contenuto o eseguire altre azioni se non si dispone dell'autorizzazione necessaria. In alcuni casi, non è possibile creare artefatti di codice che non è possibile usare o salvare.
  • Modalità Git: se si dispone di autorizzazioni Git che consentono di eseguire il commit delle modifiche nel ramo corrente, l'azione di commit è consentita se si dispone dell'autorizzazione per pubblicare le modifiche al servizio attivo (ruolo Synapse Artifact Publisher).

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 indica 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.