SQL Server 2008 er en relationel model databaseserver produceret af Microsoft. Det tilbyder funktioner såsom at lade data være selv- tuning, selvorganiserende og selv- opretholdelse . Det giver også nær nul nedetid . Det bruger den nye FILESTREAM datatype , som kan bruges til at opdrage enhver fil gemt i sin database . Kryptering bruger algoritmer til at beskytte data , så kun angivne brugere kan læse den. SQL server 2008, kan bruges til at holde data, der anvendes i transit over netværk eller oplysninger opbevaring sikker. Kryptering kolonner i SQL Server 2008 kræver et par trin for at konfigurere . Instruktioner
1
Åbn en terminal i din SQL -server og indtaste denne kommando : Hej
BRUG AdventureWorks2008R2 ,
GO
p Hvis der ikke er herre nøgle , skal du oprette en nu.
IF NOT EXISTS
( SELECT * FROM sys.symmetric_keys WHERE symmetric_key_id = 101)
CREATE MASTER nøgle kryptering af
PASSWORD = '23987hxJKL969 # ghf0 % 94467GRkjg5k3fd117r $ $ # 1946kcj $ n44nhdlj '
GO
CREATE CERTIFICATE HumanResources037
MED subject = ' Medarbejder Social Security Numbers ' ;
GO
CREATE symmetriske nøgle SSN_Key_01
MED ALGORITMEN = AES_256
ENCRYPTION BY CERTIFIKAT HumanResources037 ,
GO
BRUG [ ,"AdventureWorks2008R2 ]
GO
Opret en kolonne til at gemme de krypterede data
ALTER TABLE HumanResources.Employee
ADD EncryptedNationalIDNumber varbinary ( 128). ;
GO
Åbn den symmetriske nøgle med til at kryptere data
OPEN symmetriske nøgle SSN_Key_01
dekryptering BY CERTIFIKAT HumanResources037 ; .
< p> Krypter værdien i kolonnen NationalIDNumber med symmetrisk
nøgle SSN_Key_01 . Gemme resultatet i kolonne EncryptedNationalIDNumber
UPDATE HumanResources.Employee
SET EncryptedNationalIDNumber = EncryptByKey ( Key_GUID ( SSN_Key_01 ), NationalIDNumber ) .
GO
< p > Kontroller kryptering. Åbn først den symmetriske nøgle med til at dekryptere data
OPEN symmetriske nøgle SSN_Key_01
dekryptering BY CERTIFIKAT HumanResources037 ; .
GO
liste over de oprindelige id, den krypterede id og dekrypteret ciphertext . Hvis dekryptering fungeret, vil det oprindelige og det afkodede ID matche.
SELECT NationalIDNumber , EncryptedNationalIDNumber
AS ' Krypteret ID-nummer ' ,
KONVERTER ( nvarchar , DecryptByKey ( EncryptedNationalIDNumber ) )
AS ' dekrypteret ID-nummer '
FRA HumanResources.Employee ,
GO
2
Tilføj en godkenderen til din kryptering med . denne kommando : Hej
BRUG AdventureWorks2008R2 ,
p Hvis der ikke er nogen hovednøgle , oprette en nu
IF NOT EXISTS
( SELECT * FROM sys. . symmetric_keys WHERE symmetric_key_id = 101)
CREATE MASTER nøgle kryptering af
PASSWORD = '23987hxJKL95QYV4369 # ghf0 % lekjg5k3fd117r $ $ # 1946kcj $ n44ncjhdlj '
GO
< p > CREATE CERTIFICATE Sales09
MED subject = ' Kunde kreditkort Numbers «;
GO
CREATE symmetriske nøgle CreditCards_Key11
MED ALGORITMEN = AES_256
KRYPTERING BY CERTIFIKAT Sales09 ,
GO
Opret en kolonne til at gemme de krypterede data
ALTER TABLE Sales.CreditCard
ADD. CardNumber_Encrypted varbinary (128 ) .
GO
Åbn den symmetriske nøgle med til at kryptere data
OPEN symmetriske nøgle CreditCards_Key11
dekryptering BY CERTIFIKAT Sales09 ;
Krypter værdien i kolonnen cardNumber hjælp af symmetriske nøgle CreditCards_Key11 . Gemme resultatet i kolonne CardNumber_Encrypted .
UPDATE Sales.CreditCard
SET CardNumber_Encrypted = EncryptByKey ( Key_GUID ( CreditCards_Key11 ), cardNumber , 1, HashBytes ( ' SHA1 ", CONVERT ( varbinary , CreditCardID ))) ;
GO
Bekræft kryptering. Åbn først den symmetriske nøgle med til at dekryptere data
OPEN symmetrisk nøgle CreditCards_Key11
dekryptering BY CERTIFIKAT Sales09 ; .
GO
liste over de oprindelige kortnummer, den krypterede kortnummer og dekrypteret ciphertext . Hvis dekryptering fungeret, vil det oprindelige antal matche dekrypterede nummer.
SELECT cardNumber , CardNumber_Encrypted
AS ' Krypteret kortnummer ", CONVERT ( nvarchar ,
DecryptByKey ( CardNumber_Encrypted , 1 ,
HashBytes ( ' SHA1 ", CONVERT ( varbinary , CreditCardID ))))
AS ' dekrypteret kortnummer ' FROM Sales.CreditCard ,
GO < . br >
3
Kontroller, at du har indtastet de korrekte kommandoer og bekræft dine krypterede data ved at forsøge at få adgang til det uden godkendelse.