Condividi tramite


Autenticazione Microsoft Entra per l'SQL di Azure

Si applica a: Database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics

Questo articolo fornisce una panoramica approfondita sull'utilizzo dell'autenticazione Microsoft Entra con Database SQL di Azure, Istanza gestita di SQL, SQL Server su VM Azure, Synapse SQL in Azure Synapse Analytics e SQL Server per Windows e Linux.

Se si desidera configurare l'autenticazione di Microsoft Entra, consultare:

Nota

Microsoft Entra ID era precedentemente conosciuto come Azure Active Directory (Azure AD).

Panoramica

Microsoft Entra ID consente di gestire centralmente le identità degli esseri umani e dei servizi nel proprio patrimonio di dati. Integrando Microsoft Entra con Azure SQL per l'autenticazione, è possibile semplificare la gestione delle identità e delle autorizzazioni, consentendo al contempo l'accesso condizionale dettagliato e la governance su tutte le connessioni ai dati.

L'uso dell'autenticazione di Microsoft Entra include i vantaggi seguenti:

  • Sostituisce metodi di autenticazione meno sicuri, ad esempio nomi utente e password.
  • Elimina, o contribuisce ad arrestare, la proliferazione delle identità utente nei server.
  • I gruppi di Microsoft Entra consentono la gestione delle autorizzazioni del database per essere astratte da singoli account e in gruppi operativi.
  • Consente la rotazione delle password in un'unica posizione.
  • L’autenticazione di Microsoft Entra offre un’alternativa all’autenticazione SQL.
  • Le identità gestite per le risorse di Azure eliminano la necessità di archiviare le password per i servizi che si connettono ai database e le connessioni dai database ad altre risorse di Azure.
  • Consente moderni controlli di sicurezza, tra cui un’autenticazione a più fattori avanzata con una serie di semplici opzioni di verifica, come telefonata, SMS, smart card con pin o notifica tramite app per dispositivi mobili.
  • Microsoft Entra ID abilita l'integrazione con molti protocolli di autenticazione moderni, tra cui OpenID Connect, OAuth2.0, delega vincolata Kerberos e altro ancora.
  • Consente il monitoraggio centralizzato delle connessioni alle origini dati.
  • Abilita i controlli di accesso condizionale, ad esempio la richiesta di dispositivi conformi o metodi di autenticazione per le connessioni riuscite.
  • Gestire e monitorare centralmente l'autenticazione con Criteri di Azure.

Nota

L'autenticazione Microsoft Entra supporta solo i token di accesso provenienti da Microsoft Entra ID e non i token di accesso di terze parti. Inoltre, Microsoft Entra ID non supporta il reindirizzamento delle query di Microsoft Entra ID a endpoint di terze parti. Ciò vale per tutte le piattaforme SQL e tutti i sistemi operativi che supportano l'autenticazione di Microsoft Entra.

Passaggi di configurazione

I passaggi generali per configurare l'autenticazione di Microsoft Entra sono:

  1. Creare e popolare un tenant di Microsoft Entra.
  2. Creare un server logico o un'istanza in Azure.
  3. Assegnare un amministratore di Microsoft Entra al server o all'istanza.
  4. Creare nel proprio database delle entità servizio SQL che siano mappate alle identità Microsoft Entra.
  5. Configurare le applicazioni client per connettersi usando le librerie di identità e i metodi di autenticazione di Azure.
  6. Connettersi al database con identità di Microsoft Entra.

Identità e metodi di autenticazione supportati

Azure SQL supporta l'uso delle identità di Microsoft Entra seguenti come account di accesso e utenti (entità) nei server e nei database:

  • Utenti di Microsoft Entra: qualsiasi tipo di utente in un tenant di Microsoft Entra, inclusi utenti interni, esterni, guest e membri. Anche i membri di un dominio Active Directory con federazione con Microsoft Entra ID sono supportati e possono essere configurati per l’accesso Single Sign-On facile.
  • Applicazioni: le applicazioni esistenti in Azure possono usare entità servizio o identità gestite per l'autenticazione diretta ad Azure SQL. L'uso di identità gestite è preferibile poiché l’autenticazione avviene senza password ed elimina la necessità di credenziali gestite dallo sviluppatore.
  • Gruppi di Microsoft Entra, che possono semplificare la gestione degli accessi all'interno dell'organizzazione gestendo l'accesso di utenti e applicazioni in base all'appartenenza al gruppo.

