servidor SQL Server 2008 é um servidor de banco de dados de modelo relacional produzido pela Microsoft. Ele oferece recursos como permitindo que os dados a ser auto- tuning, auto-organização e auto- manutenção . Ele também oferece o tempo de inatividade de quase zero. Ele usa o novo tipo de dados FILESTREAM, que pode ser usado para abrir qualquer arquivo armazenado em seu banco de dados . A criptografia utiliza algoritmos para proteger os dados para que somente usuários especificados podem lê-lo. SQL Server 2008 pode ser usado para manter os dados utilizados no trânsito através de redes ou de informação em armazenamento seguro . Criptografia colunas no servidor SQL 2008 exige alguns passos para configurar. Instruções
1
Abra um terminal em seu servidor SQL e digite o seguinte comando:
USE AdventureWorks2008R2;
GO
Se não houver um mestre chave, crie um agora.
sE NÃO EXISTE
(SELECT * FROM sys.symmetric_keys ONDE symmetric_key_id = 101 )
criar mestre chave de criptografia
PASSWORD = '23987hxJKL969 # ghf0 % 94467GRkjg5k3fd117r $ $ # $ 1946kcj n44nhdlj 'em
GO
CREATE CERTIFICATE HumanResources037
com o assunto =' O número de colaboradores da Segurança Social ';
GO
CRIAR SIMÉTRICA CHAVE SSN_Key_01
com o algoritmo = AES_256
criptografia CERTIFICADO HumanResources037 ;
GO
Use [ ,"AdventureWorks2008R2 ];
GO
Criar uma coluna na qual deseja armazenar os dados criptografados
ALTER TABLE HumanResources.Employee
ADD EncryptedNationalIDNumber varbinary ( 128) . ;
GO
Abra a chave simétrica com a qual para criptografar os dados
ABERTO sIMÉTRICA cHAVE SSN_Key_01
descriptografia CERTIFICADO HumanResources037 ; .
Criptografar o valor na coluna NationalIDNumber com simétricas
chave SSN_Key_01 . Salve o resultado na coluna EncryptedNationalIDNumber
ATUALIZAÇÃO HumanResources.Employee
SET EncryptedNationalIDNumber = EncryptByKey ( KEY_GUID (' SSN_Key_01 ') , NationalIDNumber ); .
GO
Verifique a criptografia. Primeiro, abra a chave simétrica com a qual para descriptografar os dados
ABERTO SIMÉTRICA CHAVE SSN_Key_01
descriptografia CERTIFICADO HumanResources037 ; .
GO
Agora listar o ID original, a identificação criptografada , eo texto cifrado descriptografado. Se a descriptografia funcionou, o original eo ID descriptografado irá corresponder .
Selecione NationalIDNumber , EncryptedNationalIDNumber
AS ' Número ID criptografada " ,
CONVERT ( nvarchar , DecryptByKey ( EncryptedNationalIDNumber ) )
AS ' Decrypted ID Number ' em
dE HumanResources.Employee ;
GO
2
Adicione um autenticador para sua criptografia com . este comando:
USE AdventureWorks2008R2;
Se não houver nenhuma chave mestra , crie uma agora
SE NÃO eXISTE
(SELECT * FROM sys. . symmetric_keys ONDE symmetric_key_id = 101 )
Criar mestre chave de criptografia
SENHA
= '23987hxJKL95QYV4369 # ghf0 % lekjg5k3fd117r $ $ # $ 1946kcj n44ncjhdlj 'em
GO
CREATE CERTIFICATE sales09
com o assunto = ' Números de cartão de crédito do cliente ";
GO
CRIAR chave simétrica CreditCards_Key11
com o algoritmo = AES_256
criptografia CERTIFICADO sales09 ; .
GO
Criar uma coluna na qual deseja armazenar os dados criptografados
ALTER TABLE Sales.CreditCard
ADD varbinary CardNumber_Encrypted (128) ; .
GO
Abra a chave simétrica com a qual para criptografar os dados
ABERTO sIMÉTRICA cHAVE CreditCards_Key11
descriptografia CERTIFICADO sales09 ;
Criptografar o valor na coluna CardNumber usando o CreditCards_Key11 chave simétrica. Salve o resultado na coluna CardNumber_Encrypted .
ATUALIZAÇÃO Sales.CreditCard
SET CardNumber_Encrypted = EncryptByKey ( KEY_GUID (' CreditCards_Key11 ') , CardNumber , 1, HashBytes ( " SHA1 " , CONVERT ( varbinary , CreditCardID )));
GO
Verifique a criptografia. Primeiro, abra a chave simétrica com a qual para descriptografar os dados
ABERTO SIMÉTRICA CHAVE CreditCards_Key11
descriptografia CERTIFICADO sales09 ; .
GO
Agora listar o número original do cartão, o número do cartão codificado , eo texto cifrado descriptografado. Se a descriptografia funcionou, o número original irá corresponder ao número descriptografado.
Selecione CardNumber , CardNumber_Encrypted
AS ' número do cartão criptografada ' , CONVERT ( nvarchar ,
DecryptByKey ( CardNumber_Encrypted , 1,
HashBytes (' SHA1 ' , CONVERT ( varbinary , CreditCardID ))))
AS ' número do cartão Decrypted ' FROM Sales.CreditCard ;
GO < . br>
3
Verifique se você digitou os comandos corretos e confirme seus dados criptografados ao tentar acessá-lo sem autenticação.