Provisionar chaves sempre criptografadas usando o SQL Server Management Studio
Aplica-se a:SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada SQL do Azure
Este artigo fornece as etapas para provisionar chaves mestras de coluna e chaves de criptografia de coluna para Always Encrypted usando o SQL Server Management Studio (SSMS). Certifique-se de instalar a versão mais recente de disponibilidade geral (GA) do SSMS ao provisionar chaves de criptografia.
Para obter uma visão geral do gerenciamento de chaves Always Encrypted, incluindo recomendações de práticas recomendadas e considerações importantes de segurança, consulte Visão geral do gerenciamento de chaves para Always Encrypted.
Provisionar chaves mestras de coluna com a caixa de diálogo Nova Chave Mestra de Coluna
A caixa de diálogo Nova Chave Mestra de Coluna permite gerar uma chave mestra de coluna ou escolher uma chave existente num armazenamento de chaves e criar metadados de chave mestra de coluna para a chave criada ou selecionada no banco de dados.
Usando Explorador de Objetos, navegue para o nó Segurança -> Chaves Sempre Cifradas no seu banco de dados.
Clique com o botão direito do mouse no nó Chaves Mestras de Coluna e selecione Nova Chave Mestra de Coluna....
Na caixa de diálogo Nova Chave Mestra de Coluna, insira o nome do objeto de metadados da chave mestra da coluna.
Selecione um armazenamento de chaves:
Armazenamento de Certificados - Usuário Atual - indica o local do armazenamento de certificados do Usuário Atual no Repositório de Certificados do Windows, que é a sua loja pessoal.
Repositório de Certificados - Computador Local - indica o local do repositório de certificados do computador local no Repositório de Certificados do Windows.
Azure Key Vault - você precisa iniciar sessão no Azure (clique em Iniciar sessão). Depois de entrar, você poderá selecionar uma de suas assinaturas do Azure e um cofre de chaves ou um HSM gerenciado (requer o SSMS 18.9 ou posterior).
Observação
O uso de chaves mestras de coluna armazenadas num HSM gerido por no Cofre de Chaves do Azure requer o SSMS 18.9 ou uma versão posterior.
Key Store Provider (KSP) - indica um armazenamento de chaves acessível por meio de um provedor de armazenamento de chaves (KSP) que implementa a API CNG (Cryptography Next Generation). Normalmente, este tipo de loja é um módulo de segurança de hardware (HSM). Depois de selecionar esta opção, você precisará escolher um KSP. Microsoft Software Key Store Provider está selecionada por padrão. Se você quiser usar uma chave mestra de coluna armazenada em um HSM, selecione um KSP para seu dispositivo (ele deve ser instalado e configurado no computador antes de abrir a caixa de diálogo).
Cryptographic Service Provider (CSP) - um armazenamento de chaves que é acessível através de um provedor de serviços de criptografia (CSP) que implementa a API de criptografia (CAPI). Normalmente, esse armazenamento é um módulo de segurança de hardware (HSM). Depois de selecionar essa opção, você precisará escolher um CSP. Se você quiser usar uma chave mestra de coluna armazenada em um HSM, selecione um CSP para seu dispositivo (ele deve ser instalado e configurado no computador antes de abrir a caixa de diálogo).
Observação
Como o CAPI é uma API obsoleta, a opção CAPI (Provedor de Serviços de Criptografia) é desabilitada por padrão. Você pode habilitar criando o valor DWORD habilitado para provedor CAPI sob a chave [HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\sql13\Tools\Client\Always Encrypted] no Registro do Windows e definindo-o como 1. Você deve usar CNG em vez de CAPI, a menos que seu armazenamento de chaves não suporte CNG.
Para obter mais informações sobre os repositórios de chaves acima, consulte Criar e armazenar as chaves mestras de coluna paraAlways Encrypted.
Se você estiver usando o SQL Server 2019 (15.x) e sua instância do SQL Server estiver configurada com um enclave seguro, poderá marcar a caixa de seleção Permitir cálculos de enclave para habilitar o enclave de chave mestra. Consulte Always Encrypted com enclaves seguras para obter detalhes.
Observação
A caixa de seleção Permitir cálculos de enclave não aparecerá se sua instância do SQL Server não estiver configurada corretamente com um enclave seguro.
Escolha uma chave existente no seu armazenamento de chaves ou clique no botão Gerar Chave ou Gerar Certificado para criar uma chave no armazenamento de chaves.
Clique OK e a nova chave aparecerá na lista.
Depois de concluir a caixa de diálogo, o SQL Server Management Studio cria metadados para sua chave mestra de coluna no banco de dados. A caixa de diálogo gera e emite a instrução CREATE COLUMN MASTER KEY (Transact-SQL).
Ao configurar uma chave mestra de coluna compatível com enclave, o SSMS também assina os metadados usando essa chave mestra de coluna.
Permissões para provisionar uma chave mestra de coluna
Você precisa da permissão de base de dados ALTER ANY COLUMN MASTER KEY no banco de dados para que a caixa de diálogo crie uma chave mestra de coluna. Você também precisa de permissões de repositório de chaves para acessar e usar a sua chave mestre da coluna de chaves. Para obter informações detalhadas sobre as permissões de armazenamento de chaves necessárias para operações de gestão de chaves, consulte Criar e armazenar chaves-mestras de coluna para Always Encrypted e reveja a seção relevante para o seu armazenamento de chaves.
Provisionar chaves de criptografia de coluna com o diálogo "Nova Chave de Criptografia de Coluna"
A caixa de diálogo Nova Chave de Criptografia de Coluna permite gerar uma chave de criptografia de coluna, criptografá-la com uma chave mestra de coluna e criar os metadados da chave de criptografia de coluna no banco de dados.
- Usando o Explorador de Objetos, navegue até à pasta Security/Always Encrypted Keys no seu banco de dados.
- Clique com o botão direito na pasta Column Encryption Keys e selecione New Column Encryption Key....
- Na caixa de diálogo Nova Chave de Criptografia de Coluna, digite o nome do objeto de metadados da chave de criptografia de coluna.
- Selecione um objeto de metadados que represente sua chave mestra de coluna no banco de dados.
- Clique OK.
Depois de concluir a caixa de diálogo, o SQL Server Management Studio (SSMS) gera uma nova chave de criptografia de coluna. Em seguida, o SSMS recupera os metadados da chave mestra de coluna selecionada do banco de dados. Em seguida, o SSMS usa os metadados da chave mestra de coluna para entrar em contato com o armazenamento de chaves que contém a chave mestra de coluna e criptografar a chave de criptografia de coluna. Finalmente, o SSMS cria os metadados para a nova criptografia de coluna no banco de dados gerando e emitindo uma instrução CREATE COLUMN ENCRYPTION KEY (Transact-SQL).
Observação
O uso de chaves mestras de coluna armazenadas em um HSM gerenciado pelo no Cofre de Chaves do Azure requer o SSMS 18.9 ou uma versão posterior.
Permissões para provisionar uma chave de criptografia de coluna
Você precisa das permissões de banco de dados ALTERAR QUALQUER CHAVE DE CRIPTOGRAFIA DE COLUNA e VER QUALQUER DEFINIÇÃO DE CHAVE MESTRA DE COLUNA no banco de dados, para que a caixa de diálogo crie os metadados da chave de criptografia de coluna e acesse os metadados da chave mestra da coluna. Você também precisa de permissões do repositório de chaves para aceder e usar a sua chave mestra de coluna. Para obter informações detalhadas sobre as permissões do 'key store' necessárias para operações de gestão de chaves, vá para Criar e armazenar chaves mestras de coluna para Always Encrypted e encontre a secção relevante para o seu 'key store'.
Provisionar chaves Always Encrypted usando o Assistente Always Encrypted
O Always Encrypted Wizard é uma ferramenta para criptografar, descriptografar e criptografar novamente colunas de banco de dados selecionadas. Embora possa usar chaves já configuradas, também permite gerar uma nova chave mestra de coluna e uma nova criptografia de coluna.
Próximos passos
- Configurar a criptografia de coluna usando o Assistente Always Encrypted
- Configurar a criptografia de coluna utilizando Always Encrypted com um pacote DAC
- Girar chaves sempre criptografadas usando o SQL Server Management Studio
- Desenvolver aplicações utilizando Always Encrypted
- Migrar dados de ou para colunas usando Always Encrypted with SQL Server Import and Export Wizard
Ver também
- Sempre criptografado
- Visão geral da gestão de chaves para Sempre Criptografado
- Criar e armazenar chaves mestras de coluna para Always Encrypted
- Configurar o Always Encrypted usando o SQL Server Management Studio
- provisionar chaves sempre criptografadas usando o PowerShell
- CRIAR CHAVE MESTRA DE COLUNA (Transact-SQL)
- SOLTAR A CHAVE MESTRA DA COLUNA (Transact-SQL)
- CRIAR CHAVE DE CRIPTOGRAFIA DE COLUNA (Transact-SQL)
- ALTER COLUMN ENCRYPTION KEY (Transact-SQL)
- REMOVER CHAVE DE ENCRIPTAÇÃO DE COLUNA (Transact-SQL)
- sys.column_master_keys (Transact-SQL)
- sys.column_encryption_keys (Transact-SQL)