Per le identità utente, sono supportati i metodi di autenticazione seguenti:

  • Microsoft Entra itegrato (autenticazione di Windows) supportata dalle identità ibride di Microsoft Entra con Active Directory [federazione].
  • MFA Microsoft Entra o l'autenticazione a più fattori, che richiede controlli di sicurezza aggiuntivi oltre alle conoscenze dell'utente.
  • Autenticazione di Microsoft Entra con password, che usa le credenziali utente archiviate e gestite in Microsoft Entra ID.
  • Autenticazione predefinita di Microsoft Entra, che analizza varie cache delle credenziali nel computer dell'applicazione e può usare i token utente per eseguire l'autenticazione a SQL.

Per le identità del servizio o del carico di lavoro, sono supportati i metodi di autenticazione seguenti:

  • Identità gestite per le risorse Azure, sia assegnate all'utente che al sistema. L'autenticazione dell'identità gestita è basata su token, in cui l'identità viene assegnata alla risorsa che vuole eseguire l'autenticazione usandola. La piattaforma delle identità di Azure convalida tale relazione, che abilita l'autenticazione senza password.
  • Nome dell’entità servizio Microsoft Entra e segreto dell'applicazione (client). Questo metodo di autenticazione non è consigliato, a causa del rischio associato alle password che possono essere indovinate e che possono trapelare.
  • Autenticazione predefinita di Microsoft Entra, che analizza varie cache delle credenziali nel computer dell'applicazione e può usare i token dell'applicazione per l'autenticazione a SQL.

Amministratore Microsoft Entra

Per abilitare l'autenticazione di Microsoft Entra, è necessario impostare un amministratore di Microsoft Entra per il server logico o l'istanza gestita. Questo ruolo coesiste con quello di amministratore di SQL Server (SA). L'amministratore di Microsoft Entra può essere qualsiasi oggetto di sicurezza nel tenant di Azure, inclusi utenti, gruppi, entità servizio e identità gestite di Microsoft Entra. L'amministratore di Microsoft Entra è una proprietà singolare, non un elenco, ovvero è possibile configurare una sola identità in qualsiasi momento. La rimozione dell'amministratore di Microsoft Entra dal server disabilita tutte le connessioni basate sull'autenticazione di Microsoft Entra, anche per gli utenti esistenti di Microsoft Entra con autorizzazioni in un database.

Suggerimento

I gruppi di Microsoft Entra consentono a più identità di agire come amministratore di Microsoft Entra nel server. Quando l'amministratore è impostato su un gruppo, tutti i membri del gruppo ereditano il ruolo di amministratore di Microsoft Entra. Un amministratore del gruppo Microsoft Entra migliora la gestibilità spostando la gestione dell'amministratore dalle azioni del piano dati del server in Microsoft Entra ID e le mani dei proprietari del gruppo. I gruppi possono essere utilizzati per tutte le identità Microsoft Entra che si connettono a SQL, consentendo di configurare una sola volta gli utenti e le autorizzazioni nel server e nei database, lasciando tutta la gestione degli utenti ai gruppi.

L'amministratore di Microsoft Entra svolge un ruolo speciale: è il primo account che può creare altri account di accesso di Microsoft Entra (in anteprima in database SQL) e utenti, collettivamente definiti entità di sicurezza. L'amministratore è un utente di database indipendente nel database master del server. Gli account amministratore sono membri del ruolo db_owner in ogni database utente e accedono a ogni database utente come utente dbo. Per altre informazioni sugli account amministratore, vedere Gestione di database e account di accesso.

Entità di sicurezza di Microsoft Entra

Nota

Le entità di sicurezza (accessi) di Microsoft Entra attualmente sono in anteprima pubblica per database SQL di Azure e Azure Synapse Analytics. Gli accessi di Microsoft Entra sono disponibili a livello generale per Istanza gestita di SQL di Azure e SQL Server 2022.

Le identità di Microsoft Entra possono essere create come entità in Azure SQL in tre modi:

  • come entità di sicurezza o aaccessi (in anteprima per database SQL di Azure)
  • come utenti basati su accesso (un tipo di entità di sicurezza del database)
  • come utenti del database indipendente

