Always Encrypted SQL Server 2016

La característica siempre cifrado de Microsoft SQL Server 2016 permite a los usuarios encriptar los datos sensibles dentro de sus aplicaciones y nunca revelar las claves de cifrado a SQL Server. Un manejador siempre habilitado para cifrado instalado en el ordenador del usuario logra esto mediante el cifrado y descifrado de datos sensibles en la aplicación cliente de SQL Server de forma automática. El manejador encripta los datos de las columnas sensibles antes de pasar los datos a SQL Server y luego vuelve a escribir automáticamente las consultas de manera que la semántica a la aplicación se conservan. Del mismo modo, el driver transparente descifra los datos almacenados en columnas de base de datos cifrados que están contenidos en los resultados de la consulta.
SiempreEncriptadoLuego de creada la Master Key y la Column Encryption Key que se explica en el vídeo se procede a crear la tabla indicando las columnas que vamos a encriptar, existen dos tipos de encriptación la Deterministic y la Randomized, en el script de abajo creamos una tabla con los tipos de encriptación como ejemplo.
Create table Patients
(PatienId int identity(1,1),
SSN nvarchar(11) Collate Latin1_General_Bin2 Encrypted with (Encryption_type=Deterministic
, Algorithm=’AEAD_AES_256_CBC_HMAC_SHA_256′, Column_encryption_key=CEK1) not null,
FirstName nvarchar (50) null,
LastName nvarchar (50) null,
MiddleName nvarchar (50) null,
StretAddress nvarchar (50) null,
City nvarchar (50) null,
ZipCode nvarchar (50) null,
[State] nvarchar (50) null,
BirthDate datetime2 Encrypted with (Encryption_type=Randomized
, Algorithm=’AEAD_AES_256_CBC_HMAC_SHA_256′, Column_encryption_key=CEK1) not null
Primary key Clustered (PatienId asc) on [primary]
)
go

Leave a Reply

Your email address will not be published. Required fields are marked *