Platí pro:
Azure SQL Database
Poznámka:
CmK na úrovni databáze je k dispozici pro Azure SQL Database (všechny edice SQL Database). Není k dispozici pro Azure SQL Managed Instance, místní SQL Server, Azure VMs a Azure Synapse Analytics (vyhrazené fondy SQL (dříve SQL DW)).
V této příručce si projdeme postup konfigurace geografické replikace a obnovení zálohování ve službě Azure SQL Database. Azure SQL Database je nakonfigurované s transparentním šifrováním dat (TDE) a klíči spravovanými zákazníkem (CMK) na úrovni databáze s využitím spravované identity přiřazené uživatelem pro přístup ke službě Azure Key Vault. Azure Key Vault i logický server pro Azure SQL jsou v tomto průvodci ve stejném tenantovi Microsoft Entra, ale můžou být v různých tenantech.
Poznámka:
ID Microsoft Entra se dříve označovalo jako Azure Active Directory (Azure AD).
Požadavky
Důležité
Po vytvoření nebo obnovení databáze se v nabídce transparentního šifrování dat na webu Azure Portal zobrazí nová databáze se stejným nastavením jako zdrojová databáze, ale pravděpodobně chybí klíče. Ve všech případech, kdy se vytvoří nová databáze ze zdrojové databáze, může být počet klíčů zobrazených pro cílovou databázi v seznamu Další databázové klíče webu Azure Portal menší než počet klíčů zobrazených pro zdrojovou databázi. Důvodem je to, že počet zobrazených klíčů závisí na požadavcích jednotlivých funkcí používaných k vytvoření cílové databáze. Pokud chcete zobrazit seznam všech klíčů dostupných pro nově vytvářenou databázi, použijte dostupná rozhraní API v zobrazení nastavení klíče spravovaného zákazníkem na úrovni databáze ve službě Azure SQL Database.
Vytvoření služby Azure SQL Database s klíči spravovanými zákazníkem na úrovni databáze jako sekundární nebo kopírování
Pomocí následujících pokynů nebo příkazů vytvořte sekundární repliku nebo cíl kopírování služby Azure SQL Database nakonfigurovaný pomocí klíčů spravovaných zákazníkem na úrovni databáze. Spravovaná identita přiřazená uživatelem se vyžaduje k nastavení klíče spravovaného zákazníkem pro transparentní šifrování dat během fáze vytváření databáze.
Vytvoření kopie databáze s klíči spravovanými zákazníkem na úrovni databáze
Pokud chcete vytvořit databázi ve službě Azure SQL Database jako kopii s klíči spravovanými zákazníkem na úrovni databáze, postupujte takto:
Přejděte na web Azure Portal a přejděte do služby Azure SQL Database nakonfigurované pomocí klíčů spravovaných zákazníkem na úrovni databáze. Přejděte na kartu Transparentní šifrování dat v nabídce Šifrování dat a zkontrolujte seznam aktuálních klíčů, které databáze používá.
Vytvořte kopii databáze výběrem možnosti Kopírovat z nabídky Přehled databáze.
Zobrazí se nabídka Vytvořit databázi SQL – Kopírovat databázi . Pro tuto databázi použijte jiný server, ale stejné nastavení jako databáze, kterou chcete zkopírovat. V části Správa transparentního šifrovacího klíče dat vyberte Konfigurovat transparentní šifrování dat.
Po zobrazení nabídky Transparentní šifrování dat zkontrolujte nastavení CMK pro tuto databázi kopírování. Nastavení a klíče by měly být naplněny stejnou identitou a klíči používanými ve zdrojové databázi.
Pokračujte výběrem možnosti Použít a pak vyberte Zkontrolovat a vytvořit a vytvořit kopii databáze.
Vytvoření sekundární repliky s klíči spravovanými zákazníkem na úrovni databáze
Přejděte na web Azure Portal a přejděte do služby Azure SQL Database nakonfigurované pomocí klíčů spravovaných zákazníkem na úrovni databáze. Přejděte do nabídky Transparentní šifrování dat a zkontrolujte seznam aktuálních klíčů, které databáze používá.
V části Nastavení správy dat pro databázi vyberte Repliky. Výběrem možnosti Vytvořit repliku vytvořte sekundární repliku databáze.
Zobrazí se nabídka Vytvořit databázi SQL – Geografická replika . Pro tuto databázi použijte sekundární server, ale stejné nastavení jako databáze, kterou se pokoušíte replikovat. V části Správa transparentního šifrovacího klíče dat vyberte Konfigurovat transparentní šifrování dat.
Po zobrazení nabídky Transparentní šifrování dat zkontrolujte nastavení CMK pro tuto repliku databáze. Nastavení a klíče by měly být naplněny stejnou identitou a klíči použitými v primární databázi.
Pokračujte výběrem možnosti Použít a pak vyberte Zkontrolovat a vytvořit a vytvořit kopii databáze.
Informace o instalaci aktuální verze Azure CLI najdete v článku Instalace Azure CLI .
Předem vyplní seznam aktuálních klíčů, které primární databáze používá, pomocí parametru expand-keys jako current parametru keys-filter.
az sql db show --name $databaseName --resource-group $resourceGroup --server $serverName --expand-keys --keys-filter current
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Vytvořte novou databázi jako sekundární a zadejte předem vyplněný seznam klíčů získaných ze zdrojové databáze a výše uvedenou identitu (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
# Create a secondary replica with Active Geo Replication with the same name as the primary database
az sql db replica create -g $resourceGroup -s $serverName -n $databaseName --partner-server $secondaryServer --partner-database $secondaryDatabase --partner-resource-group $secondaryResourceGroup -i --encryption-protector $encryptionProtector --user-assigned-identity-id $umi --keys $keys
Důležité
$keys je seznam klíčů oddělených mezerami načtených ze zdrojové databáze.
Chcete-li vytvořit kopii databáze, lze az sql db copy použít se stejnými parametry.
# Create a copy of a database configured with database level customer-managed keys
az sql db copy -g $resourceGroup -s $serverName -n $databaseName --dest-name $secondaryDatabase -i --encryption-protector $encryptionProtector --user-assigned-identity-id $umi --keys $keys
Pokyny k instalaci modulu Az PowerShell najdete v tématu Instalace Azure PowerShellu.
Pomocí příkazu Get-AzSqlDatabase a -ExpandKeyList-KeysFilter "current" parametrů předem naplníte seznam aktuálních klíčů, které primární databáze používá. Vylučte -KeysFilter , pokud chcete načíst všechny klíče.
$database = Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter "current"
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Vytvořte novou databázi jako sekundární pomocí příkazu New-AzSqlDatabaseSecondary a zadejte předem vyplněný seznam klíčů získaných ze zdrojové databáze a výše uvedenou identitu (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty) ve volání rozhraní API pomocí -KeyListparametrů , -AssignIdentity, -UserAssignedIdentityId, -EncryptionProtector (a v případě potřeby), -FederatedClientId).
# Create a secondary replica with Active Geo Replication with the same name as the primary database
$database = Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter "current"
$database | New-AzSqlDatabaseSecondary -PartnerResourceGroupName <SecondaryResourceGroupName> -PartnerServerName <SecondaryServerName> -AllowConnections "All" -AssignIdentity -UserAssignedIdentityId <UserAssignedIdentityId> -EncryptionProtector <CustomerManagedKeyId> -FederatedClientId <FederatedClientId>
-KeyList $database.Keys.Keys
K vytvoření kopie databáze lze New-AzSqlDatabaseCopy použít se stejnými parametry.
# Create a copy of a database configured with database level customer-managed keys
$database = Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter "current"
New-AzSqlDatabaseCopy -CopyDatabaseName <CopyDatabaseName> -CopyResourceGroupName <CopyResourceGroupName> -CopyServerName <CopyServerName> -DatabaseName <DatabaseName> -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -AssignIdentity -UserAssignedIdentityId <UserAssignedIdentityId> -EncryptionProtector <CustomerManagedKeyId> -FederatedClientId <FederatedClientId>
-KeyList $database.Keys.Keys
Tady je příklad šablony ARM, která vytvoří sekundární repliku a kopii služby Azure SQL Database nakonfigurovanou pomocí spravované identity přiřazené uživatelem a transparentního šifrování dat spravovaného zákazníkem na úrovni databáze.
Další informace a šablony ARM najdete v tématu Šablony Azure Resource Manageru pro Azure SQL Database.
Použití vlastního nasazení na webu Azure Portal a vytvoření vlastní šablony v editoru V dalším kroku uložte konfiguraci po vložení v příkladu.
Pomocí následujícího požadavku rozhraní REST API předem naplníte seznam aktuálních klíčů, které primární databáze používá:
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'))
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Vytvořte novou databázi jako sekundární databázi a jako parametr v šabloně ARM zadejte předem vyplněný seznam klíčů získaných ze zdrojové databáze a výše uvedenou identitu (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty keys_to_add ).
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"server_name": {
"type": "String"
},
"database_name": {
"type": "String"
},
"user_assigned_identity": {
"type": "String"
},
"encryption_protector": {
"type": "String"
},
"location": {
"type": "String"
},
"source_database_id": {
"type": "String"
},
"keys_to_add": {
"type": "Object"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Sql/servers/databases",
"apiVersion": "2022-08-01-preview",
"name": "[concat(parameters('server_name'), concat('/',parameters('database_name')))]",
"location": "[parameters('location')]",
"sku": {
"name": "Basic",
"tier": "Basic",
"capacity": 5
},
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"[parameters('user_assigned_identity')]": {}
}
},
"properties": {
"collation": "SQL_Latin1_General_CP1_CI_AS",
"maxSizeBytes": 104857600,
"catalogCollation": "SQL_Latin1_General_CP1_CI_AS",
"zoneRedundant": false,
"readScale": "Disabled",
"requestedBackupStorageRedundancy": "Geo",
"maintenanceConfigurationId": "/subscriptions/e1775f9f-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default",
"isLedgerOn": false,
"encryptionProtector": "[parameters('encryption_protector')]",
"keys": "[parameters('keys_to_add')]",
"createMode": "Secondary",
"sourceDatabaseId": "[parameters('source_database_id')]"
}
}
]
}
Příkladem parametru encryption_protector je keys_to_add :
"keys_to_add": {
"value": {
"https://yourvault.vault.azure.net/keys/yourkey1/fd021f84a0d94d43b8ef33154bca0000": {},
"https://yourvault.vault.azure.net/keys/yourkey2/fd021f84a0d94d43b8ef33154bca0000": {}
}
},
"encryption_protector": {
"value": "https://yourvault.vault.azure.net/keys/yourkey2/fd021f84a0d94d43b8ef33154bca0000"
}
Chcete-li vytvořit kopii databáze, můžete použít následující šablonu se stejnými parametry.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"server_name": {
"type": "String"
},
"database_name": {
"type": "String"
},
"user_assigned_identity": {
"type": "String"
},
"encryption_protector": {
"type": "String"
},
"location": {
"type": "String"
},
"source_database_id": {
"type": "String"
},
"keys_to_add": {
"type": "Object"
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Sql/servers/databases",
"apiVersion": "2022-08-01-preview",
"name": "[concat(parameters('server_name'), concat('/',parameters('database_name')))]",
"location": "[parameters('location')]",
"sku": {
"name": "Basic",
"tier": "Basic",
"capacity": 5
},
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"[parameters('user_assigned_identity')]": {}
}
},
"properties": {
"collation": "SQL_Latin1_General_CP1_CI_AS",
"maxSizeBytes": 104857600,
"catalogCollation": "SQL_Latin1_General_CP1_CI_AS",
"zoneRedundant": false,
"readScale": "Disabled",
"requestedBackupStorageRedundancy": "Geo",
"maintenanceConfigurationId": "/subscriptions/e1775f9f-xxxx-xxxx-xxxx-xxxxxxxxxxxx/providers/Microsoft.Maintenance/publicMaintenanceConfigurations/SQL_Default",
"isLedgerOn": false,
"encryptionProtector": "[parameters('encryption_protector')]",
"keys": "[parameters('keys_to_add')]",
"createMode": "Copy",
"sourceDatabaseId": "[parameters('source_database_id')]"
}
}
]
}
Obnovení služby Azure SQL Database pomocí klíčů spravovaných zákazníkem na úrovni databáze
Tato část vás provede postupem obnovení služby Azure SQL Database nakonfigurovaným pomocí klíčů spravovaných zákazníkem na úrovni databáze. Spravovaná identita přiřazená uživatelem se vyžaduje k nastavení klíče spravovaného zákazníkem pro transparentní šifrování dat během fáze vytváření databáze.
obnovení k určitému bodu v čase
Následující část popisuje, jak obnovit databázi nakonfigurovanou pomocí klíčů spravovaných zákazníkem na úrovni databáze k určitému bodu v čase. Další informace o obnovení zálohování pro službu SQL Database najdete v tématu Obnovení databáze ze zálohy ve službě Azure SQL Database.
Přejděte na web Azure Portal a přejděte do služby Azure SQL Database nakonfigurované pomocí klíčů spravovaných zákazníkem na úrovni databáze, které chcete obnovit.
Pokud chcete databázi obnovit k určitému bodu v čase, vyberte Obnovit z nabídky Přehled databáze.
Zobrazí se nabídka Vytvořit databázi SQL – Obnovit databázi . Vyplňte potřebné podrobnosti o zdroji a databázi. V části Správa transparentního šifrovacího klíče dat vyberte Konfigurovat transparentní šifrování dat.
Jakmile se zobrazí nabídka Transparentní šifrování dat , zkontrolujte nastavení CMK pro databázi. Nastavení a klíče by se měly naplnit stejnou identitou a klíči použitými v databázi, kterou se pokoušíte obnovit.
Pokračujte výběrem možnosti Použít a pak vyberte Zkontrolovat a vytvořit a vytvořit kopii databáze.
Informace o instalaci aktuální verze Azure CLI najdete v článku Instalace Azure CLI .
Předem naplní seznam klíčů používaných primární databází pomocí parametru expand-keys s bodem obnovení v čase jako keys-filter.
az sql db show --name $databaseName --resource-group $resourceGroup --server $serverName --expand-keys --keys-filter $timestamp
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Vytvořte novou databázi jako cíl obnovení a zadejte předem vyplněný seznam klíčů získaných ze zdrojové databáze a výše uvedenou identitu (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
# Create a restored database
az sql db restore --dest-name $destName --name $databaseName --resource-group $resourceGroup --server $serverName --subscription $subscriptionId --time $timestamp -i --encryption-protector $encryptionProtector --user-assigned-identity-id $umi --keys $keys
Důležité
$keys je seznam klíčů oddělených mezerami načtených ze zdrojové databáze.
Pokyny k instalaci modulu Az PowerShell najdete v tématu Instalace Azure PowerShellu.
Vytvořte předem seznam klíčů používaných primární databází pomocí příkazu Get-AzSqlDatabase a parametrů-ExpandKeyList (-KeysFilter "2023-01-01"2023-01-01 je příkladem bodu v čase, do kterého chcete databázi obnovit). Vylučte -KeysFilter , pokud chcete načíst všechny klíče.
$database = Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter <Timestamp>
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Použijte příkaz Restore-AzSqlDatabase
$database = Get-AzSqlDatabase -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <DatabaseName> -ExpandKeyList -KeysFilter <Timestamp>
# Create a restored database
Restore-AzSqlDatabase -FromPointInTimeBackup -PointInTime <Timestamp> -ResourceId '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/databases/{databaseName}' -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -TargetDatabaseName <TargetDatabaseName> -KeyList $database.Keys.Keys -EncryptionProtector <EncryptionProtector> -UserAssignedIdentityId <UserAssignedIdentityId> -AssignIdentity
Vyřazené obnovení databáze
Následující část popisuje, jak obnovit odstraněnou databázi nakonfigurovanou pomocí klíčů spravovaných zákazníkem na úrovni databáze. Další informace o obnovení zálohování pro službu SQL Database najdete v tématu Obnovení databáze ze zálohy ve službě Azure SQL Database.
Přejděte na web Azure Portal a přejděte na logický server odstraněné databáze, kterou chcete obnovit. V části Správa dat vyberte Odstraněné databáze.
Vyberte odstraněnou databázi, kterou chcete obnovit.
Zobrazí se nabídka Vytvořit databázi SQL – Obnovit databázi . Vyplňte potřebné podrobnosti o zdroji a databázi. V části Správa transparentního šifrovacího klíče dat vyberte Konfigurovat transparentní šifrování dat.
Po zobrazení nabídky Transparentní šifrování dat nakonfigurujte spravovanou identitu přiřazenou uživatelem, klíč spravovaný zákazníkem a oddíl Další databázové klíče pro vaši databázi.
Pokračujte výběrem možnosti Použít a pak vyberte Zkontrolovat a vytvořit a vytvořit kopii databáze.
Informace o instalaci aktuální verze Azure CLI najdete v článku Instalace Azure CLI .
Předem naplní seznam klíčů používaných vyřazenou databází pomocí parametru expand-keys . Doporučujeme předat všechny klíče, které zdrojová databáze používala. Pomocí parametru keys-filter můžete také zkusit provést obnovení s klíči, které jsou k dispozici v době odstranění.
az sql db show-deleted --name $databaseName --resource-group $resourceGroup --server $serverName --restorable-dropped-database-id "databaseName,133201549661600000" --expand-keys
Důležité
restorable-dropped-database-id lze načíst výpisem všech obnovených vyřazených databází na serveru a je ve formátu databaseName,deletedTimestamp.
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Vytvořte novou databázi jako cíl obnovení a zadejte předem vyplněný seznam klíčů získaných z odstraněné zdrojové databáze a výše uvedenou identitu (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
# Create a restored database
az sql db restore --dest-name $destName --name $databaseName --resource-group $resourceGroup --server $serverName --subscription $subscriptionId --time $timestamp -i --encryption-protector $encryptionProtector --user-assigned-identity-id $umi --keys $keys --deleted-time "2023-02-06T11:02:46.160000+00:00"
Důležité
$keys je seznam klíčů oddělených mezerami načtených ze zdrojové databáze.
Pokyny k instalaci modulu Az PowerShell najdete v tématu Instalace Azure PowerShellu.
Vytvořte předem seznam klíčů používaných primární databází pomocí příkazu Get-AzSqlDeletedDatabaseBackup a parametru -ExpandKeyList . Doporučujeme předat všechny klíče, které zdrojová databáze používala. Pomocí parametru -KeysFilter můžete také zkusit provést obnovení s klíči, které jsou k dispozici v době odstranění.
$database = Get-AzSqlDeletedDatabaseBackup -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseId "dbName,133201549661600000" -ExpandKeyList -DeletionDate "2/6/2023" -DatabaseName <databaseName>
Důležité
DatabaseId lze načíst výpisem všech obnovených vyřazených databází na serveru a je ve formátu databaseName,deletedTimestamp.
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Použijte příkaz Restore-AzSqlDatabase
$database = Get-AzSqlDeletedDatabaseBackup -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseId "dbName,133201549661600000" -ExpandKeyList -DeletionDate <DeletionDate> -DatabaseName <databaseName>
# Create a restored database
Restore-AzSqlDatabase -FromDeletedDatabaseBackup -DeletionDate <Timestamp> -ResourceId '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/restorableDroppedDatabases/{databaseName}' -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -TargetDatabaseName <TargetDatabaseName> -KeyList $database.Keys.Keys -EncryptionProtector <EncryptionProtector> -UserAssignedIdentityId <UserAssignedIdentityId> -AssignIdentity
Geografické obnovení
Následující část popisuje, jak obnovit geograficky replikovanou zálohu databáze, která je nakonfigurovaná pomocí klíčů spravovaných zákazníkem na úrovni databáze. Další informace o obnovení zálohování pro službu SQL Database najdete v tématu Obnovení databáze ze zálohy ve službě Azure SQL Database.
Přejděte na web Azure Portal a přejděte na logický server, na kterém chcete databázi obnovit.
V nabídce Přehled vyberte Vytvořit databázi.
Zobrazí se nabídka Vytvořit databázi SQL. Vyplňte karty Základní a Sítě pro novou databázi. V části Další nastavení vyberte Zálohovat pro oddíl Použít existující data a vyberte geograficky replikovanou zálohu.
Přejděte na kartu Zabezpečení . V části Správa transparentního šifrovacího klíče dat vyberte Konfigurovat transparentní šifrování dat.
Po zobrazení nabídky Transparentní šifrování dat vyberte Klíč spravovaný zákazníkem (CMK) na úrovni databáze.
Spravovaná identita přiřazená uživatelem, klíč spravovaný zákazníkem a další klíče databáze musí odpovídat zdrojové databázi, kterou chcete obnovit. Ujistěte se, že spravovaná identita přiřazená uživatelem má přístup ke službě Azure Key Vault obsahující klíč spravovaný zákazníkem, který byl použit v zálohování.
Pokračujte výběrem možnosti Použít a pak vyberte Zkontrolovat a vytvořit a vytvořit záložní databázi.
Informace o instalaci aktuální verze Azure CLI najdete v článku Instalace Azure CLI .
Předem naplní seznam klíčů používaných geografickou zálohou databáze nakonfigurovanými klíči spravovanými zákazníkem na úrovni databáze pomocí parametru expand-keys .
az sql db geo-backup --database-name $databaseName --g $resourceGroup --server $serverName --expand-keys
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Vytvořte novou databázi jako cíl geografického obnovení a zadejte předem vyplněný seznam klíčů získaných z odstraněné zdrojové databáze a výše uvedenou identitu (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
# Create a geo restored database
az sql db geo-backup restore --geo-backup-id "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/recoverableDatabases/{databaseName}" --dest-database $destName --resource-group $resourceGroup --dest-server $destServerName -i --encryption-protector $encryptionProtector --user-assigned-identity-id $umi --keys $keys
Důležité
$keys je seznam klíčů oddělených mezerami načtených ze zdrojové databáze.
Pokyny k instalaci modulu Az PowerShell najdete v tématu Instalace Azure PowerShellu.
Pomocí příkazu Get-AzSqlDatabaseGeoBackup a -ExpandKeyList načtení všech klíčů předem naplníte seznam klíčů používaných primární databází.
$database = Get-AzSqlDatabaseGeoBackup -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <databaseName> -ExpandKeyList
Důležité
DatabaseId lze načíst výpisem všech obnovených vyřazených databází na serveru a je ve formátu databaseName,deletedTimestamp.
Vyberte spravovanou identitu přiřazenou uživatelem (a ID federovaného klienta, pokud konfigurujete přístup mezi tenanty).
Použijte příkaz Restore-AzSqlDatabase
$database = Get-AzSqlDatabaseGeoBackup -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DatabaseName <databaseName> -ExpandKeyList
# Create a restored database
Restore-AzSqlDatabase -FromGeoBackup -ResourceId "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/servers/{serverName}/recoverableDatabases/{databaseName}" -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -TargetDatabaseName <TargetDatabaseName> -KeyList $database.Keys.Keys -EncryptionProtector <EncryptionProtector> -UserAssignedIdentityId <UserAssignedIdentityId> -AssignIdentity
Důležité
Zálohy dlouhodobého uchovávání (LTR) neposkytují seznam klíčů používaných zálohováním. Pokud chcete obnovit zálohu LTR, musí být všechny klíče používané zdrojovou databází předány cíli obnovení LTR.
Možnost automatické obměny klíčů pro zkopírované nebo obnovené databáze
Nově zkopírované nebo obnovené databáze je možné nakonfigurovat tak, aby automaticky obměněly klíč spravovaný zákazníkem používaný k transparentnímu šifrování dat. Informace o povolení automatické obměny klíčů na webu Azure Portal nebo použití rozhraní API najdete v tématu Automatické obměny klíčů na úrovni databáze.
Související obsah