Importante

L'autenticazione di Microsoft Entra per Azure SQL non si integra con il controllo degli accessi in base al ruolo di Azure. L'uso delle identità di Microsoft Entra per connettersi ad Azure SQL ed eseguire query richiede la creazione di tali identità come entità Microsoft Entra nei database a cui devono accedere. I ruoli SQL Server Contributor e SQL DB Contributor vengono usati per proteggere le operazioni di distribuzione correlate alla gestione, non l'accesso alla connettività del database.

Accessi (entità di sicurezza del server)

Le entità di sicurezza del server (accessi) per le identità di Microsoft Entra sono disponibili a livello generale per Istanza gestita di SQL di Azure, SQL Server 2022 e SQL Server in macchine virtuali di Azure. Gli accessi di Microsoft Entra attualmente sono in anteprima pubblica per database SQL di Azure.

Il T-SQL seguente illustra come creare un accesso di Microsoft Entra:

CREATE LOGIN [MSEntraUser] FROM EXTERNAL PROVIDER

Un accesso di Microsoft Entra ha i valori di proprietà seguenti in sys.server_principals:

Proprietà valore
SID (ID di sicurezza) Rappresentazione binaria dell'ID oggetto dell'identità di Microsoft Entra
type E = Accesso esterno o applicazione da Microsoft Entra ID
X = Gruppo esterno da Microsoft Entra ID
type_desc EXTERNAL_LOGIN per l'accesso o l'app Microsoft Entra
EXTERNAL_GROUP per il gruppo Microsoft Entra

Utenti basati su accesso

Gli utenti basati sull’accesso ereditano i ruoli e le autorizzazioni a livello di server assegnati all'account di accesso di Microsoft Entra. Gli utenti basati sull'accesso di Microsoft Entra sono in anteprima per database SQL di Azure.

Il T-SQL seguente illustra come creare un utente basato su accesso per un'identità di Microsoft Entra:

CREATE USER [MSEntraUser] FROM LOGIN [MSEntraUser]

Nella tabella seguente vengono descritti in dettaglio i valori delle proprietà utente basate sull'accesso di Microsoft Entra in sys.database_principals:

Proprietà valore
SID (ID di sicurezza) Rappresentazione binaria dell'ID oggetto dell'identità di Microsoft Entra, più "AADE"
type E = Accesso esterno o applicazione da Microsoft Entra ID
X = Gruppo esterno da Microsoft Entra ID
type_desc EXTERNAL_LOGIN per l'accesso o l'app Microsoft Entra
EXTERNAL_GROUP per il gruppo Microsoft Entra

Utenti del database indipendente

Gli utenti di database indipendente sono portabili con il database. Non hanno connessioni alle identità definite nel server o nell'istanza e pertanto possono essere facilmente spostate insieme al database da un server o da un'istanza a un'altra senza interruzioni.

Il T-SQL seguente illustra come creare un utente di database indipendente per un'identità di Microsoft Entra:

CREATE USER [MSEntraUser] FROM EXTERNAL PROVIDER

Un utente basato su database Di Microsoft Entra ha gli stessi valori delle proprietà degli utenti basati sullaccesso in sys.database_principals, ad eccezione del modo in cui viene costruito il SID:

Proprietà valore
SID (ID di sicurezza) Rappresentazione binaria dell'ID oggetto dell'identità di Microsoft Entra
type E = Accesso esterno o applicazione da Microsoft Entra ID
X = Gruppo esterno da Microsoft Entra ID
type_desc EXTERNAL_LOGIN per l'accesso o l'app Microsoft Entra
EXTERNAL_GROUP per il gruppo Microsoft Entra

Per ottenere il GUID originale di Microsoft Entra su cui si basa il SID, usare la conversione T-SQL seguente:

SELECT CAST(sid AS UNIQUEIDENTIFIER) AS EntraID FROM sys.database_principals

Attenzione

È possibile creare involontariamente un utente del database Microsoft Entra indipendente con lo stesso nome di un accesso di Microsoft Entra a livello di server o istanza. Poiché le entità non sono connesse tra loro, l'utente del database non eredita le autorizzazioni dall'accesso del server e le identità possono sovrapporsi nelle richieste di connessione, con conseguente comportamento non definito.

