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 Assistente de Importação e Exportação do SQL Server é uma ferramenta que permite copiar dados de uma origem para um destino. Este documento descreve como usar o Assistente de Importação e Exportação do SQL Server se uma origem e/ou um destino for um banco de dados do SQL Server contendo 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 sua fonte de dados contiver dados de texto sem formatação e seu destino for um banco de dados do SQL Server contendo colunas criptografadas, você poderá usar o Assistente de Importação e Exportação do SQL Server para recuperar os dados de texto sem formatação da origem, criptografá-los e copiar os dados criptografados (texto cifrado) para as colunas criptografadas no banco de dados de destino. Para esse cenário de migração, a fonte de dados pode ser qualquer armazenamento de dados suportado pelo Assistente de Importação e Exportação do SQL Server. Por exemplo, um arquivo, um banco de dados SQL Server ou um banco de dados em outro sistema de banco de dados.
Para garantir que o Assistente de Importação e Exportação do SQL Server possa criptografar dados, você precisa habilitar o Always Encrypted para a conexão do banco de dados de destino e precisa ter acesso às chaves que protegem os dados nas colunas do banco 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 você estiver migrando dados armazenados em colunas de banco de dados criptografadas em um banco de dados do SQL Server, poderá configurar o Assistente de Importação e Exportação do SQL Server para descriptografar os dados e copiar os dados descriptografados (texto sem formatação) para um destino, que pode ser qualquer armazenamento de dados suportado pelo Assistente de Importação e Exportação do SQL Server, por exemplo, um arquivo, um banco de dados SQL Server ou um banco de dados em outro sistema de banco de dados.
Para garantir que o Assistente de Importação e Exportação do SQL Server possa descriptografar dados, você precisa habilitar o Always Encrypted para a conexão do banco de dados de origem e precisa ter acesso às chaves que protegem os dados nas colunas do banco 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 você estiver copiando os dados de colunas criptografadas em um banco de dados SQL Server de origem para colunas criptografadas no mesmo ou em outro banco de dados do SQL Server, poderá configurar o Assistente de Importação e Exportação do SQL Server para descriptografar os dados depois de recuperá-los da origem e criptografá-los novamente antes de inseri-los nas colunas criptografadas no banco de dados de destino. Use esse método se o esquema das colunas de destino (por exemplo, tipos de dados de coluna, tipos de criptografia e chaves de criptografia de coluna) for diferente do esquema das colunas de origem.
Para garantir que o Assistente de Importação e Exportação do SQL Server possa criptografar e descriptografar dados, você precisa habilitar o Always Encrypted para a conexão do banco de dados de origem e a conexão do banco de dados de destino, e precisa ter acesso às chaves que protegem os dados nas colunas do banco 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 você estiver copiando os dados de colunas criptografadas em um banco de dados SQL Server de origem para colunas criptografadas no mesmo ou em outro banco de dados do SQL Server, e as colunas de destino usarem exatamente esquema (incluindo os mesmos tipos de dados, tipos de criptografia e chaves de criptografia de coluna) como as colunas de origem, poderá configurar o Assistente de Importação e Exportação do SQL Server para recuperar texto cifrado das colunas de origem e inserir os dados criptografados (texto cifrado) em coluna criptografada no banco de dados SQL Server de destino.
Para esse cenário, você pode usar qualquer provedor de dados que ofereça suporte ao SQL Server para se conectar ao banco de dados SQL Server de origem ou de destino. Se você estiver usando um provedor que ofereça suporte a Always Encrypted para se conectar ao banco de dados de destino, precisará certificar-se de que Always Encrypted está desabilitado para a conexão de banco de dados. Para obter mais informações, consulte Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados.
Você também precisa garantir que o utilizador do banco de dados que o Assistente de Importação e Exportação do SQL Server utiliza para se conectar ao banco de dados de destino esteja configurado com a opção ALLOW_ENCRYPTED_VALUE_MODIFICATIONS definida como ON. Essa opção suprime as verificações de metadados criptográficos no servidor em operações de cópia em massa, o que permite que o assistente insira em massa os dados criptografados no banco de dados de destino sem descriptografar os dados. Para obter mais informações, consulte Carregar Dados Encriptados em Massa em Colunas Protegidas por Sempre Encriptado.
Habilitar e desabilitar o Always Encrypted para uma conexão de banco de dados
Se o cenário de migração exigir que o Assistente de Importação e Exportação do SQL Server possa criptografar e/ou descriptografar dados, você precisará configurar a conexão de banco de dados SQL Server de origem e/ou a conexão de banco de dados SQL Server de destino usando um provedor de dados que ofereça suporte a Always Encrypted. Você também precisa habilitar o Always Encrypted para a conexão do banco de dados de origem e/ou destino.
Você pode usar qualquer provedor de dados para uma conexão se não precisar do assistente para criptografar ou descriptografar 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 fonte ou de destino do SQL Server, precisa das permissões VER QUALQUER DEFINIÇÃO DE CHAVE MESTRE DE COLUNA e VER QUALQUER DEFINIÇÃO DE CHAVE DE ENCRIPTAÇÃO DE COLUNA na base de dados fonte. Você também precisa de permissões de armazenamento de chaves para acessar e usar sua chave mestra de coluna. Para obter informações detalhadas sobre as permissões de armazenamento de chaves necessárias para as operações de gestão de chaves, aceda a Criar e armazenar chaves mestras de coluna para Always Encrypted e encontre uma seção relevante para o seu armazenamento de chaves.
Próximos passos
- colunas de consulta usando Always Encrypted com o SQL Server Management Studio
- Desenvolver aplicações utilizando Always Encrypted