Migrujte data do nebo ze sloupců pomocí Always Encrypted with SQL Server Import and Export Wizard

platí pro:SQL ServerAzure SQL Databaseazure SQL Managed Instance

Průvodce importem a exportem SQL Server je nástroj, který vám umožní kopírovat data ze zdroje do cíle. Tento článek popisuje, jak používat průvodce importem a exportem SQL Server, když je zdroj, cíl nebo obojí databází SQL Server obsahující sloupce chráněné systémem Always Encrypted.

Scénáře migrace

Pomocí Průvodce importem a exportem SQL Serveru můžete implementovat následující scénáře migrace dat do nebo z šifrovaných sloupců.

Šifrování dat prostého textu při migraci

Pokud váš zdroj dat obsahuje nezašifrovaná data a vaším cílem je databáze SQL Server obsahující šifrované sloupce, můžete použít Průvodce importem a exportem SQL Server k získání nezašifrovaných dat ze zdroje, jejich zašifrování a zkopírování šifrovaných dat (šifrový text) do zašifrovaných sloupců v cílové databázi. Pro tento scénář migrace může být zdrojem dat jakékoli úložiště, které podporuje průvodce importem a exportem SQL Server, například soubor, databáze SQL Server nebo databáze v jiném databázovém systému.

Aby bylo zajištěno, že průvodce importem a exportem SQL Server dokáže šifrovat data, povolte Always Encrypted pro připojení k cílové databázi a zajistěte přístup ke klíčům, které chrání data ve sloupcích cílové databáze. Další informace najdete v tématu Povolení a zakázání funkce Always Encrypted pro připojení k databázi a oprávnění pro šifrování nebo dešifrování dat během migrace.

Dešifrování šifrovaných dat při migraci

Pokud migrujete data uložená v šifrovaných sloupcích databáze SQL Server, můžete nastavit SQL Server Import and Export Wizard tak, aby data dešifroval a zkopíroval dešifrovaná (nešifrovaná) data do cíle. Cílem může být jakékoli datové úložiště, které je podporováno Průvodcem importem a exportem SQL Server, například soubor, databáze SQL Server nebo databáze v jiném databázovém systému.

Aby bylo zajištěno, že průvodce importem a exportem SQL Server dokáže data dešifrovat, povolte Always Encrypted pro připojení ke zdrojové databázi a zajistěte přístup ke klíčům, které chrání data ve sloupcích zdrojové databáze. Další informace najdete v tématu Povolení a zakázání funkce Always Encrypted pro připojení k databázi a oprávnění pro šifrování nebo dešifrování dat během migrace.

Opětovné šifrování dat při migraci

Pokud kopírujete data ze zašifrovaných sloupců ve zdrojové databázi SQL Server do zašifrovaných sloupců ve stejné nebo jiné databázi SQL Server, můžete nastavit SQL Server Import and Export Wizard tak, aby data po získání ze zdroje dešifroval a znovu zašifroval před vložením do zašifrovaných sloupců v cílové databázi. Použijte tuto metodu, pokud se schéma cílových sloupců, jako jsou typy dat sloupců, typy šifrování a šifrovací klíče sloupců, liší od schématu zdrojových sloupců.

Abyste zajistili, že průvodce importem a exportem SQL Server dokáže šifrovat a dešifrovat data, povolte Always Encrypted jak pro připojení ke zdrojové databázi, tak pro připojení k cílové databázi, a zajistěte, že máte přístup ke klíčům, které chrání data jak ve sloupcích zdrojové, tak cílové databáze. Další informace najdete v tématu Povolení a zakázání funkce Always Encrypted pro připojení k databázi a oprávnění pro šifrování nebo dešifrování dat během migrace.

Zachování šifrovaných dat během migrace

Pokud kopírujete data ze šifrovaných sloupců ve zdrojové databázi SQL Server do šifrovaných sloupců ve stejné nebo jiné databázi SQL Server a cílové sloupce používají přesně stejné schéma jako zdrojové sloupce, včetně stejných typů dat, typů šifrování a klíčů pro šifrování sloupců, můžete nastavit průvodce importem a exportem SQL Server tak, aby načítal šifrovaný text ze zdrojových sloupců a vložil šifrovaná data (šifrovaný text) do zašifrovaného sloupce v cílové databázi SQL Server.

V tomto případě použijte jakéhokoli poskytovatele dat, který podporuje SQL Server, k připojení ke zdrojové nebo cílové databázi SQL Server. Pokud používáte poskytovatele, který podporuje Always Encrypted pro připojení k cílové databázi, ujistěte se, že je Always Encrypted pro připojení k databázi zakázáno. Další informace najdete v tématu Povolení a zakázání funkce Always Encrypted pro připojení k databázi.

Musíte také zajistit, aby databázový objekt zabezpečení (uživatel), který Průvodce importem a exportem SQL Serveru používá k připojení k cílové databázi, měl možnost ALLOW_ENCRYPTED_VALUE_MODIFICATIONS nastavenou na ON. Tato možnost potlačuje kontrolu kryptografických metadat na serveru při hromadných kopírovacích operacích, což umožňuje průvodci hromadně vložit šifrovaná data do cílové databáze bez jejich dešifrování. Pro více informací viz Hromadné načítání šifrovaných dat do sloupců chráněných systémem Always Encrypted.

Povolení a zakázání funkce Always Encrypted pro připojení k databázi

Pokud vaše migrační situace vyžaduje SQL Server Import and Export Wizard pro šifrování nebo dešifrování dat, nakonfigurujte zdrojové připojení k databázi SQL Server, připojení k cílové databázi SQL Server, nebo obojí, pomocí poskytovatele dat, který podporuje Always Encrypted. Také musíte zapnout Always Encrypted pro tato připojení.

Použijte jakéhokoliv poskytovatele dat pro připojení, pokud nepotřebujete průvodce k šifrování nebo dešifrování dat na tom připojení.

Následující zprostředkovatelé dat v Průvodci importem a exportem SQL Serveru podporují funkci Always Encrypted.

Oprávnění k šifrování nebo dešifrování dat během migrace

Pro zašifrování nebo dešifrování dat uložených ve zdrojové nebo cílové databázi SQL Server potřebujete oprávnění VIEW ANY COLUMN MASTER KEY DEFINITION a VIEW ANY COLUMN ENCRYPTION KEY DEFINITION ve zdrojové databázi. K přístupu a používání hlavního klíče sloupce potřebujete také oprávnění k úložišti klíčů. Podrobné informace o oprávněních úložiště klíčů vyžadovaných pro operace správy klíčů najdete v článku Vytvoření a uložení hlavních klíčů sloupců pro Always Encrypted a vyhledejte oddíl relevantní pro vaše úložiště klíčů.