Usare la query T-SQL seguente per determinare se un utente del database sia un utente basato sull'accesso o un utente di database indipendente:

SELECT CASE
    WHEN CONVERT(VARCHAR(100), sid, 2) LIKE '%AADE' AND len(sid) = 18 THEN 'login-based user'
    ELSE 'contained database user'
    END AS user_type,
    *
FROM sys.database_principals WHERE TYPE = 'E' OR TYPE = 'X'

Usare la query T-SQL seguente per visualizzare tutte le entità Di sicurezza di Microsoft Entra in un database:

SELECT
  name,
  CAST(sid AS UNIQUEIDENTIFIER) AS EntraID,
  CASE WHEN TYPE = 'E' THEN 'App/User' ELSE 'Group' AS user_type,
  sid
FROM sys.database_principals WHERE TYPE = 'E' OR TYPE = 'X'

Autenticazione solo tramite Microsoft Entra

Con Autenticazione solo con Microsoft Entra abilitata, tutti gli altri metodi di autenticazione sono disabilitati e non possono essere usati per connettersi al server, all'istanza o al database, inclusi SA e tutti gli altri account basati sull'autenticazione SQL di Azure, nonché autenticazione di Windows per Istanza gestita di SQL di Azure.

Per iniziare, consultare Configurare l’autenticazione solo con Microsoft Entra.

Autenticazione a più fattori (MFA)

L’autenticazione a più fattori Microsoft Entra è una funzionalità di sicurezza fornita dal servizio di gestione delle identità e degli accessi basato sul cloud di Microsoft. L'autenticazione a più fattori migliora la sicurezza degli accessi utente richiedendo agli utenti di seguire passaggi di verifica aggiuntivi oltre la scelta di una password.

L'autenticazione a più fattori di Microsoft Entra consente di proteggere l'accesso ai dati e alle applicazioni dell'utente, garantendo al tempo stesso una procedura di accesso semplice. L’autenticazione a più fattori aggiunge un ulteriore livello di sicurezza agli accessi degli utenti richiedendo a questi ultimi di fornire due o più fattori di autenticazione. Questi fattori includono in genere qualcosa che l'utente conosce (password), qualcosa che l'utente possiede (smartphone o token hardware) e/o qualcosa che l'utente è (dati biometrici). Combinando più fattori, l'autenticazione a più fattori riduce significativamente le probabilità di accesso non autorizzato.

L'autenticazione a più fattori è un metodo di autenticazione supportato per database SQL di Azure, Istanza gestita di SQL di Azure, Azure Synapse Analytics e SQL Server 2022 (16.x) e versioni successive.

Per iniziare, consultare Configurare l’autenticazione a più fattori Microsoft Entra.

Supporto B2B di Microsoft Entra

L'autenticazione a più fattori Microsoft Entra supporta anche la Collaborazione B2B di Microsoft Entra, che consente alle aziende di invitare utenti guest a collaborare con la loro organizzazione. Gli utenti guest possono connettersi ai database come singoli utenti o membri di un gruppo Microsoft Entra. Per altre informazioni, vedere Creare utente guest.

Architettura di fiducia per la federazione di Microsoft Entra in Active Directory

Microsoft Entra ID si integra anche con soluzioni familiari di gestione delle identità e degli accessi, ad esempio Active Directory. L'aggiunta ibrida di AD locale consente alle identità di Windows federate tramite Microsoft Entra ID di usare le credenziali di Single Sign-On per connettersi ad Azure SQL.

Per la federazione, Microsoft Entra ID fornisce due metodi di autenticazione sicura: l'autenticazione pass-through e l'hash delle password. Se si sta valutando la federazione del Active Directory locale in Microsoft Entra ID, vedere Scegliere il metodo di autenticazione appropriato per la soluzione di gestione delle identità ibrida di Microsoft Entra.

Per altre informazioni sulla configurazione e la sincronizzazione delle identità ibride di Microsoft Entra, consultare i seguenti articoli:

Questo diagramma mostra un'autenticazione federata di esempio con l'infrastruttura ADFS (o utente/password per le credenziali di Windows). Le frecce indicano i percorsi di comunicazione.

Diagramma dell’autenticazione Microsoft Entra per Azure SQL.

