TDE CMK auf Datenbankebene ist für Azure SQL-Datenbank (alle SQL-Datenbank-Editionen) verfügbar. Sie ist nicht für Azure SQL Managed Instance, lokale SQL Server-Instanzen, Azure-VMs und Azure Synapse Analytics (dedizierte SQL-Pools, früher SQL DW) verfügbar.
Derselbe Leitfaden kann angewendet werden, um kundenseitig verwaltete Schlüssel auf Datenbankebene im gleichen Mandanten zu konfigurieren, indem der Verbundclient-ID-Parameter ausgeschlossen wird. Weitere Informationen zu kundenseitig verwalteten Schlüsseln auf Datenbankebene finden Sie unter Transparente Datenverschlüsselung (TDE) mit kundenseitig verwalteten Schlüsseln auf Datenbankebene.
In diesem Leitfaden werden die Schritte zum Erstellen, Aktualisieren und Abrufen einer Azure SQL-Datenbank-Instanz mit transparenter Datenverschlüsselung (Transparent Data Encryption, TDE) und kundenseitig verwalteten Schlüsseln (CMK) auf Datenbankebene unter Verwendung einer benutzerseitig zugewiesenen verwalteten Identität für den Zugriff auf Azure Key Vault beschrieben. Der Azure Key Vault befindet sich in einem anderen Microsoft Entra-Mandanten als der Azure SQL-Datenbank. Weitere Informationen finden Sie unter Mandantenübergreifende kundenseitig verwaltete Schlüssel mit Transparent Data Encryption.
Hinweis
Microsoft Entra ID war zuvor als Azure Active Directory (Azure AD) bekannt.
Voraussetzungen
In diesem Leitfaden wird davon ausgegangen, dass Sie über zwei Microsoft Entra-Mandanten verfügen.
Der erste besteht aus der Azure SQL-Datenbank-Ressource, einer Microsoft Entra-Anwendung mit mehreren Mandanten und einer benutzerseitig zugewiesenen verwalteten Identität.
Der zweite Mandant enthält die Azure Key Vault-Instanz.
Ausführliche Anweisungen zum Einrichten mandantenübergreifender CMKs und den RBAC-Berechtigungen, die zum Konfigurieren von Microsoft Entra-Anwendungen und Azure Key Vault erforderlich sind, finden Sie in einem der folgenden Leitfäden:
Die RBAC-Berechtigungen, die für CMK auf Datenbankebene erforderlich sind, sind dieselben, die auch für CMK auf Serverebene erforderlich sind. Insbesondere gelten dieselben RBAC-Berechtigungen, die bei der Verwendung von Azure Key Vault, verwalteten Identitäten und mandantenübergreifendem CMK für TDE auf Serverebene gelten, auch für die Datenbankebene. Weitere Informationen zur Schlüsselverwaltung und Zugriffsrichtlinie finden Sie unter Schlüsselverwaltung.
Damit Sie TDE für Azure SQL-Datenbank mit einem mandantenübergreifenden CMK konfigurieren können, benötigen Sie eine Microsoft Entra-Anwendung mit mehreren Mandanten, die mit einer benutzerseitig zugewiesenen verwalteten Identität mit Anmeldeinformationen für eine Verbundidentität für die Anwendung konfiguriert ist. Befolgen Sie dazu einen der Leitfäden unter „Voraussetzungen“.
Notieren Sie sich den Namen und die ID der Anwendung. Sie finden beides, indem Sie unter Azure-Portal>Microsoft Entra ID>Enterprise-Anwendungen nach der erstellten Anwendung suchen.
Erforderliche Ressourcen im zweiten Mandanten
Hinweis
Azure AD- und MSOnline PowerShell-Module sind ab dem 30. März 2024 veraltet. Weitere Informationen finden Sie im Update zur Unterstützungseinstellung. Nach diesem Datum wird die Unterstützung für diese Module auf die Migrationsunterstützung für das Microsoft Graph PowerShell-SDK und Sicherheitskorrekturen beschränkt. Die veralteten Module funktionieren weiterhin bis zum 30. März 2025.
Es wird empfohlen, für die Interaktion mit Microsoft Entra ID (früher Azure AD) zu Microsoft Graph PowerShell zu migrieren. Informationen zu allgemeinen Migrationsfragen finden Sie in den häufig gestellten Fragen zur Migration. Hinweis: Bei der Version 1.0.x von MSOnline können nach dem 30. Juni 2024 Unterbrechungen auftreten.
Erstellen Sie im zweiten Mandanten, in dem sich die Azure Key Vault-Instanz befindet, einen Dienstprinzipal (Anwendung) mithilfe der Anwendungs-ID der registrierten Anwendung im ersten Mandanten. Im Folgenden finden Sie einige Beispiele für die Registrierung der mehrinstanzenfähigen Anwendung. Ersetzen Sie <TenantID> und <ApplicationID> durch die Kundenmandanten-ID aus Microsoft Entra ID bzw. der Anwendungs-ID der mehrinstanzenfähigen Anwendung:
Wählen Sie beim Erstellen der Zugriffsrichtlinie unter Schlüsselberechtigungen die Berechtigungen „Abrufen“, „Schlüssel packen“ und „Schlüssel entpacken“ aus.
Wählen Sie beim Erstellen der Zugriffsrichtlinie unter Prinzipal die mehrinstanzenfähige Anwendung aus, die im ersten Schritt erstellt wurde.
Erstellen einer Azure SQL-Datenbank-Instanz mit kundenseitig verwalteten Schlüsseln auf Datenbankebene
Im Folgenden finden Sie Beispiele zum Erstellen einer Datenbank in Azure SQL-Datenbank mit einer benutzerseitig zugewiesenen verwalteten Identität und zum Festlegen eines mandantenübergreifenden kundenseitig verwalteten Schlüssels auf Datenbankebene. Die benutzerseitig zugewiesene verwaltete Identität ist für das Einrichten eines kundenseitig verwalteten Schlüssels für TDE (Transparent Data Encryption) während der Datenbankerstellung erforderlich.
Wenn Sie nicht schon im Azure-Portal angemeldet sind, melden Sie sich auf Aufforderung an.
Behalten Sie unter SQL-Datenbanken für Einzeldatenbank den festgelegten Wert Ressourcentyp bei, und wählen Sie Erstellen aus.
Wählen Sie auf der Registerkarte Grundeinstellungen des Formulars SQL-Datenbank erstellen unter Projektdetails das gewünschte Abonnement für Azure, die Ressourcengruppe und den Server für Ihre Datenbank aus. Verwenden Sie dann einen eindeutigen Namen für den Datenbanknamen. Wenn Sie keinen logischen Server für Azure SQL-Datenbank erstellt haben, finden Sie weitere Informationen unter Erstellen eines Servers, der mit TDE mit mandantenübergreifenden kundenseitig verwalteten CMKs konfiguriert ist.
Wenn Sie zur Registerkarte Sicherheit gelangen, wählen Sie Transparente Datenverschlüsselung konfigurieren aus.
Wählen Sie im Menü Transparente Datenverschlüsselung die Option kundenseitig verwalteter Schlüssel auf Datenbankebene (CMK) aus.
Wählen Sie für die benutzerseitig zugewiesene verwaltete Identität die Option Konfigurieren, um eine Datenbankidentität zu aktivieren, und fügen Sie der Ressource eine benutzerseitig zugewiesene verwaltete Identität hinzu, wenn die gewünschte Identität nicht im Menü Identität aufgeführt ist. Wählen Sie dann Anwenden aus.
Wählen Sie im Menü Transparente Datenverschlüsselung die Option Schlüssel ändern aus. Wählen Sie das gewünschte Abonnement, Schlüsseltresor, Schlüssel und Version für den kundenseitig verwalteter Schlüssel aus, der für TDE verwendet werden soll. Wählen Sie die Schaltfläche Auswählen aus. Nachdem Sie einen Schlüssel ausgewählt haben, können Sie bei Bedarf zusätzliche Datenbankschlüssel hinzufügen, indem Sie den Azure Key Vault-URI (Objektbezeichner) im Menü Transparente Datenverschlüsselung verwenden.
Die automatische Schlüsselrotation kann auch auf Datenbankebene mithilfe des Kontrollkästchens Schlüssel automatisch rotieren im Menü Transparente Datenverschlüsselung aktiviert werden.
Wählen Sie Anwenden aus, um mit der Erstellung der Datenbank fortzufahren.
Wählen Sie unten auf der Seite die Option Überprüfen + erstellen aus
Wählen Sie nach Überprüfung auf der Seite Überprüfen + erstellen die Option Erstellenaus.
Hinweis
Die Datenbankerstellung schlägt fehl, wenn die vom Benutzer zugewiesene verwaltete Identität nicht über die richtigen Berechtigungen für den Schlüsseltresor verfügt. Die benutzerseitig zugewiesene verwaltete Identität benötigt die Berechtigungen Get, wrapKey und unwrapKey für den Schlüsseltresor. Weitere Informationen finden Sie unter Verwaltete Identitäten für transparente Datenverschlüsselung mit kundenseitig verwaltetem Schlüssel.
Informationen zur Installation der aktuellen Version von Azure CLI finden Sie im Artikel Azure CLI installieren.
Erstellen Sie mit dem Befehl az sql db create eine Datenbank mit benutzerseitig zugewiesener verwalteter Identität und mandantenübergreifender kundenseitig verwalteter TDE. Im Feld encryption-protector kann der Schlüsselbezeichner des zweiten Mandanten verwendet werden. Im Feld federated-client-id können Sie die Anwendungs-ID der mehrinstanzenfähigen Anwendung verwenden. Mit dem Parameter --encryption-protector-auto-rotation können Sie die automatische Schlüsselrotation auf Datenbankebene aktivieren.
Um die Ressourcen-ID der benutzerseitig zugewiesene verwaltete Identität zu erhalten, suchen Sie im Azure-Portal nach Verwalteten Identitäten. Suchen Sie ihre verwaltete Identität und gehen Sie zu Eigenschaften. Ein Beispiel für Ihre UMI-Ressourcen-ID sieht wie /subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity> aus.
Erstellen Sie mit PowerShell eine Datenbank mit benutzerseitig zugewiesener verwalteter Identität und mandantenübergreifender kundenseitig verwalteter TDE auf Datenbankebene.
Anweisungen zur Installation des Az PowerShell-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell). Spezifische Cmdlets finden Sie unter AzureRM.Sql.
<ResourceGroupName>: Name der Ressourcengruppe für Ihren logischen Azure SQL-Server.
<DatabaseName>: Verwenden eines eindeutigen Namens der Azure SQL-Datenbank-Instanz
<ServerName>: Verwenden Sie einen eindeutigen Namen für den logischen Azure SQL-Server.
<UserAssignedIdentityId>: Die Liste der benutzerseitig zugewiesenen verwalteten Identitäten, die dem Server zugewiesen werden sollen (kann eine oder mehrere Identitäten sein)
<CustomerManagedKeyId>: Schlüsselbezeichner aus der Key Vault-Instanz im zweiten Mandanten
<FederatedClientId>: Anwendungs-ID der mehrinstanzenfähigen Anwendung
-EncryptionProtectorAutoRotation: Kann zum Aktivieren der automatischen Schlüsselrotation auf Datenbankebene verwendet werden.
Um die Ressourcen-ID der benutzerseitig zugewiesene verwaltete Identität zu erhalten, suchen Sie im Azure-Portal nach Verwalteten Identitäten. Suchen Sie ihre verwaltete Identität und gehen Sie zu Eigenschaften. Ein Beispiel für Ihre UMI-Ressourcen-ID sieht wie /subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity> aus.
# create a server with user-assigned managed identity and cross-tenant customer-managed TDE with automatic key rotation enabled
$params = @{
ResourceGroupName = '<ResourceGroupName>'
ServerName = '<ServerName>'
DatabaseName = '<DatabaseName>'
AssignIdentity = $true
UserAssignedIdentityId = '<UserAssignedIdentityId>'
EncryptionProtector = '<CustomerManagedKeyId>'
FederatedClientId = '<FederatedClientId>'
EncryptionProtectorAutoRotation = $true
}
New-AzSqlDatabase @params
Hier sehen Sie ein Beispiel für eine ARM-Vorlage, mit der eine Azure SQL-Datenbank-Instanz mit einer benutzerseitig zugewiesenen verwalteten Identität und kundenseitig verwalteter TDE auf Datenbankebene erstellt wird. Verwenden Sie für einen mandantenübergreifenden CMK den Schlüsselbezeichner aus dem Schlüsseltresor des zweiten Mandanten und die Anwendungs-ID der mehrinstanzenfähigen Anwendung.
Verwenden Sie eine benutzerdefinierte Bereitstellung im Azure-Portal, und erstellen Sie im Editor Ihre eigene Vorlage. Speichern Sie als Nächstes die Konfiguration, nachdem Sie das Beispiel eingefügt haben.
Um die Ressourcen-ID der benutzerseitig zugewiesene verwaltete Identität zu erhalten, suchen Sie im Azure-Portal nach Verwalteten Identitäten. Suchen Sie ihre verwaltete Identität und gehen Sie zu Eigenschaften. Ein Beispiel für Ihre UMI-Ressourcen-ID sieht wie /subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity> aus.
Aktualisieren einer vorhandenen Azure SQL-Datenbank-Instanz mit kundenseitig verwalteten Schlüsseln auf Datenbankebene
Im Folgenden finden Sie Beispiele zum Aktualisieren einer vorhandenen Datenbank in Azure SQL-Datenbank mit einer benutzerseitig zugewiesenen verwalteten Identität und zum Festlegen eines mandantenübergreifenden kundenseitig verwalteten Schlüssels auf Datenbankebene. Die benutzerseitig zugewiesene verwaltete Identität ist für das Einrichten eines kundenseitig verwalteten Schlüssels für TDE (Transparent Data Encryption) während der Datenbankerstellung erforderlich.
Navigieren Sie im Azure-Portal zu der SQL-Datenbankressource, die Sie mit einem kundenseitig verwalteten Schlüssel auf Datenbankebene aktualisieren möchten.
Wählen Sie unter Sicherheit die Option Identität aus. Fügen Sie eine vom Benutzer zugewiesene verwaltete Identität für diese Datenbank hinzu, und wählen Sie dann Speichern aus.
Wechseln Sie nun zum Menü Datenverschlüsselung unter Sicherheit für Ihre Datenbank. Wählen Sie kundenseitig verwalteter Schlüssel auf Datenbankebene (CMK) aus. Die Datenbankidentität für die Datenbank sollte bereits aktiviert sein, da Sie die Identität im letzten Schritt konfiguriert haben.
Wählen Sie die Schlüssel ändern. Wählen Sie das gewünschte Abonnement, Schlüsseltresor, Schlüssel und Version für den kundenseitig verwalteter Schlüssel aus, der für TDE verwendet werden soll. Wählen Sie die Schaltfläche Auswählen aus. Nachdem Sie einen Schlüssel ausgewählt haben, können Sie bei Bedarf zusätzliche Datenbankschlüssel hinzufügen, indem Sie den Azure Key Vault-URI (Objektbezeichner) im Menü Datenverschlüsselung verwenden.
Aktivieren Sie das Kontrollkästchen Schlüssel automatisch rotieren, wenn Sie die automatische Schlüsselrotation auf Datenbankebene aktivieren möchten.
Wählen Sie Speichern aus.
Informationen zur Installation der aktuellen Version von Azure CLI finden Sie im Artikel Azure CLI installieren.
Aktualisieren Sie mit dem Befehl az sql db create eine Datenbank mit benutzerseitig zugewiesener verwalteter Identität und mandantenübergreifender kundenseitig verwalteter TDE. Im Feld encryption-protector kann der Schlüsselbezeichner des zweiten Mandanten verwendet werden. Im Feld federated-client-id können Sie die Anwendungs-ID der mehrinstanzenfähigen Anwendung verwenden.
Um die Ressourcen-ID der benutzerseitig zugewiesene verwaltete Identität zu erhalten, suchen Sie im Azure-Portal nach Verwalteten Identitäten. Suchen Sie ihre verwaltete Identität und gehen Sie zu Eigenschaften. Ein Beispiel für Ihre UMI-Ressourcen-ID sieht wie /subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity> aus. Mit dem Parameter --encryption-protector-auto-rotation können Sie die automatische Schlüsselrotation auf Datenbankebene aktivieren.
Die Liste $keys ist eine durch Leerzeichen getrennte Liste von Schlüsseln, die der Datenbank hinzugefügt werden sollen, und $keysToRemove ist eine durch Leerzeichen getrennte Liste von Schlüsseln, die aus der Datenbank entfernt werden müssen.
Aktualisieren Sie mit PowerShell eine Datenbank mit benutzerseitig zugewiesener verwalteter Identität und mandantenübergreifender kundenseitig verwalteter TDE auf Datenbankebene.
Anweisungen zur Installation des Az PowerShell-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell). Spezifische Cmdlets finden Sie unter AzureRM.Sql.
<ResourceGroupName>: Name der Ressourcengruppe für Ihren logischen Azure SQL-Server.
<DatabaseName>: Verwenden eines eindeutigen Namens der Azure SQL-Datenbank-Instanz
<ServerName>: Verwenden Sie einen eindeutigen Namen für den logischen Azure SQL-Server.
<UserAssignedIdentityId>: Die Liste der benutzerseitig zugewiesenen verwalteten Identitäten, die dem Server zugewiesen werden sollen (kann eine oder mehrere Identitäten sein)
<CustomerManagedKeyId>: Schlüsselbezeichner aus der Key Vault-Instanz im zweiten Mandanten
<FederatedClientId>: Anwendungs-ID der mehrinstanzenfähigen Anwendung
<ListOfKeys>: Die durch Kommas getrennte Liste der kundenseitig verwalteten Schlüssel auf Datenbankebene, die der Datenbank hinzugefügt werden sollen
<ListOfKeysToRemove>: Die durch Kommas getrennte Liste der kundenseitig verwalteten Schlüssel auf Datenbankebene, die aus der Datenbank entfernt werden sollen
-EncryptionProtectorAutoRotation: Kann zum Aktivieren der automatischen Schlüsselrotation auf Datenbankebene verwendet werden.
Um die Ressourcen-ID der benutzerseitig zugewiesene verwaltete Identität zu erhalten, suchen Sie im Azure-Portal nach Verwalteten Identitäten. Suchen Sie ihre verwaltete Identität und gehen Sie zu Eigenschaften. Ein Beispiel für Ihre UMI-Ressourcen-ID sieht wie /subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity> aus.
Hier sehen Sie ein Beispiel für eine ARM-Vorlage, mit der eine Azure SQL-Datenbank-Instanz mit einer benutzerseitig zugewiesenen verwalteten Identität und kundenseitig verwalteter TDE auf Datenbankebene aktualisiert wird. Verwenden Sie für einen mandantenübergreifenden CMK den Schlüsselbezeichner aus der Key Vault-Instanz im zweiten Mandanten und die Anwendungs-ID der mehrinstanzenfähigen Anwendung.
Verwenden Sie eine benutzerdefinierte Bereitstellung im Azure-Portal, und erstellen Sie im Editor Ihre eigene Vorlage. Speichern Sie als Nächstes die Konfiguration, nachdem Sie das Beispiel eingefügt haben.
Um die Ressourcen-ID der benutzerseitig zugewiesene verwaltete Identität zu erhalten, suchen Sie im Azure-Portal nach Verwalteten Identitäten. Suchen Sie ihre verwaltete Identität und gehen Sie zu Eigenschaften. Ein Beispiel für Ihre UMI-Ressourcen-ID sieht wie /subscriptions/<subscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managedIdentity> aus.
Um einen Schlüssel aus der Datenbank zu entfernen, muss der Wert des Schlüsselwörterbuchs eines bestimmten Schlüssels als NULL übergeben werden. Beispielsweise "https://yourvault.vault.azure.net/keys/yourkey1/fd021f84a0d94d43b8ef33154bca0000": null.
Anzeigen der kundenseitig verwalteten Schlüsseleinstellungen auf Datenbankebene in einer Azure SQL-Datenbank-Instanz
Im Folgenden werden Beispiele für das Abrufen von kundenseitig verwalteten Schlüssel auf Datenbankebene für eine Datenbank aufgeführt. Die ARM-Ressource Microsoft.Sql/servers/databases zeigt standardmäßig nur den TDE-Schutz und die verwaltete Identität an, die für die Datenbank konfiguriert sind. Um die Liste der Schlüssel vollständig zu erweitern, verwenden Sie den Parameter -ExpandKeyList. Darüber hinaus können Filter wie -KeysFilter "current" und ein Zeitpunktwert (z. B. 2023-01-01) verwendet werden, um die aktuellen und in der Vergangenheit zu einem bestimmten Zeitpunkt verwendeten Schlüssel abzurufen. Diese Filter werden nur für einzelne Datenbankabfragen und nicht für Abfragen auf Serverebene unterstützt.
Um die kundenseitig verwalteten Schlüssel auf Datenbankebene im Azure-Portal anzuzeigen, wechseln Sie zum Menü Datenverschlüsselung der SQL-Datenbankressource.
Informationen zur Installation der aktuellen Version von Azure CLI finden Sie im Artikel Azure CLI installieren.
# Retrieve the basic database level customer-managed key settings from a database
az sql db show --resource-group $resourceGroupName --server $serverName --name mySampleDatabase
# Retrieve the basic database level customer-managed key settings from a database and all the keys ever added
az sql db show --resource-group $resourceGroupName --server $serverName --name mySampleDatabase --expand-keys
# Retrieve the basic database level customer-managed key settings from a database and the current keys in use
az sql db show --resource-group $resourceGroupName --server $serverName --name mySampleDatabase --expand-keys --keys-filter current
# Retrieve the basic database level customer-managed key settings from a database and the keys in use at a particular point in time
az sql db show --resource-group $resourceGroupName --server $serverName --name mySampleDatabase --expand-keys --keys-filter 01-01-2015
# Retrieve all the databases in a server to check which ones are configured with database level customer-managed keys
az sql db list --resource-group $resourceGroupName --server $serverName
Anweisungen zur Installation des Az PowerShell-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell). Spezifische Cmdlets finden Sie unter AzureRM.Sql.
# Retrieve the basic database level customer-managed key settings from a database
Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName>
# Retrieve the basic database level customer-managed key settings from a database and all the keys ever added
Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList
# Retrieve the basic database level customer-managed key settings from a database and the current keys in use
Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter "current"
# Retrieve the basic database level customer-managed key settings from a database and the keys in use at a particular point in time
Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter '2023-02-03 00:00:00'
# Retrieve all the databases in a server to check which ones are configured with database level customer-managed keys
Get-AzSqlDatabase -resourceGroupName <ResourceGroupName> -ServerName <ServerName> | Select DatabaseName, EncryptionProtector
Verwenden Sie die REST-API 2022-08-01-preview für Azure SQL-Datenbank.
Rufen Sie die grundlegenden Einstellungen für kundenseitig verwaltete Schlüssel auf Datenbankebene aus einer Datenbank ab.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}?api-version=2022-08-01-preview
Rufen Sie die grundlegenden Einstellungen für kundenseitig verwaltete Schlüssel auf Datenbankebene aus einer Datenbank und alle Schlüssel ab, die jemals hinzugefügt wurden.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}?api-version=2022-08-01-preview&$expand=keys
Rufen Sie die grundlegenden Einstellungen für kundenseitig verwaltete Schlüssel auf Datenbankebene aus einer Datenbank und die aktuell verwendeten Schlüssel ab.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}?api-version=2022-08-01-preview&$expand=keys($filter=pointInTime('current'))
Rufen Sie die grundlegenden Einstellungen für kundenseitig verwaltete Schlüssel auf Datenbankebene aus einer Datenbank und die Schlüssel ab, die zu einem bestimmten Zeitpunkt verwaltet wurden.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}?api-version=2022-08-01-preview&$expand=keys($filter=pointInTime('2023-02-04T01:57:42.49Z'))
Auflisten aller Schlüssel auf einem logischen Server
Um die Liste aller Schlüssel (und nicht nur den primären Schutz) abzurufen, die von jeder Datenbank auf dem Server verwendet werden, muss die Abfrage einzeln mit den Schlüsselfiltern erfolgen. Das folgende Beispiel zeigt eine PowerShell-Abfrage zum Auflisten der einzelnen Schlüssel auf dem logischen Server.
Erneutes Überprüfen der kundenseitig verwalteten Schlüsseleinstellungen auf Datenbankebene in einer Azure SQL-Datenbank-Instanz
Im Falle eines nicht zugänglichen TDE-Schutzes, wie in Transparente Datenverschlüsselung (TDE) mit CMK beschrieben, kann nach Korrektur des Schlüsselzugriffs eine erneute Überprüfung verwendet werden, um auf die Datenbank zugreifen zu können. Beispiele finden Sie in den folgenden Anweisungen oder Befehlen.
Suchen Sie mit dem Azure-Portal nach Ihrer SQL-Datenbankressource. Nachdem Sie Ihre SQL-Datenbankressource ausgewählt haben, wechseln Sie zur Registerkarte Transparente Datenverschlüsselung im Menü Datenverschlüsselung unter den Sicherheitseinstellungen. Wenn die Datenbank keinen Zugriff mehr auf Azure Key Vault hat, wird die Schaltfläche Schlüssel erneut überprüfen angezeigt, und Sie haben die Möglichkeit, den vorhandenen Schlüssel erneut zu überprüfen, indem Sie Mit vorhandenem Schlüssel wiederholen auswählen, oder einen anderen Schlüssel auswählen, indem Sie Sicherungsschlüssel auswählen auswählen.
Informationen zur Installation der aktuellen Version von Azure CLI finden Sie im Artikel Azure CLI installieren.
az sql db tde key revalidate --resource-group $resourceGroupName --server $serverName --database mySampleDatabase
Anweisungen zur Installation des Az PowerShell-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell). Spezifische Cmdlets finden Sie unter AzureRM.Sql.
Verwenden Sie die REST-API 2022-08-01-preview für Azure SQL-Datenbank.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/encryptionProtector/current/revalidate?api-version=2022-08-01-preview
Zurücksetzen der kundenseitig verwalteten Schlüsseleinstellungen auf Datenbankebene in einer Azure SQL-Datenbank-Instanz
Eine Datenbank, die mit CMK auf Datenbankebene konfiguriert ist, kann mit den folgenden Befehlen auf Verschlüsselung auf Serverebene zurückgesetzt werden, wenn der Server mit einem dienstseitig verwalteten Schlüssel konfiguriert ist.
Um die Einstellung für kundenseitig verwaltete Schlüssel auf Datenbankebene auf Verschlüsselungsschlüssel auf Serverebene im Azure-Portal rückgängig zu machen, wechseln Sie zur Registerkarte Transparente Datenverschlüsselung im Menü Datenverschlüsselung der SQL-Datenbankressource. Wählen Sie Verschlüsselungsschlüssel auf Serverebene und dann Speichern aus, um die Einstellungen zu speichern.
Hinweis
Um die Einstellung Verschlüsselungsschlüssel auf Serverebene für einzelne Datenbanken verwenden zu können, muss der logische Server für die Azure SQL-Datenbank für die Verwendung des vom Dienst verwalteten Schlüssels für TDE konfiguriert werden.
Informationen zur Installation der aktuellen Version von Azure CLI finden Sie im Artikel Azure CLI installieren.
az sql db tde key revert --resource-group $resourceGroupName --server $serverName --name mySampleDatabase
Anweisungen zur Installation des Az PowerShell-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell). Spezifische Cmdlets finden Sie unter AzureRM.Sql.
Verwenden Sie die REST-API 2022-08-01-preview für Azure SQL-Datenbank.
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}/encryptionProtector/current/revert?api-version=2022-08-01-preview
Nächste Schritte
Lesen Sie die folgende Dokumentation zu verschiedenen CMK-Vorgängen auf Datenbankebene: