Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a: SQL Server 2019 (15.x) e versões posteriores no Windows
Azure SQL Database
Este artigo descreve como desbloquear a funcionalidade do Always Encrypted com enclaves seguros e permitir cálculos de enclaves para colunas encriptadas existentes.
Se tiveres colunas já encriptadas com chaves que não são habilitadas para enclave, podes tornar as colunas encriptadas com chaves habilitadas para enclave. Ao fazê-lo, poderá usar o secure enclave nas consultas nas suas colunas.
Pode ativar cálculos de enclave para colunas encriptadas existentes de várias formas, dependendo de:
- Âmbito/granularidade: Queres ativar a funcionalidade de enclave para um subconjunto de colunas, ou para todas as colunas protegidas com uma dada chave mestra de coluna?
- Tamanho dos dados: Qual é o tamanho das tabelas que contêm a(s) coluna(s) que pretende tornar com enclave habilitado?
- Também queres mudar o tipo de encriptação para a(s) tua(s) coluna(s)? Lembre-se que apenas a encriptação aleatória suporta cálculos ricos (correspondência de padrões, operadores de comparação). Se a sua coluna estiver encriptada usando encriptação determinística, também terá de a reencriptar com encriptação aleatória para desbloquear operações complexas.
As secções seguintes descrevem as três abordagens para permitir enclaves para colunas existentes.
Método 1: Rodar a chave mestra da coluna para a substituir por uma chave mestra de coluna habilitada pelo enclave
Substituir uma chave mestra de coluna existente (que não é habilitada para enclave) por uma nova chave mestra de coluna que seja habilitada para enclave torna, na prática, todas as chaves de encriptação de coluna (associadas à chave mestra da coluna) também habilitadas para enclave.
Prós:
- Não envolve reencriptar dados, por isso normalmente é a abordagem mais rápida. É uma abordagem recomendada para colunas contendo grandes quantidades de dados, que já estão ativadas para cálculos ricos, e que utilizam encriptação determinística.
- Pode ativar a funcionalidade de enclave para várias colunas em grande escala. Substituir a chave mestra da coluna pela chave mestra da coluna habilitada pelo enclave torna todas as chaves de encriptação das colunas e todas as colunas encriptadas associadas à chave mestra original da coluna habilitadas para o enclave.
Contras:
- Não suporta mudar o tipo de encriptação de determinístico para aleatório. Embora permita a desencriptação local para colunas encriptadas usando encriptação determinística, não habilita cálculos avançados. Terás de voltar a encriptar as colunas usando encriptação aleatória.
- Não permite converter seletivamente algumas das colunas associadas a uma determinada chave mestra de coluna.
- Introduz a sobrecarga de gestão de chaves. Terá de criar uma nova chave mestra de coluna e torná-la disponível para aplicações que consultem as colunas afetadas.
Para informações sobre como rodar uma chave mestra de coluna, veja Rotar chaves habilitadas por enclave.
Método 2: Rodar a chave mestra da coluna e voltar a encriptar as colunas usando encriptação aleatória no local
Este método envolve executar o Método 1 como primeiro passo e depois voltar a encriptar as colunas. As colunas começam por usar encriptação determinística e depois são reencriptadas com encriptação aleatória para desbloquear consultas ricas.
Prós:
- Encripta novamente os dados no local. É um método recomendado se precisares de ativar consultas ricas para colunas encriptadas que atualmente usam encriptação determinística e contêm grandes quantidades de dados. O passo 1 (a rotação da chave mestra da coluna) desbloqueia a encriptação no local para colunas usando encriptação determinística, e o passo 2 (reencriptação das colunas) pode ser realizado no local.
- Pode ativar a funcionalidade do enclave para múltiplas colunas de forma escalável.
Contras:
- Não permite converter seletivamente algumas das colunas associadas a uma determinada chave mestra de coluna.
- Introduz uma sobrecarga no gerenciamento de chaves. Terá de criar uma nova chave mestra de coluna e torná-la disponível para aplicações que consultem as colunas afetadas.
Para informações sobre como rodar uma chave mestra de coluna e voltar a encriptar uma coluna no próprio local para rodar uma chave de encriptação de coluna, consulte Rodar chaves habilitadas para enclave.
Método 3: Reencriptar uma coluna selecionada com uma chave de encriptação de coluna habilitada pelo enclave no lado do cliente
Este método envolve a re-encriptação de uma coluna com uma chave de encriptação de coluna ativada por enclave, permitindo consultas ricas através de encriptação aleatória. Como a chave de encriptação da coluna atual não está habilitada para enclave, não pode voltar a encriptar a coluna no local. Use o assistente Always Encrypted ou o cmdlet Set-SqlColumnEncryption para voltar a encriptar a coluna da base de dados.
Prós:
- Permite ativar seletivamente a funcionalidade de enclave (encriptação no local e consultas ricas, se estiveres a reencriptar a coluna com encriptação aleatória) para uma coluna ou um pequeno subconjunto de colunas.
- Pode permitir cálculos ricos para colunas numa só etapa.
Contras:
- Para voltar a encriptar os dados, a ferramenta move-os para fora da base de dados, o que pode demorar muito tempo e é propenso a erros de rede.
- Introduz sobrecarga de gestão de chaves. Terá de criar uma nova chave mestra de coluna e torná-la disponível para aplicações que consultem as colunas afetadas.
Para mais informações sobre como rodar as chaves de encriptação de colunas através de uma ferramenta do lado do cliente, consulte Rodar as chaves Always Encrypted usando o SQL Server Management Studio e Rodar as chaves Always Encrypted utilizando o PowerShell.