Il diagramma seguente indica le relazioni federative, di trust e di hosting che consentono a un client di connettersi a un database inviando un token, che viene autenticato da Azure Active Directory e considerato attendibile dal database. Microsoft Entra ID autentica il token e il database lo considera attendibile e convalida l'emittente e altri dettagli. Il cliente 1 può rappresentare Microsoft Entra ID con utenti nativi o Microsoft Entra ID con utenti federati. Il cliente 2 rappresenta una possibile soluzione che include utenti importati, in questo esempio provenienti da un Microsoft Entra ID federato con ADFS sincronizzato con Microsoft Entra ID. È importante comprendere che l'accesso a un database con l'autenticazione di Microsoft Entra richiede che la sottoscrizione di hosting sia associata a Microsoft Entra ID. La stessa sottoscrizione deve essere usata per creare le risorse del database Azure SQL o di Azure Synapse.

Il diagramma mostra la relazione tra sottoscrizioni nella configurazione di Microsoft Entra.

Autorizzazioni

Le autorizzazioni assegnate all'amministratore di Microsoft Entra sono diverse dalle autorizzazioni assegnate in Azure SQL. In alcuni scenari, Azure SQL richiede anche le autorizzazioni di Microsoft Graph, per usare l'autenticazione Microsoft Entra.

Autorizzazioni di amministratore

Al momento della creazione, all'amministratore di Microsoft Entra vengono assegnate le autorizzazioni e i ruoli seguenti:

  • db_owner di ogni database nel server o nell'istanza

Diagramma che mostra la struttura amministratore per Microsoft Entra ID usato con SQL Server.

Autorizzazioni di Azure SQL

Un'entità deve disporre dell'autorizzazione ALTER ANY USER nel database, per creare un utente. Per impostazione predefinita, ALTER ANY USER viene assegnato a: account amministratore del server, utenti del database con CONTROL ON DATABASE e membri del ruolo del database db_owner.

Per creare un'entità di sicurezza Di Microsoft Entra in Azure SQL, l'identità richiedente deve eseguire una query su Microsoft Graph per informazioni dettagliate sull'entità di sicurezza. Nella distribuzione iniziale, l'unica identità eventualmente in grado di eseguire query su MS Graph è l'amministratore di Microsoft Entra; pertanto, l'amministratore deve essere la prima identità, al fine di creare altre entità di Microsoft Entra. Successivamente, può assegnare ALTER ANY USER ad altre entità per consentire loro di creare anche altre entità do sicurezza di Microsoft Entra.

Distribuzioni zero-touch con l’autenticazione di Microsoft Entra

Poiché l'amministratore di Microsoft Entra deve essere la prima identità, per connettersi al database e creare altri utenti di Microsoft Entra, può essere utile aggiungere l'identità dell'infrastruttura di distribuzione come amministratore. Le distribuzioni possono quindi eseguire la configurazione iniziale, ad esempio la creazione di altre entità di sicurezza di Microsoft Entra e l'assegnazione delle autorizzazioni. Le distribuzioni possono usare strumenti come i modelli di ARM di PowerShell per creare script per la creazione automatica dell'entità. Azure SQL non supporta attualmente le API native per configurare la creazione e la gestione delle autorizzazioni degli utenti; queste operazioni possono essere eseguite solo con una connessione diretta all'istanza di SQL.

Autorizzazioni per Microsoft Graph

Per creare le entità di sicurezza di Microsoft Entra e altri scenari, Azure SQL deve effettuare chiamate a Microsoft Graph per recuperare informazioni e convalidare l'esistenza dell'identità in Microsoft Entra ID. A tale scopo, il processo SQL deve avere o ottenere l'accesso alle autorizzazioni di lettura di MS Graph all'interno del tenant del cliente, possibile con più di una modalità:

  • Se l'entità di sicurezza SQL che esegue il comando è un'identità utente, non sono necessarie autorizzazioni aggiuntive per l'istanza di SQL, per eseguire query su MS Graph.
  • Se l'entità SQL che esegue il comando è un'identità del servizio, ad esempio un'entità servizio o un'identità gestita, l'istanza di SQL di Azure richiede le proprie autorizzazioni per eseguire query su MS Graph.
    • Le autorizzazioni dell'applicazione possono essere assegnate all'identità del server primario (identità gestita) del server logico o dell'istanza gestita. Il processo SQL può usare l'identità del server primario per eseguire l'autenticazione ad altri servizi di Azure in un tenant, ad esempio MS Graph. La tabella seguente illustra vari scenari e le autorizzazioni MS Graph necessarie per l'esecuzione corretta del comando.
