Gestire l'accesso ai servizi cloud esterni usando le credenziali del servizio
Importante
Questa funzionalità è disponibile in anteprima pubblica.
Questo articolo descrive come creare un oggetto credenziale del servizio nel catalogo unity che consente di gestire l'accesso ai servizi cloud esterni. Un oggetto credenziale del servizio in Unity Catalog incapsula una credenziale cloud a lungo termine che fornisce l'accesso a un servizio cloud esterno a cui gli utenti devono connettersi da Azure Databricks.
Le credenziali del servizio non sono destinate alla governance dell'accesso all'archiviazione cloud usata come posizione di archiviazione gestita del catalogo Unity o percorso di archiviazione esterna. Per questi casi d'uso, usare le credenziali di archiviazione. Vedere Gestire l'accesso all'archiviazione cloud usando il catalogo unity.
Per creare credenziali del servizio per l'accesso ai servizi di Azure, creare un connettore di accesso di Azure Databricks che fa riferimento a un'identità gestita di Azure, assegnandole le autorizzazioni per un servizio o servizi. Si fa quindi riferimento al connettore di accesso nella definizione delle credenziali del servizio.
Prima di creare una credenziale del servizio, è necessario soddisfare i requisiti seguenti:
In Azure Databricks:
Area di lavoro di Azure Databricks abilitata per Unity Catalog.
Privilegio
CREATE SERVICE CREDENTIAL
nel metastore del catalogo Unity collegato all'area di lavoro. Gli amministratori dell'account e gli amministratori del metastore hanno questo privilegio per impostazione predefinita. Se l'area di lavoro è stata abilitata automaticamente per Unity Catalog, gli amministratori dell'area di lavoro hanno anche questo privilegio.Nota
Le entità servizio devono avere il ruolo di amministratore dell'account per creare credenziali del servizio che usano un'identità gestita. Non è possibile delegare
CREATE SERVICE CREDENTIAL
a un'entità servizio. Questo vale sia per le entità servizio di Azure Databricks che per le entità servizio Microsoft Entra ID.
Nel tenant di Azure:
- Un servizio di Azure nella stessa area dell'area di lavoro da cui si vuole accedere ai dati.
- Ruolo Collaboratore o Proprietario in un gruppo di risorse di Azure.
- Ruolo Di controllo degli accessi in base al ruolo di Azure proprietario o amministratore accesso utenti nell'account del servizio.
Per configurare l'identità che autorizza l'accesso all'account del servizio, usare un connettore di accesso di Azure Databricks che connette un'identità gestita di Azure all'account Azure Databricks. Se il connettore di accesso è già stato definito, è possibile passare al passaggio 2 nella procedura seguente.
Nota
È possibile usare un'entità servizio anziché un'identità gestita, ma è consigliabile usare le identità gestite. Le identità gestite hanno il vantaggio di consentire a Unity Catalog di accedere agli account del servizio protetti dalle regole di rete, che non è possibile usare le entità servizio e di rimuovere la necessità di gestire e ruotare i segreti. Se è necessario usare un'entità servizio, vedere Creare un'archiviazione gestita del catalogo unity usando un'entità servizio (legacy).
Nella portale di Azure creare un connettore di accesso di Azure Databricks e assegnargli le autorizzazioni per il servizio a cui si vuole accedere, seguendo le istruzioni riportate in Configurare un'identità gestita per Il catalogo unity.
Un connettore di accesso di Azure Databricks è una risorsa di Azure di prima parte che consente di connettere le identità gestite a un account Azure Databricks. Per aggiungere le credenziali del servizio, è necessario avere il ruolo Collaboratore o superiore nella risorsa del connettore di accesso in Azure.
Anziché seguire le istruzioni riportate nel passaggio 2: Concedere all'identità gestita l'accesso all'account di archiviazione, concedere all'identità gestita l'accesso all'account del servizio.
Prendere nota dell'ID risorsa del connettore di accesso.
Accedere all'area di lavoro di Azure Databricks come utente che soddisfa i requisiti elencati in Prima di iniziare.
Fare clic su Catalogo.
Nella pagina Accesso rapido fare clic sul pulsante Dati >esterni, passare alla scheda Credenziali e selezionare Crea credenziali.
Selezionare Credenziali del servizio.
Immettere un nome credenziali, un commento facoltativo e l'ID risorsa del connettore di accesso nel formato:
/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
(Facoltativo) Se è stato creato il connettore di accesso usando un'identità gestita assegnata dall'utente, immettere l'ID risorsa dell'identità gestita nel campo ID identità gestita assegnata dall'utente nel formato:
/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>
Cliccare su Crea.
Nella finestra di dialogo Credenziali del servizio create copiare l'ID esterno.
È anche possibile visualizzare l'ID esterno in qualsiasi momento nella pagina dei dettagli delle credenziali del servizio.
Fare clic su Fatto.
Importante
Questa funzionalità è disponibile in anteprima pubblica.
Per impostazione predefinita, una credenziale del servizio è accessibile da tutte le aree di lavoro nel metastore. Ciò significa che, se a un utente è stato concesso un privilegio per tale credenziale del servizio, può esercitare tale privilegio da qualsiasi area di lavoro collegata al metastore. Se si usano aree di lavoro per isolare l'accesso ai dati utente, è possibile consentire l'accesso alle credenziali di un servizio solo da aree di lavoro specifiche. Questa funzionalità è nota come associazione dell'area di lavoro o isolamento delle credenziali del servizio.
Un caso d'uso tipico per l'associazione di credenziali del servizio a aree di lavoro specifiche è lo scenario in cui un amministratore cloud configura una credenziale del servizio usando le credenziali di un account cloud di produzione e si vuole assicurarsi che gli utenti di Azure Databricks usino questa credenziale per accedere a un servizio cloud esterno solo nell'area di lavoro di produzione.
Per altre informazioni sull'associazione dell'area di lavoro, vedere (Facoltativo) Assegnare credenziali di archiviazione a aree di lavoro specifiche e Limitare l'accesso al catalogo a aree di lavoro specifiche.
Per assegnare credenziali del servizio a aree di lavoro specifiche, usare Esplora cataloghi.
Autorizzazioni necessarie: proprietario delle credenziali del metastore o del servizio.
Nota
Gli amministratori del metastore possono visualizzare tutte le credenziali del servizio in un metastore usando Esplora cataloghi e i proprietari delle credenziali del servizio possono visualizzare tutte le credenziali del servizio di cui sono proprietari in un metastore, indipendentemente dal fatto che le credenziali del servizio siano assegnate all'area di lavoro corrente. Le credenziali del servizio non assegnate all'area di lavoro vengono visualizzate in grigio.
Accedere a un'area di lavoro collegata al metastore.
Nella barra laterale fare clic su Catalogo.
Nella pagina Accesso rapido fare clic sul pulsante Dati >esterni e passare alla scheda Credenziali.
Selezionare le credenziali del servizio e passare alla scheda Aree di lavoro .
Nella scheda Aree di lavoro deselezionare la casella di controllo Tutte le aree di lavoro hanno accesso.
Se le credenziali del servizio sono già associate a una o più aree di lavoro, questa casella di controllo è già deselezionata.
Fare clic su Assegna alle aree di lavoro e immettere o trovare le aree di lavoro da assegnare.
Per revocare l'accesso, passare alla scheda Aree di lavoro , selezionare l'area di lavoro e fare clic su Revoca. Per consentire l'accesso da tutte le aree di lavoro, selezionare la casella di controllo Tutte le aree di lavoro con accesso .
- Informazioni su come visualizzare, aggiornare, eliminare e concedere ad altri utenti l'autorizzazione per l'uso delle credenziali del servizio. Vedere Gestire le credenziali del servizio.
- Informazioni su come usare le credenziali del servizio nel codice. Vedere Usare le credenziali del servizio Catalogo Unity per connettersi ai servizi cloud esterni.
Si applicano le limitazioni seguenti:
- Databricks Runtime 15.4 LTS include solo il supporto python.
- I warehouse SQL non sono supportati.
- Alcuni eventi di controllo per le azioni eseguite sulle credenziali del servizio non verranno visualizzati nella
system.access.audit
tabella. Saranno disponibili informazioni di controllo su chi ha creato, eliminato, aggiornato, letto, elencato o usato una credenziale del servizio. Vedere Informazioni di riferimento sulla tabella di sistema del log di controllo. - Durante l'anteprima delle credenziali del servizio,
INFORMATION_SCHEMA.STORAGE_CREDENTIALS
(deprecato) visualizza sia le credenziali di archiviazione che le credenziali del servizio eINFORMATION_SCHEMA.STORAGE_CREDENTIAL_PRIVILEGES
(deprecato) visualizza i privilegi che si applicano sia alle credenziali di archiviazione che alle credenziali del servizio. Si tratta di un comportamento di anteprima errato che verrà corretto e non è consigliabile dipendere da esso per continuare. È invece consigliabile usareINFORMATION_SCHEMA.CREDENTIALS
eINFORMATION_SCHEMA.CREDENTIAL_PRIVILEGES
sia per le credenziali di archiviazione che per le credenziali del servizio.