Condividi tramite


Miglioramento: Supporto delle identità gestite da Microsoft Entra per le operazioni di backup e ripristino del database e per EKM con AKV in SQL Server in macchine virtuali di Azure

Sintomi

L'istanza di SQL Server potrebbe smettere di rispondere se si esegue un'operazione di backup o ripristino del database per Archiviazione di Azure o si usa Extensible Key Management (EKM) con Azure Key Vault (AKV) usando credenziali a livello di server con identità gestite. Anche se questa operazione non è supportata per SQL Server 2022, la sintassi T-SQL corrente lo consente.

Risoluzione

Questo problema è stato risolto nell'aggiornamento cumulativo seguente per SQL Server in macchine virtuali di Azure:

Aggiornamento cumulativo 17 per SQL Server 2022

In SQL Server 2022 CU17 e versioni successive, l'autenticazione dell'identità gestita di Microsoft Entra con SQL Server in Azure windows supporta solo le credenziali a livello di server per le operazioni di backup e ripristino del database in Archiviazione di Azure e per EKM con AKV.

Per abilitare il supporto dell'identità gestita per le operazioni di backup o ripristino del database per SQL Server in macchine virtuali Windows di Azure, sono necessari i passaggi seguenti:

  1. Assegnare l'identità gestita primaria per SQL Server in macchine virtuali Windows di Azure.
  2. Creare o usare Archiviazione di Azure con un contenitore BLOB.
  3. Assegnare ruoli di controllo degli accessi in base al ruolo per l'identità gestita primaria per accedere al Archiviazione di Azure.
  4. Eseguire il comando CREATE CREDENTIAL T-SQL con la WITH IDENTITY = 'Managed Identity' clausola usando l'URL Archiviazione di Azure come nome delle credenziali.
  5. Eseguire il comando BACKUP DATABASE T-SQL o RESTORE DATABASE usare l'URL Archiviazione di Azure.
-- Create credential with managed identity and credential name set to
-- URL= https://<storageaccountname>.blob.core.windows.net/<container>   
CREATE CREDENTIAL [https://<storageaccountname>.blob.core.windows.net/<container>]  
 WITH IDENTITY = 'Managed Identity'  
-- Backup the database mydb to URL 
BACKUP DATABASE mydb 
 TO URL = 'https://<storageaccount>.blob.core.windows.net/<container>/mydb.bak'  
-- Restore the database mydb1 from URL
RESTORE DATABASE mydb1  
 FROM URL ='https://<storageaccount>.blob.core.windows.net/<container>/mydb.bak'  

Per altre informazioni, vedere Backup e ripristino in URL tramite identità gestite.

Per abilitare il supporto delle identità gestite per EKM con AKV per SQL Server in macchine virtuali Windows di Azure, sono necessari i passaggi seguenti:

  1. Assegnare l'identità gestita primaria per SQL Server in macchine virtuali Windows di Azure.
  2. Creare o usare un insieme di credenziali delle chiavi.
  3. Assegnare ruoli di controllo degli accessi in base al ruolo per l'identità gestita primaria per accedere all'AKV.
  4. Scaricare la Connettore SQL Server per Azure Key Vault più recente (versione 1.0.5.0 (novembre 2024) o versioni successive. La versione più recente del connettore SQL Server è necessaria per supportare l'identità gestita.
  5. Eseguire il comando CREATE CREDENTIAL T-SQL con la WITH IDENTITY = 'Managed Identity' clausola usando il percorso AKV come nome delle credenziali.
-- Create credential with managed identity and the credential name for the AKV called 'contoso'
-- with the AKV path = 'contoso.vault.azure.net'  
CREATE CREDENTIAL [contoso.vault.azure.net]  
 WITH IDENTITY = 'Managed Identity'  
 FOR CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM_Prov 
  1. Eseguire il resto della configurazione T-SQL di EKM con AKV.

Per altre informazioni, vedere Managed Identity Support for Extensible Key Management with Azure Key Vault .For more information, see Managed Identity Support for Extensible Key Management with Azure Key Vault.

Note

  • Il flag di traccia 4675, disabilitato per impostazione predefinita, consente di risolvere i problemi relativi alle credenziali a livello di server e può essere usato per confermare l'identità gestita primaria assegnata all'istanza di SQL Server.
  • Il supporto delle identità gestite non introduce modifiche alla sintassi T-SQL o alla visualizzazione di sistema, poiché questa funzionalità esiste già per Istanza gestita di SQL di Azure.
  • Le identità gestite non sono supportate per le credenziali a livello di server in SQL Server locale. Se usato accidentalmente con il backup o il ripristino in Archiviazione di Azure o EKM con AKV, viene visualizzato il messaggio di errore "L'identità gestita primaria non è impostata per il server..." e fanno riferimento alla documentazione pubblica.

Informazioni sugli aggiornamenti cumulativi per SQL Server

Ogni nuovo aggiornamento cumulativo per SQL Server contiene tutti gli hotfix e le correzioni di sicurezza presenti nella build precedente. È consigliabile installare la build più recente per la versione di SQL Server:

Aggiornamento cumulativo più recente per SQL Server 2022

Stato

Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".

Riferimenti