Scenario Autorizzazioni minime
CREATE USER o CREATE LOGIN per un'entità servizio o un'identità gestita di Microsoft Entra Application.Read.All
CREATE USER o CREATE LOGIN per un utente di Microsoft Entra User.Read.All
CREATE USER o CREATE LOGIN per un gruppo Microsoft Entra GroupMember.Read.All
Autenticazione Microsoft Entra con l'istanza gestita di SQL di Azure Ruolo Amministratori che leggono la directory assegnato all'identità dell'istanza gestita

Suggerimento

Il ruolo Amministratori che leggono la directoryy è il ruolo con ambito più piccolo che può essere assegnato a un'identità che copre tutte le autorizzazioni necessarie per Azure SQL. L'uso dei ruoli ha il vantaggio che questi possono essere assegnati ai gruppi di sicurezza di Microsoft Entra, astraendo la gestione da singole entità e in gruppi concettuali.

Supporto per strumenti

SQL Server Management Studio (SSMS) supporta diverse opzioni di connessione di autenticazione di Microsoft Entra, tra cui l'autenticazione a più fattori.

SQL Server Data Tools (SSDT) per Visual Studio, a partire dalla versione 2015, supporta l'autenticazione password, integrata e interattiva con Microsoft Entra ID. Per altre informazioni, vedere Supporto di Microsoft Entra ID in SQL Server Data Tools (SSDT).

  • Gli utenti di Microsoft Entra non sono attualmente visualizzati in Esplora oggetti di SSDT. Come soluzione alternativa è possibile visualizzare gli utenti in sys.database_principals.

Versioni minime

Per usare l'autenticazione di Microsoft Entra con Azure SQL, sono necessarie le versioni minime seguenti, quando si usano questi strumenti:

  • SQL Server Management Studio (SSMS) 18.6 o versioni successive
  • SQL Server Data Tools per Visual Studio 2015 versione 14.0.60311.1 (aprile 2016) o versioni successive
  • Provider di dati .NET Framework per SQL Server, versione minima .NET Framework 4.6
  • A partire dalla versione 15.0.1, l'utilità sqlcmd e l'utilità bcp supportano l'autenticazione interattiva di Active Directory con autenticazione a più fattori.
  • Microsoft JDBC Driver 6.0 per SQL Server supporta l'autenticazione di Microsoft Entra. Vedere anche l'argomento su come impostare le proprietà della connessione.

Connessione con Microsoft Entra alle risorse Azure SQL

Dopo aver configurato l'autenticazione di Microsoft Entra per la risorsa Azure SQL, è possibile connettersi tramite SQL Server Management Studio, SQL Server Data Tools e un'applicazione client.

Limiti

Quando si usa l'autenticazione di Microsoft Entra con Azure SQL, considerare le limitazioni seguenti:

  • Gli utenti di Microsoft Entra e le entità servizio (applicazioni Microsoft Entra) che sono membri di più di 2048 gruppi di sicurezza Microsoft Entra non sono supportati e non possono accedere al database.

  • Le seguenti funzioni di sistema non sono supportate e restituiscono valori NULL quando vengono eseguite dalle entità di sicurezza di Microsoft Entra:

    • SUSER_ID()
    • SUSER_NAME(<ID>)
    • SUSER_SNAME(<SID>)
    • SUSER_ID(<name>)
    • SUSER_SID(<name>)
  • È consigliabile impostare il timeout di connessione su 30 secondi.

Database SQL di Azure e Azure Synapse Analytics

