Freigeben über


Verbesserung: Microsoft Entra managed identity support for backup and restore database operations and for EKM with AKV in SQL Server on Azure VMs

Problembeschreibung

Die SQL Server-Instanz reagiert möglicherweise nicht mehr, wenn Sie einen Sicherungs- oder Wiederherstellungsdatenbankvorgang in Azure Storage ausführen oder die Extensible Key Management (EKM) mit Azure Key Vault (AKV) mit Anmeldeinformationen auf Serverebene mit verwalteten Identitäten verwenden. Obwohl dieser Vorgang für SQL Server 2022 nicht unterstützt wird, ermöglicht die aktuelle T-SQL-Syntax dies.

Lösung

Dieses Problem wurde im folgenden kumulativen Update für SQL Server auf virtuellen Azure-Computern (VMs) behoben:

Kumulatives Update 17 für SQL Server 2022

In den VERSIONEN SQL Server 2022 CU17 und höher unterstützt die Microsoft Entra Managed Identity Authentication mit SQL Server unter Azure Windows nur die Anmeldeinformationen auf Serverebene für Datenbanksicherungs- und Wiederherstellungsvorgänge in Azure Storage und für EKM mit AKV.

Zum Aktivieren der Unterstützung der verwalteten Identität für Sicherungs- oder Wiederherstellungsdatenbankvorgänge für SQL Server auf Azure Windows-VMs sind die folgenden Schritte erforderlich:

  1. Weisen Sie die primäre verwaltete Identität für sql Server auf virtuellen Azure-Computern zu.
  2. Erstellen oder Verwenden von Azure Storage mit einem BLOB-Container.
  3. Weisen Sie rollenbasierte Zugriffssteuerungsrollen (RBAC) für die primäre verwaltete Identität zu, um auf den Azure Storage zuzugreifen.
  4. Führen Sie den T-SQL-Befehl CREATE CREDENTIAL mit der WITH IDENTITY = 'Managed Identity' Klausel aus, die die Azure Storage-URL als Anmeldeinformationsnamen verwendet.
  5. Führen Sie den T-SQL-Befehl BACKUP DATABASE aus oder RESTORE DATABASE verwenden Sie die Azure Storage-URL.
-- 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'  

Weitere Informationen finden Sie unter Sichern und Wiederherstellen der URL mithilfe von verwalteten Identitäten.

Um die Unterstützung für verwaltete Identitäten für EKM mit AKV für SQL Server auf Azure Windows-VMs zu aktivieren, sind die folgenden Schritte erforderlich:

  1. Weisen Sie die primäre verwaltete Identität für sql Server auf virtuellen Azure-Computern zu.
  2. Erstellen oder Verwenden eines Schlüsseltresors.
  3. Weisen Sie rollenbasierte Zugriffssteuerungsrollen (RBAC) für die primäre verwaltete Identität zu, um auf die AKV zuzugreifen.
  4. Laden Sie die neuesten SQL Server-Connector für Microsoft Azure Key Vault (die Versionen 1.0.5.0 (November 2024) oder höher herunter. Die neueste Version des SQL Server Connector ist erforderlich, um die verwaltete Identität zu unterstützen.
  5. Führen Sie den T-SQL-Befehl CREATE CREDENTIAL mit der WITH IDENTITY = 'Managed Identity' Klausel aus, indem Sie den AKV-Pfad als Anmeldeinformationsnamen verwenden.
-- 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. Führen Sie den Rest des T-SQL-Setups von EKM mit AKV aus.

Weitere Informationen finden Sie unter Managed Identity Support for Extensible Key Management mit Azure Key Vault.

Notiz

  • Das Ablaufverfolgungskennzeichnung 4675, standardmäßig deaktiviert, ermöglicht die Problembehandlung der Anmeldeinformationen auf Serverebene und kann verwendet werden, um die primäre verwaltete Identität zu bestätigen, die der SQL Server-Instanz zugewiesen ist.
  • Die Unterstützung für verwaltete Identität führt keine T-SQL-Syntax oder Systemansichtsänderungen ein, da diese Funktionalität bereits für Azure SQL verwaltete Instanz vorhanden ist.
  • Verwaltete Identitäten werden für die Anmeldeinformationen auf Serverebene lokal nicht unterstützt. Wenn Sie versehentlich mit Sicherung oder Wiederherstellung in Azure Storage oder EKM mit AKV verwendet werden, wird die Fehlermeldung "Die primäre verwaltete Identität ist für den Server nicht festgelegt..." angezeigt. und werden auf die öffentliche Dokumentation verwiesen.

Informationen zu kumulativen Updates für SQL Server

Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und Sicherheitsupdates, die sich im vorherigen Build befanden. Es wird empfohlen, den neuesten Build für Ihre Version von SQL Server zu installieren:

Neuestes kumulatives Update für SQL Server 2022

Status

Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.

References