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
O Always Encrypted com enclaves seguros estende o Always Encrypted para permitir funcionalidades mais ricas das consultas de aplicação em colunas de bases de dados sensíveis encriptadas. Aproveita tecnologias de enclave seguro para permitir que o executor de consultas no Motor de Base de Dados delegue cálculos em colunas encriptadas para um enclave seguro dentro do processo do Motor de Base de Dados.
Pré-requisitos
O seu ambiente precisa de cumprir os seguintes requisitos para suportar o Always Encrypted com enclaves seguros.
- Sua instância do SQL Server ou seu servidor de banco de dados no Banco de Dados SQL do Azure deve ser configurado corretamente para dar suporte a enclaves e atestado, se aplicável/necessário. Para obter mais informações, consulte o tópico Configuração do enclave seguro e o atestado.
- Certifique-se de que a sua candidatura:
Utiliza uma versão do driver cliente que suporta o Always Encrypted com enclaves seguros.
Ativa o modo Sempre Encriptado ao ligar à tua base de dados.
Define um protocolo de atestação que determina se o driver cliente deve atestar o enclave antes de submeter consultas ao enclave e, em caso afirmativo, que serviço de atestação deve utilizar. As versões mais recentes dos drivers suportam os seguintes protocolos de atestado:
- Atestado do Microsoft Azure - impõe o atestado usando o Atestado do Microsoft Azure.
- Serviço Guardião do Anfitrião - aplica a autenticação usando o Serviço Guardião do Anfitrião.
- Nenhum - permite o uso de enclaves sem atestado.
A tabela abaixo especifica protocolos de atestado válidos para determinados produtos SQL e tecnologias de enclave:
Produto Tecnologia de enclave Protocolos de atestado suportados SQL Server 2019 (15.x) e posterior Enclaves VBS Serviço Guardião do Anfitrião, Nenhum Base de Dados SQL do Azure Enclaves SGX nas bases de dados da série DC Atestado do Microsoft Azure Base de Dados SQL do Azure Enclaves VBS Nenhum Define uma URL de atestação que seja válida para o seu ambiente, caso esteja a usar atestação.
- Se estiveres a usar o SQL Server e o Host Guardian Service (HGS), consulta Determinar e partilhar a URL de atestado do HGS.
- Se estiver a utilizar a Base de Dados SQL do Azure com enclaves Intel SGX e Atestado do Microsoft Azure, consulte Determinar a URL de atestado para a sua política de atestado.
Drivers do cliente para Always Encrypted com enclaves seguros
Para desenvolver aplicações usando o Always Encrypted com enclaves seguros, precisa de uma versão do driver cliente SQL que suporte enclaves seguros. O driver cliente desempenha o seguinte papel fundamental:
- Antes de submeter uma consulta que utiliza um enclave seguro para SQL Server ou Azure SQL Database para execução, o driver inicia a atestação do enclave (se estiver configurada) para verificar se o enclave seguro é fiável e pode ser usado em segurança para processar dados sensíveis. Para mais informações sobre atestação, consulte Atestação de Enclave Seguro.
- O motorista cliente estabelece uma sessão segura com o enclave ao negociar um segredo partilhado.
- O driver usa o segredo partilhado para encriptar as chaves de encriptação das colunas que o enclave precisará para processar a consulta, e envia as chaves para o SQL Server, que as encaminha para o enclave seguro que desencripta as chaves.
- Finalmente, o driver submete a consulta para execução, o que desencadeia os cálculos dentro do enclave seguro.
Os seguintes drivers cliente suportam o Always Encrypted com enclaves seguros:
Microsoft .NET Data Provider para SQL Server em .NET Framework 4.6 ou superior e .NET Core 2.1 ou superior. Se quiser usar enclaves VBS sem atestado, é necessária a versão 4.1 ou posterior, que é compatível com .NET Framework 4.6.1 ou superior e .NET Core 3.1.
- Para mais informações, consulte Usar Sempre Encriptado com o Provedor de Dados Microsoft .NET para SQL Server.
- Para um tutorial passo a passo, veja Tutorial: Desenvolver uma aplicação .NET usando Always Encrypted com enclaves seguros.
- Veja também o exemplo que demonstra o uso do fornecedor Azure Key Vault e do Always Encrypted com enclaves seguros.
Driver Microsoft ODBC para SQL Server, versão 17.4 ou superior. Se quiseres usar enclaves VBS sem atestado, é necessária a versão 18.1 ou superior.
- Para mais informações, consulte Usar Sempre Encriptado com o Driver ODBC.
- Para informações sobre como ativar cálculos de enclave para uma ligação a uma base de dados usando ODBC, consulte a secção Ativar Sempre Encriptado com Enclaves Seguros .
Driver Microsoft JDBC para SQL Server, versão 8.2 ou superior. Se quiseres usar enclaves VBS sem atestado, é necessária a versão 12.2 ou superior.
- Para mais informações, veja Usar Sempre Encriptado com enclaves seguros com o driver JDBC
.NET Framework Data Provider para SQL Server em .NET Framework 4.7.2 ou superior.
- Para mais informações, consulte Utilização Sempre Encriptada com o Fornecedor de Dados do Framework .NET para SQL Server.
- Para um tutorial passo a passo, veja Tutorial: Desenvolver uma aplicação .NET Framework usando o Always Encrypted com enclaves seguros
Observação
Não é recomendado usar o .NET Framework Data Provider para SQL Server (System.Data.SqlClient) para novos desenvolvimentos. Para mais informações, consulte System.Data.SqlClient.