Quando si usa l'autenticazione di Microsoft Entra con database SQL di Azure e Azure Synapse Analytics, prendere in considerazione le limitazioni seguenti:

  • Gli utenti di Microsoft Entra che fanno parte di un gruppo membro del ruolo del database db_owner potrebbero riscontrare il seguente errore quando tentano di usare la sintassi CREATE DATABASE SCOPED CREDENTIAL nel database SQL di Azure e in Azure Synapse:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either doesn't exist or you do not have permission to use it.

    Per prevenire il problema CREATE DATABASE SCOPED CREDENTIAL, aggiungere l’identità utente di Microsoft Entra direttamente al ruolo db_owner.

  • Database SQL di Azure e Azure Synapse Analytics non creano utenti impliciti per gli utenti connessi come parte di un gruppo Microsoft Entra. Per questo motivo varie operazioni che richiedono l'assegnazione della titolarità potrebbero avere esito negativo anche se il gruppo Microsoft Entra viene aggiunto come membro a un ruolo con tali autorizzazioni.

    Ad esempio, un utente che ha effettuato l'accesso a un database tramite un gruppo Microsoft Entra con il ruolo db_ddladmin non potrà eseguire CREATE SCHEMA, ALTER SCHEMA e altre istruzioni di creazione di oggetti senza uno schema definito in modo esplicito (ad esempio tabella, vista o tipo). Per risolvere questo problema è necessario creare un utente di Microsoft Entra per tale utente oppure il gruppo Microsoft Entra deve essere modificato in modo da assegnare un DEFAULT_SCHEMA, come un dbo.

  • Quando si usa Microsoft Entra ID con la replica geografica e i gruppi di failover, l'amministratore Microsoft Entra deve essere configurato per i server primari e secondari. Se un server non dispone di un amministratore di Microsoft Entra, gli accessi e gli utenti di Microsoft Entra ricevono un errore Cannot connect.

  • La rimozione dell'amministratore Microsoft Entra per i server impedisce a qualsiasi utente di autenticazione di Microsoft Entra di connettersi al server. Se necessario, un amministratore di database SQL può rimuovere manualmente gli utenti di Microsoft Entra inutilizzabili.

Istanza gestita di SQL di Azure

Quando si usa l'autenticazione di Microsoft Entra con Istanza gestita di SQL di Azure, considerare le limitazioni seguenti:

  • Istanza gestita di SQL supporta le entità server (account di accesso) e gli utenti di Microsoft Entra.

  • L'impostazione degli accessi di Microsoft Entra come proprietario del database non è supportata in Istanza gestita di SQL.

    • Un'estensione di questo scenario si verifica quando un gruppo viene aggiunto come parte del ruolo del server dbcreator; in questo caso, gli utenti del gruppo possono connettersi a Istanza gestita di SQL e creare nuovi database, ma non possono accedere al database. Il nuovo proprietario del database, infatti, è SA e non l'utente di Microsoft Entra. Questo problema non si verifica se al ruolo del server dbcreator si aggiunge il singolo utente.
  • L'aggiunta di entità di sicurezza del server (accessi) di Microsoft Entra per Istanza gestita di SQL offre la possibilità di creare più entità di sicurezza del server (accessi) di Microsoft Entra che possono essere aggiunte al ruolo sysadmin.

  • Per gli account di accesso di Microsoft Entra sono supportate l'esecuzione di processi e le operazioni di gestione di SQL Agent.

  • Le operazioni di backup e ripristino del database possono essere eseguite dalle entità server (account di accesso) di Microsoft Entra.

  • È supportato il controllo di tutte le istruzioni relative agli eventi di autenticazione e alle entità server (account di accesso) di Microsoft Entra.

  • È supportata la connessione amministrativa dedicata per le entità server (account di accesso) di Microsoft Entra membri del ruolo del server sysadmin.

    • È supportata tramite l'utilità SQLCMD e SQL Server Management Studio.
  • Sono supportati i trigger di accesso per gli eventi di accesso provenienti dalle entità server (account di accesso) di Microsoft Entra.

  • Usando un'entità server (account di accesso) di Microsoft Entra è possibile configurare Service Broker e la posta elettronica del database.

  • Quando si usano i gruppi di failover, l'amministratore di Microsoft Entra deve essere configurato sia per le istanze primarie che per quelle secondarie. Se un’istanza non dispone di un amministratore di Microsoft Entra, gli accessi e gli utenti di Microsoft Entra ricevono un errore Cannot connect.

  • PolyBase non può eseguire l'autenticazione di Microsoft Entra (autenticazione).

  • La rimozione dell'amministratore Microsoft Entra per l’istanza impedisce a qualsiasi utente di autenticazione di Microsoft Entra di connettersi all’istanza. Se necessario, un amministratore di database SQL può escludere manualmente gli utenti di Microsoft Entra inutilizzabili.