Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada SQL do Azure
O SQL Server Import and Export Wizard é uma ferramenta que permite copiar dados de uma fonte para um destino. Este artigo descreve como usar o SQL Server Import and Export Wizard quando a origem, o destino ou ambos são bases de dados SQL Server que contêm colunas protegidas com Always Encrypted.
Cenários de migração
Com o Assistente de Importação e Exportação do SQL Server, você pode implementar os seguintes cenários para migrar dados de ou para colunas criptografadas.
Criptografar dados de texto sem formatação na migração
Se a sua fonte de dados contiver dados em texto simples e o seu destino for uma base de dados do SQL Server que contém colunas encriptadas, pode usar o Assistente de Importação e Exportação do SQL Server para recuperar os dados em texto simples da fonte, encriptá-los e copiar os dados encriptados (texto cifrado) para as colunas encriptadas na base de dados de destino. Neste cenário de migração, a fonte de dados pode ser qualquer armazenamento de dados que o SQL Server Import and Export Wizard suporte, como um ficheiro, uma base de dados do SQL Server ou uma base de dados noutro sistema de base de dados.
Para garantir que o Assistente de Importação e Exportação do SQL Server pode encriptar dados, ative o Always Encrypted para a ligação à base de dados de destino e assegure que tem acesso às chaves que protegem os dados nas colunas da base de dados de destino. Para obter mais informações, consulte Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados e Permissões para criptografar ou descriptografar dados durante a migração.
Desencriptar dados encriptados na migração
Se estiver a migrar dados armazenados em colunas de base de dados encriptadas numa base de dados do SQL Server, pode configurar o SQL Server Import and Export Wizard para desencriptar os dados e copiar os dados desencriptados (em texto simples) para um destino. O destino pode ser qualquer armazenamento de dados que o Assistente de Importação e Exportação do SQL Server suporte, como um ficheiro, uma base de dados do SQL Server ou uma base de dados noutro sistema de base de dados.
Para garantir que o Assistente de Importação e Exportação do SQL Server pode desencriptar dados, ative o Always Encrypted para a ligação à base de dados de origem e assegure que tem acesso às chaves que protegem os dados nas colunas da base de dados de origem. Para obter mais informações, consulte Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados e Permissões para criptografar ou descriptografar dados durante a migração.
Criptografar novamente os dados na migração
Se estiver a copiar dados de colunas encriptadas numa base de dados SQL Server de origem para colunas encriptadas na mesma ou noutra base de dados SQL Server, pode configurar o SQL Server Import and Export Wizard para desencriptar os dados depois de os recuperar da fonte, e voltar a encriptá-los antes de os inserir nas colunas encriptadas na base de dados de destino. Utilize este método se o esquema das colunas de destino, como tipos de dados de colunas, tipos de encriptação e chaves de encriptação de colunas, for diferente do esquema das colunas de origem.
Para garantir que o Assistente de Importação e Exportação do SQL Server pode encriptar e desencriptar dados, ative o Always Encrypted tanto para a ligação à base de dados de origem como para a de destino, e assegure que tem acesso às chaves que protegem os dados nas colunas da base de dados de origem e de destino. Para obter mais informações, consulte Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados e Permissões para criptografar ou descriptografar dados durante a migração.
Mantenha os dados criptografados durante a migração
Se estiver a copiar dados de colunas encriptadas numa base de dados SQL Server de origem para colunas encriptadas na mesma ou noutra base de dados SQL Server, e as colunas de destino usarem exatamente o mesmo esquema das colunas de origem, incluindo os mesmos tipos de dados, tipos de encriptação e chaves de encriptação de coluna, pode configurar o SQL Server Import and Export Wizard para recuperar texto cifrado das colunas de origem e inserir os dados encriptados (texto cifrado) na coluna encriptada na base de dados SQL Server de destino.
Neste cenário, utilize qualquer fornecedor de dados que suporte o SQL Server para se ligar à base de dados SQL Server de origem ou destino. Se estiver a usar um fornecedor que suporta o Always Encrypted para se ligar à base de dados de destino, certifique-se de que o Always Encrypted está desativado para a ligação à base de dados. Para obter mais informações, consulte Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados.
Também precisa de garantir que o principal da base de dados (utilizador) que o SQL Server Import and Export Wizard usa para se ligar à base de dados de destino está configurado com a ALLOW_ENCRYPTED_VALUE_MODIFICATIONS opção definida para ON. Esta opção suprime as verificações de metadados criptográficos no servidor em operações de cópia em massa, o que permite ao assistente inserir em massa os dados encriptados na base de dados de destino sem os desencriptar. Para mais informações, consulte Carregar dados encriptados em massa para colunas protegidas por Always Encrypted.
Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados
Se o seu cenário de migração exigir que o Assistente de Importação e Exportação do SQL Server encripte ou desencripte dados, configure a ligação da base de dados SQL Server de origem, a ligação de destino ao SQL Server, ou ambas, usando um fornecedor de dados que suporte o Always Encrypted. Também precisas de ativar o Always Encrypted para essas ligações.
Usa qualquer fornecedor de dados para uma conexão se não precisares do assistente para encriptar ou desencriptar dados nessa conexão.
Os seguintes provedores de dados no Assistente de Importação e Exportação do SQL Server oferecem suporte a Always Encrypted.
- Provedor de dados do .NET Framework para SQL Server
- Verifique se a máquina na qual o assistente é executado usa o .NET Framework 4.6.1 ou posterior.
- Para habilitar o Always Encrypted para uma conexão, defina
Column Encryption SettingcomoEnablednas propriedades da conexão. Para desativar o "Always Encrypted", definaColumn Encryption SettingcomoDisabled. Para obter mais informações, consulte Conectar-se ao SQL Server com o provedor de dados do .NET Framework para SQL Server e Habilitando Sempre Criptografado para consultas de aplicativo.
- Provedor de dados .NET Framework para ODBC.
- Instale o Microsoft ODBC Driver 13.1 ou posterior.
- Para habilitar o Always Encrypted para uma conexão, defina
Column EncryptioncomoEnablednas propriedades da conexão. Para desativar o "Always Encrypted", definaColumn EncryptioncomoDisabled. Para obter mais informações, consulte Conectar-se ao SQL Server com o driver ODBC para SQL Server e Habilitando o Always Encrypted em um aplicativo ODBC.
- Para habilitar o Always Encrypted para uma conexão, defina
- Instale o Microsoft ODBC Driver 13.1 ou posterior.
Permissões para criptografar ou descriptografar dados durante a migração
Para encriptar ou desencriptar dados armazenados numa base de dados de origem ou destino do SQL Server, precisa das permissões VIEW ANY COLUMN MASTER KEY DEFINITION e VIEW ANY COLUMN ENCRYPTION KEY DEFINITION na base de dados de origem. Você também precisa de permissões de armazenamento de chaves para acessar e usar sua chave mestra de coluna. Para informações detalhadas sobre as permissões do repositório de chaves necessárias para operações de gestão de chaves, consulte Criar e armazenar chaves-mestras da coluna para Always Encrypted e encontre a secção relevante para o seu repositório de chaves.
Conteúdo relacionado
- Sempre criptografado
- Exportar e importar bancos de dados usando o Always Encrypted
- Backup e restauração de bancos de dados usando o Always Encrypted
- Carregue dados criptografados em massa para colunas usando o Always Encrypted
- colunas de consulta usando Always Encrypted com o SQL Server Management Studio
- Desenvolver aplicações utilizando Always Encrypted