SlideShare una empresa de Scribd logo
1 de 10
Factory Soft Venezuela C.A.
Manual de Encriptación Transparente
de Bases de Datos (DTE) SQL Server
para eFactory
Versión 1.0
25/febrero/2015
Factory Soft Venezuela C.A. 2
http://www.factorysoft.com.ve
Historial de Cambios
Versión Fecha Observaciones Responsable
V1.0 25/02/2015 Creación del Manual RJG
Factory Soft Venezuela C.A. 3
http://www.factorysoft.com.ve
Contenido
Historial de Cambios......................................................................................................................2
Información General......................................................................................................................4
Proceso de Encriptación.................................................................................................................5
Crear una Clave Maestra de Encriptación.....................................................................................5
Crear un Certificado protegido por la Clave Maestra de Encriptación ............................................6
Crear una Clave de Encriptación de Base de Datos .......................................................................6
Activarla encriptación en la Base de Datos..................................................................................7
Proceso para Restaurar un Backup Encriptado.................................................................................8
Scripts Anexos ...............................................................................................................................9
Scripts para Encriptar la Base de Datos........................................................................................9
Scripts para restaurar la Clave Maestra del Servidor y un Certificado...........................................10
Factory Soft Venezuela C.A. 4
http://www.factorysoft.com.ve
Información General
Este manual describe el proceso para la Encriptación Transparente de Bases de Datos (TDE) en SQL
Server 2012 o posterior, para ser usada en bases de datos eFactory.
Este procesoaporta una capa de seguridadque protege losarchivosde base de datos y backups para
que estosseandifícileso imposibles de descifrar en caso de que un tercero tenga acceso a ellos, ya
sea al acceder físicamente o por red al servidor, o interceptando los archivos al ser transportados o
transferidos de manera electrónica o física fuera del servidor.
El acceso desde eFactory a una base de datos encriptada es “transparente”, es decir, el sistema
eFactoryno requiere de algúncambiode configuraciónpara acceder a una base de datos encriptada
con TDE. Sinembargo,el procesode creación de copias de seguridad tendrá un cambio importante,
ya que ahora también debe crearse copias de seguridad de las claves y certificados usados para
encriptarlabase de datos, y en caso de necesitar mudar la base de datos encriptada a otro servidor
es necesario restaurar primero las claves y certificados.
Como resultado del proceso de encriptación es necesario conservar un backup de dos archivos
adicionales al propio backup de la base de datos: el certificado y la clave privada del certificado.
Adicionalmente se debe resguardar al menos dos contraseñas: la primera es la contraseña maestra
de la clave de encriptación maestra (las bases de datos de eFactory no la utilizarán directamente,
pero deben guardarse en caso de que a futuro se utilicen), la segunda es una o más contraseñas
usadas para generar los backups de cada certificado.
El backup de la base de datos debe respaldarse físicamente fuera del servidor de base de datos,
como bien se sabe. Adicionalmente los backups de los certificados deben almacenarse en una
locación diferente, ya que con ellos se puede tener acceso a las bases de datos encriptadas.
Finalmente las contraseñas deben guardarse en una tercera locación física.
Así, para que un tercero no autorizado pueda acceder a una copia de seguridad de los datos
encriptados tendría que obtener acceso a los archivos en las tres locaciones seguras descritas
anteriormente.
Factory Soft Venezuela C.A. 5
http://www.factorysoft.com.ve
Proceso de Encriptación
El proceso consiste en 4 pasos:
 Crear una Clave Maestra de Encriptación (y opcionalmente un backup de la misma)
 Crear un Certificado protegido por la Clave Maestra de Encriptación, y guardar un backup.
 Crear una Clave de Encriptación en la base de datos a encriptar, usando el Certificado.
 Activar la encriptación en la Base de Datos.
Los primeros dos pasos se deben ejecutar una vez en cada instancia de SQL Server. Los dos últimos
pasos se deben ejecutar una vez en cada base de datos a encriptar.
A continuación se describen a los pasos a seguir para encriptar una base de datos SQL Server con
TDE. Más adelante en este manual se encuentran los scripts que engloban el proceso completo de
encriptación.
IMPORTANTE: Como en toda operación de riesgo o que pueda afectar a toda la base de datos es
necesarioprimerodetenerlos servicios y sistemas conectados a la base de datos, y adicionalmente
hacer un último backup sin encriptar antes de proceder con la encriptación.
Crear una Clave Maestra de Encriptación
En cada instancia de SQL Server solo puede haber una Clave Maestra de Encriptación. La siguiente
instrucción se usa para crearla y agregarle una contraseña:
USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>';
Si ya hay una Clave Maestra de Encriptación previamente creada, entonces la instrucción anterior
mostrará unerror. En ese caso la clave ha sido creada previamente, pero no sabemos si se creó con
nuestracontraseñao si nuestracontraseñafue agregada a la clave maestra. La siguiente instrucción
intenta agregar nuestra contraseña a la Clave Maestra de Encriptación:
USE master;
ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>';
Si esta instrucción muestra un mensaje de error es porque nuestra contraseña ya había sido
previamente agregada a la Clave Maestra de Encriptación.
Ya sea que se haya creado una clave maestra, o que se haya modificado para agregar una nueva
contraseñaes importante hacerunbackup inmediatamente:enprincipio,el esquema de protección
de bases de datos de eFactory utiliza Certificados, por lo que no es necesario un backup de la clave
maestra (es suficiente con crear una nueva si es necesario), sin embargo si en un futuro se utilizan
clavesasimétricasparaencriptarlabase de datos,la única forma de acceder a ellos es por medio de
la clave maestra original (no se puede hacer con una nueva). Para hacer un backup de la Clave
Maestra de Encriptación se usa el siguiente comando:
USE master;
BACKUP MASTER KEY TO FILE = 'C:Sql_2012BackupsClaveMaestraServidor.backup'
ENCRYPTION BY PASSWORD = '<CONTRASENA PARA EL BACKUP>';
Factory Soft Venezuela C.A. 6
http://www.factorysoft.com.ve
Nótese que el backup requiere una contraseña para proteger el archivo generado (se utilizará para
restaurar el backup de la Clave Maestra de Encriptación); pero esta contraseña es diferente de la
propia contraseña de la calve maestra. Ambas contraseñas deben guardarse en un lugar seguro y
separado de los backups.
Una vez que verifiquemos que ya hay una Clave Maestra de Encriptación y que nuestra contraseña
haya sido agregada a la misma continuamos con el Certificado.
Crear un Certificado protegido por la Clave Maestra de Encriptación
En cada instancia de SQL Server puede haber más de un Certificado, pero los nombres de los
certificados deben ser únicos. En las bases de datos de nuestros clientes se creará un certificado
agregando el código del cliente global al nombre, utilizando el siguiente comando SQL:
USE master;
CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000
WITH SUBJECT = 'Certificado de eFactory para CVEVAL0000',
EXPIRY_DATE = '20991231';
El nombre debe ser único para que posteriormente pueda importarse más de una base de datos al
mismo servidor con sus respectivos certificados sin que haya colisiones. En principio la fecha de
expiración no es necesaria ni utilizada por SQL Server cuando el certificado es usado para
encriptación,sinembargoestopuedecambiar en el futuro por lo que se establece una fecha lejana
como precaución.
Antes de poder usar el certificado es necesario hacer un backup del mismo, usando el siguiente
comando:
USE master;
BACKUP CERTIFICATE Certificado_Efactory_CVEVAL0000
TO FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer'
WITH PRIVATE KEY
( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk',
ENCRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>');
Este comando creará dos archivos: el primero es el certificado en sí, el cual es protegido por una
Clave Privada. El segundo archivo contiene la clave privada que a si vez está encriptada usando la
contraseña indicada al hacer el backup. Así, los dos archivos generados y la contraseña utilizada
deben guardarse en un lugar seguro; al igual que con la Clave Maestra de Encriptación, esta
contraseña debe guardarse en un lugar diferente a los archivos del certificado.
Crear una Clave de Encriptación de Base de Datos
En cada base de datosde eFactory(tantoFactory_Global comoenla base de datos de cada empresa)
se debe crear una Clave de Encriptación que use el certificado creado en el paso anterior. Esto se
hace mediante el siguiente comando:
USE Factory_Administrativo_XXXXXX;
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = TRIPLE_DES_3KEY
ENCRYPTION BY SERVER CERTIFICATE Certificado_Efactory_CVEVAL0000;
Factory Soft Venezuela C.A. 7
http://www.factorysoft.com.ve
La clave de encriptación se almacena dentro de cada base de datos, y es posible crear varias claves
(una para cada base de datos) usando el mismo certificado.
Activar la encriptación en la Base de Datos
En este pasoserá cuando realmente se encripte el contenido de la base de datos. Se ejecuta con el
siguiente comando y puede tardar varios minutos u horas en completarse:
ALTER DATABASE Factory_Administrativo_XXXXXX SET ENCRYPTION ON;
Cualquier backup realizado después de activar la encriptación de la base de datos será generado
encriptado.El procesode creación del backup de la base de datos se seguirá ejecutando del mismo
modoque con una base de datos no encriptada,yaseapor mediode lainterfazde SSMS o por medio
de comandos.
Factory Soft Venezuela C.A. 8
http://www.factorysoft.com.ve
Proceso para Restaurar un Backup Encriptado
1. Verifique que tiene disponible los siguientes elementos para restaurar el backup:
a. El backup de la base de datos (archivo de extensión .bak)
b. El backup del certificado asociado a la base de datos (será necesario si no está ya
creado en el servidor). Es un archivo de extensión .cer, con el mismo nombre del
certificado.
c. La clave privada del certificado. Es un archivo de extensión .pvk, con el mismo
nombre del certificado.
d. La contraseñadel backupdel certificado.Estafue utilizadaal momentode realizar el
backup del certificado.
2. Verificarque enlainstanciade SQL Serveresté creado el Certificado asociado al backup que
se desea restaurar. El certificado es visible desde SSMS, en el explorador de objetos (ver
imagen).
3. Si el certificado no está creado entonces debe ser restaurado desde el backup
correspondiente mediante el siguiente comando:
USE master;
CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000
FROM FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer'
WITH PRIVATE KEY
( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk',
DECRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>');
4. Si el paso anterior falla puede ser necesario crear una Clave Maestra de Encriptación, como
se explicaenlapágina5. Luegode crear la clave maestra puede intentar de nuevo restaurar
el certificado.
5. Una vez que el certificado está creado se restaura la base de datos del mismo modo que se
hace con bases de datos no encriptadas.
Factory Soft Venezuela C.A. 9
http://www.factorysoft.com.ve
Scripts Anexos
Para usar estos scripts se debe sustituir la ruta de los backups (“C:Sql_2012Backups”) por la ruta
correspondiente al servidor real.
Tambiéndebensustituirselascontraseñas“<CONTRASENA MAESTRA FSV>” y “<CONTRASENA PARA
EL BACKUP>” por las contraseñas reales a utilizar.
El nombre del certificado (“Certificado_Efactory_CVEVAL0000”) y de la base de datos
(“Factory_Administrativo_XXXXX”) debensustituirse por los valores reales usando las convenciones
de códigos de cliente y nombres de bases de datos de eFactory.
Scripts para Encriptar la Base de Datos
USE master;
GO
/*-----------------------------------------------------*/
/* Clave Maestra de la instancia. */
/*-----------------------------------------------------*/
IF(NOT EXISTS(SELECT * FROM sys.symmetric_keys WHERE name =
'##MS_DatabaseMasterKey##'))
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>';
ELSE
ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>';
BACKUP MASTER KEY TO FILE = 'C:Sql_2012BackupsClaveMaestraServidor.backup'
ENCRYPTION BY PASSWORD = '<CONTRASENA PARA EL BACKUP>';
GO
/*-------------------------------------------------------*/
/* Certificado del cliente (uno por cada cliente global).*/
/*-------------------------------------------------------*/
IF (NOT EXISTS(SELECT * FROM sys.certificates WHERE name =
'Certificado_Efactory_CVEVAL0000'))
CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000
WITH SUBJECT = 'Certificado de eFactory para CVEVAL0000',
EXPIRY_DATE = '20991231';
BACKUP CERTIFICATE Certificado_Efactory_CVEVAL0000
TO FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer'
WITH PRIVATE KEY
( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk',
ENCRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>');
GO
/*-------------------------------------------------------------------------*/
/* Clave de encriptación de la base de datos (uno por cada Base de datos). */
/*-------------------------------------------------------------------------*/
USE Factory_Administrativo_XXXXX;
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = TRIPLE_DES_3KEY
ENCRYPTION BY SERVER CERTIFICATE Certificado_Efactory_CVEVAL0000;
GO
/*----------------------------------------------------------------------------*/
/* Activación de la encriptación de la base de datos (en cada Base de datos). */
/*----------------------------------------------------------------------------*/
ALTER DATABASE Factory_Administrativo_XXXXX SET ENCRYPTION ON;
GO
Factory Soft Venezuela C.A. 10
http://www.factorysoft.com.ve
Scripts para restaurar la Clave Maestra del Servidor y un
Certificado
USE master;
/*--------------------------------------------------------------------------------*/
-- Para restaurar: la clave maestra del servidor SQL SERVER (de toda la instancia)*/
/*--------------------------------------------------------------------------------*/
RESTORE MASTER KEY FROM FILE = 'C:Sql_2012BackupsMS_DatabaseMasterKey.backup'
DECRYPTION BY PASSWORD = '<CONTRASENA PARA EL BACKUP>' -- CONTRASENA PARA EL
BACKUP
ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>'; -- CONTRASENA MAESTRA FSV
/*--------------------------------------------------------------------------------*/
-- Para restaurar: del certificado de la base de datos (para cada certificado) */
/*--------------------------------------------------------------------------------*/
CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000
FROM FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer'
WITH PRIVATE KEY
( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk',
DECRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>');

Más contenido relacionado

La actualidad más candente

Mysql Seguridad Replicacion
Mysql Seguridad ReplicacionMysql Seguridad Replicacion
Mysql Seguridad Replicacion
christian nieto
 
Manual de errores de instalación
Manual de errores de instalaciónManual de errores de instalación
Manual de errores de instalación
Tania Catemaxca
 
Manual de errores de instalación
Manual de errores de instalaciónManual de errores de instalación
Manual de errores de instalación
Tania Catemaxca
 
Unidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde javaUnidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde java
devsco63
 

La actualidad más candente (20)

Acceso a una base de datos mediante un servidor (Conexión a oracle y mysql)
Acceso a una base de datos mediante un servidor (Conexión a oracle y mysql)Acceso a una base de datos mediante un servidor (Conexión a oracle y mysql)
Acceso a una base de datos mediante un servidor (Conexión a oracle y mysql)
 
Mysql Seguridad Replicacion
Mysql Seguridad ReplicacionMysql Seguridad Replicacion
Mysql Seguridad Replicacion
 
HOWTO - Upgrade de la Infraestuctura Grid de Oracle11gR2 a Oracle12cR2
HOWTO - Upgrade de la Infraestuctura Grid de Oracle11gR2 a Oracle12cR2HOWTO - Upgrade de la Infraestuctura Grid de Oracle11gR2 a Oracle12cR2
HOWTO - Upgrade de la Infraestuctura Grid de Oracle11gR2 a Oracle12cR2
 
Sistemas multi usu red_alfonso_contreras_final
Sistemas multi usu red_alfonso_contreras_finalSistemas multi usu red_alfonso_contreras_final
Sistemas multi usu red_alfonso_contreras_final
 
Universidad tecnica de babhoyo
Universidad tecnica de babhoyoUniversidad tecnica de babhoyo
Universidad tecnica de babhoyo
 
Manual de errores de instalación
Manual de errores de instalaciónManual de errores de instalación
Manual de errores de instalación
 
Instalar oracle database 11g r2
Instalar oracle database 11g r2Instalar oracle database 11g r2
Instalar oracle database 11g r2
 
Workshop Técnicas Replicacion I
Workshop Técnicas Replicacion IWorkshop Técnicas Replicacion I
Workshop Técnicas Replicacion I
 
Instalación de Oracle Database Express Edition 11G Release 2
Instalación de Oracle Database Express Edition 11G Release 2Instalación de Oracle Database Express Edition 11G Release 2
Instalación de Oracle Database Express Edition 11G Release 2
 
Script de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure EnclavesScript de paso a paso de configuración de Secure Enclaves
Script de paso a paso de configuración de Secure Enclaves
 
Manual Técnico Para Hacer Réplica
Manual Técnico Para Hacer RéplicaManual Técnico Para Hacer Réplica
Manual Técnico Para Hacer Réplica
 
Manual de errores de instalación
Manual de errores de instalaciónManual de errores de instalación
Manual de errores de instalación
 
Elastix lab ect-book-esp
Elastix  lab ect-book-espElastix  lab ect-book-esp
Elastix lab ect-book-esp
 
Unidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde javaUnidad 9. acceso a base de datos desde java
Unidad 9. acceso a base de datos desde java
 
INTRODUCCIÓN A ORACLE SQL
INTRODUCCIÓN A ORACLE SQLINTRODUCCIÓN A ORACLE SQL
INTRODUCCIÓN A ORACLE SQL
 
Link guias java y sqlite
Link guias java y sqliteLink guias java y sqlite
Link guias java y sqlite
 
Tema 7 Trabajando Con Mysql
Tema 7 Trabajando Con MysqlTema 7 Trabajando Con Mysql
Tema 7 Trabajando Con Mysql
 
Practica de replicacion maestro esclavo en mysql
Practica de replicacion maestro esclavo en mysqlPractica de replicacion maestro esclavo en mysql
Practica de replicacion maestro esclavo en mysql
 
Manual de instalacion
Manual de instalacionManual de instalacion
Manual de instalacion
 
Dprn3 u3 a1_jocc
Dprn3 u3 a1_joccDprn3 u3 a1_jocc
Dprn3 u3 a1_jocc
 

Destacado

Que impuestos tengo que pagar
Que impuestos tengo que pagarQue impuestos tengo que pagar
Que impuestos tengo que pagar
raulescolesnuria
 
Présentation arrow camaris
Présentation arrow camarisPrésentation arrow camaris
Présentation arrow camaris
Arrow Institute
 

Destacado (11)

Gra o tron aluminiowe Instagram zdjęcia
Gra o tron aluminiowe Instagram zdjęciaGra o tron aluminiowe Instagram zdjęcia
Gra o tron aluminiowe Instagram zdjęcia
 
CBWN Spring 2015 Intro and Survey Results
CBWN Spring 2015 Intro and Survey ResultsCBWN Spring 2015 Intro and Survey Results
CBWN Spring 2015 Intro and Survey Results
 
Etapa Productiva
Etapa Productiva Etapa Productiva
Etapa Productiva
 
Que impuestos tengo que pagar
Que impuestos tengo que pagarQue impuestos tengo que pagar
Que impuestos tengo que pagar
 
Variables que determinan la diversidad en el aula
Variables que determinan la diversidad en el aulaVariables que determinan la diversidad en el aula
Variables que determinan la diversidad en el aula
 
Presentacion Trabajamos con imágenes interactivas. Thinglink en la enseñanza ...
Presentacion Trabajamos con imágenes interactivas. Thinglink en la enseñanza ...Presentacion Trabajamos con imágenes interactivas. Thinglink en la enseñanza ...
Presentacion Trabajamos con imágenes interactivas. Thinglink en la enseñanza ...
 
Présentation arrow camaris
Présentation arrow camarisPrésentation arrow camaris
Présentation arrow camaris
 
Fight Or Flight - Your Fighting Choice
Fight Or Flight - Your Fighting ChoiceFight Or Flight - Your Fighting Choice
Fight Or Flight - Your Fighting Choice
 
Class Evaluation
Class EvaluationClass Evaluation
Class Evaluation
 
CV Sigve Hamilton Aspelund 062013
CV Sigve Hamilton Aspelund 062013CV Sigve Hamilton Aspelund 062013
CV Sigve Hamilton Aspelund 062013
 
Cinema nens juny 2013
Cinema nens juny 2013Cinema nens juny 2013
Cinema nens juny 2013
 

Similar a Manual de Encriptacion de Base de Datos para eFactory ERP/CRM (v1.0)

Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado ssl
garciadebora
 
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
camilaml
 
Gestión de instancias en amazon ec2 desde consola
Gestión de instancias en amazon ec2 desde consolaGestión de instancias en amazon ec2 desde consola
Gestión de instancias en amazon ec2 desde consola
Pablo Aragón
 

Similar a Manual de Encriptacion de Base de Datos para eFactory ERP/CRM (v1.0) (20)

Seg t2 practicas_certificado ssl
Seg t2 practicas_certificado sslSeg t2 practicas_certificado ssl
Seg t2 practicas_certificado ssl
 
Configuracion https owcloud
Configuracion https owcloudConfiguracion https owcloud
Configuracion https owcloud
 
Copia de seguridad y restaurar
Copia de seguridad y restaurarCopia de seguridad y restaurar
Copia de seguridad y restaurar
 
Cluster en sql server
Cluster en sql serverCluster en sql server
Cluster en sql server
 
Autentificacion sql antonio_hermoso
Autentificacion sql antonio_hermosoAutentificacion sql antonio_hermoso
Autentificacion sql antonio_hermoso
 
Protegiendo los secretos de tus aplicaciones con Azure Key Vault
Protegiendo los secretos de tus aplicaciones con Azure Key VaultProtegiendo los secretos de tus aplicaciones con Azure Key Vault
Protegiendo los secretos de tus aplicaciones con Azure Key Vault
 
Instalacion certificados-ssl
Instalacion certificados-sslInstalacion certificados-ssl
Instalacion certificados-ssl
 
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
 
Openvp non redhat
Openvp non redhatOpenvp non redhat
Openvp non redhat
 
Openvp non redhat
Openvp non redhatOpenvp non redhat
Openvp non redhat
 
Gestión de instancias en amazon ec2 desde consola
Gestión de instancias en amazon ec2 desde consolaGestión de instancias en amazon ec2 desde consola
Gestión de instancias en amazon ec2 desde consola
 
Colombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptxColombia Bootcamp Azure Key Vault.pptx
Colombia Bootcamp Azure Key Vault.pptx
 
Lab 3 cifrado criptografia
Lab 3   cifrado criptografiaLab 3   cifrado criptografia
Lab 3 cifrado criptografia
 
Creación de certificados digitales con openssl CA local
Creación de certificados digitales con openssl CA localCreación de certificados digitales con openssl CA local
Creación de certificados digitales con openssl CA local
 
Replicación de Bases de Datos con SQL Server 2008
Replicación de Bases de Datos con SQL Server 2008Replicación de Bases de Datos con SQL Server 2008
Replicación de Bases de Datos con SQL Server 2008
 
Manual instalacion sql_server
Manual instalacion sql_serverManual instalacion sql_server
Manual instalacion sql_server
 
Instalación de Sql Server 2019 On-Premises.
Instalación de Sql Server 2019 On-Premises.Instalación de Sql Server 2019 On-Premises.
Instalación de Sql Server 2019 On-Premises.
 
Cómo explotar EternalBlue en Windows Server 2012 R2
Cómo explotar EternalBlue en Windows Server 2012 R2Cómo explotar EternalBlue en Windows Server 2012 R2
Cómo explotar EternalBlue en Windows Server 2012 R2
 
Framework Catalyst
Framework CatalystFramework Catalyst
Framework Catalyst
 
Connection String Parameter Pollution
Connection String Parameter PollutionConnection String Parameter Pollution
Connection String Parameter Pollution
 

Más de Factory Soft - Software ERP para la Nube Latinoamericano

Ejemplo de Total Retenciones por Clientes en eFactory ERP
Ejemplo de Total Retenciones por Clientes en eFactory ERPEjemplo de Total Retenciones por Clientes en eFactory ERP
Ejemplo de Total Retenciones por Clientes en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Total Facturas por Clientes Mensualmente en eFactory ERP
Ejemplo de Total Facturas por Clientes Mensualmente en eFactory ERPEjemplo de Total Facturas por Clientes Mensualmente en eFactory ERP
Ejemplo de Total Facturas por Clientes Mensualmente en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERP
Ejemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERPEjemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERP
Ejemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERP
Ejemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERPEjemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERP
Ejemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...
Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...
Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Listado de Conceptos de Retenciones en eFactory ERP
Ejemplo de Listado de Conceptos de Retenciones en eFactory ERPEjemplo de Listado de Conceptos de Retenciones en eFactory ERP
Ejemplo de Listado de Conceptos de Retenciones en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados II
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados IIEjemplo de Listado de Movimientos de Cuentas Bancarias Conciliados II
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados II
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...
Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...
Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERP
Ejemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERPEjemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERP
Ejemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...
Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...
Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...
Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...
Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Listado de Reportes del Modulo de Tesorería de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Tesorería de eFactory Software ERP en la NubeListado de Reportes del Modulo de Tesorería de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Tesorería de eFactory Software ERP en la Nube
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Listado de Reportes del Modulo de Nomina de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Nomina de eFactory Software ERP en la NubeListado de Reportes del Modulo de Nomina de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Nomina de eFactory Software ERP en la Nube
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERP
Ejemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERPEjemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERP
Ejemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...
Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...
Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...
Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...
Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...
Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...
Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...
Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...
Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...
Factory Soft - Software ERP para la Nube Latinoamericano
 
Ejemplo de Reporte de Artículos con Códigos Qrs en eFactory ERP
Ejemplo de Reporte de Artículos con Códigos Qrs en eFactory ERPEjemplo de Reporte de Artículos con Códigos Qrs en eFactory ERP
Ejemplo de Reporte de Artículos con Códigos Qrs en eFactory ERP
Factory Soft - Software ERP para la Nube Latinoamericano
 

Más de Factory Soft - Software ERP para la Nube Latinoamericano (20)

Ejemplo de Total Retenciones por Clientes en eFactory ERP
Ejemplo de Total Retenciones por Clientes en eFactory ERPEjemplo de Total Retenciones por Clientes en eFactory ERP
Ejemplo de Total Retenciones por Clientes en eFactory ERP
 
Ejemplo de Total Facturas por Clientes Mensualmente en eFactory ERP
Ejemplo de Total Facturas por Clientes Mensualmente en eFactory ERPEjemplo de Total Facturas por Clientes Mensualmente en eFactory ERP
Ejemplo de Total Facturas por Clientes Mensualmente en eFactory ERP
 
Ejemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERP
Ejemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERPEjemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERP
Ejemplo de Listado de Retenciones de ISLR Por Proveedores en eFactory ERP
 
Ejemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERP
Ejemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERPEjemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERP
Ejemplo de Saldo Mensual Conciliado de Cuentas Bancarias en eFactory ERP
 
Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...
Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...
Ejemplo de Listado de Ordenes de Pagos Agrupados por Atributo A y Conceptos e...
 
Ejemplo de Listado de Conceptos de Retenciones en eFactory ERP
Ejemplo de Listado de Conceptos de Retenciones en eFactory ERPEjemplo de Listado de Conceptos de Retenciones en eFactory ERP
Ejemplo de Listado de Conceptos de Retenciones en eFactory ERP
 
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados II
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados IIEjemplo de Listado de Movimientos de Cuentas Bancarias Conciliados II
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados II
 
Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...
Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...
Ejemplo de Resumen para el Pago de Impuestos Municipales de las Actividades E...
 
Ejemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERP
Ejemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERPEjemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERP
Ejemplo de Reporte de Totales por Conceptos de Movimientos en eFactory ERP
 
Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...
Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...
Ejemplo de Lista de Precios al Mayor de Repuestos en eFactory Software ERP en...
 
Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...
Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...
Listado de Formatos del Módulo de Ventas y CxC de eFactory Software ERP en la...
 
Listado de Reportes del Modulo de Tesorería de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Tesorería de eFactory Software ERP en la NubeListado de Reportes del Modulo de Tesorería de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Tesorería de eFactory Software ERP en la Nube
 
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...
Ejemplo de Listado de Movimientos de Cuentas Bancarias Conciliados en eFactor...
 
Listado de Reportes del Modulo de Nomina de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Nomina de eFactory Software ERP en la NubeListado de Reportes del Modulo de Nomina de eFactory Software ERP en la Nube
Listado de Reportes del Modulo de Nomina de eFactory Software ERP en la Nube
 
Ejemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERP
Ejemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERPEjemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERP
Ejemplo del Reporte del Valor Actual del Inventario por Marca en eFactory ERP
 
Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...
Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...
Ejemplo de Reglas de Integración Contables en eFactory Software de Contabilid...
 
Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...
Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...
Ejemplo de Reporte de Artículos del Inventario con Todos sus Costos en eFacto...
 
Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...
Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...
Ejemplo de Reporte de Precios a Clientes en eFactory Software Administrativo ...
 
Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...
Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...
Ejemplo de Reporte de Comisiones por Ventas a Vendedores en eFactory Software...
 
Ejemplo de Reporte de Artículos con Códigos Qrs en eFactory ERP
Ejemplo de Reporte de Artículos con Códigos Qrs en eFactory ERPEjemplo de Reporte de Artículos con Códigos Qrs en eFactory ERP
Ejemplo de Reporte de Artículos con Códigos Qrs en eFactory ERP
 

Manual de Encriptacion de Base de Datos para eFactory ERP/CRM (v1.0)

  • 1. Factory Soft Venezuela C.A. Manual de Encriptación Transparente de Bases de Datos (DTE) SQL Server para eFactory Versión 1.0 25/febrero/2015
  • 2. Factory Soft Venezuela C.A. 2 http://www.factorysoft.com.ve Historial de Cambios Versión Fecha Observaciones Responsable V1.0 25/02/2015 Creación del Manual RJG
  • 3. Factory Soft Venezuela C.A. 3 http://www.factorysoft.com.ve Contenido Historial de Cambios......................................................................................................................2 Información General......................................................................................................................4 Proceso de Encriptación.................................................................................................................5 Crear una Clave Maestra de Encriptación.....................................................................................5 Crear un Certificado protegido por la Clave Maestra de Encriptación ............................................6 Crear una Clave de Encriptación de Base de Datos .......................................................................6 Activarla encriptación en la Base de Datos..................................................................................7 Proceso para Restaurar un Backup Encriptado.................................................................................8 Scripts Anexos ...............................................................................................................................9 Scripts para Encriptar la Base de Datos........................................................................................9 Scripts para restaurar la Clave Maestra del Servidor y un Certificado...........................................10
  • 4. Factory Soft Venezuela C.A. 4 http://www.factorysoft.com.ve Información General Este manual describe el proceso para la Encriptación Transparente de Bases de Datos (TDE) en SQL Server 2012 o posterior, para ser usada en bases de datos eFactory. Este procesoaporta una capa de seguridadque protege losarchivosde base de datos y backups para que estosseandifícileso imposibles de descifrar en caso de que un tercero tenga acceso a ellos, ya sea al acceder físicamente o por red al servidor, o interceptando los archivos al ser transportados o transferidos de manera electrónica o física fuera del servidor. El acceso desde eFactory a una base de datos encriptada es “transparente”, es decir, el sistema eFactoryno requiere de algúncambiode configuraciónpara acceder a una base de datos encriptada con TDE. Sinembargo,el procesode creación de copias de seguridad tendrá un cambio importante, ya que ahora también debe crearse copias de seguridad de las claves y certificados usados para encriptarlabase de datos, y en caso de necesitar mudar la base de datos encriptada a otro servidor es necesario restaurar primero las claves y certificados. Como resultado del proceso de encriptación es necesario conservar un backup de dos archivos adicionales al propio backup de la base de datos: el certificado y la clave privada del certificado. Adicionalmente se debe resguardar al menos dos contraseñas: la primera es la contraseña maestra de la clave de encriptación maestra (las bases de datos de eFactory no la utilizarán directamente, pero deben guardarse en caso de que a futuro se utilicen), la segunda es una o más contraseñas usadas para generar los backups de cada certificado. El backup de la base de datos debe respaldarse físicamente fuera del servidor de base de datos, como bien se sabe. Adicionalmente los backups de los certificados deben almacenarse en una locación diferente, ya que con ellos se puede tener acceso a las bases de datos encriptadas. Finalmente las contraseñas deben guardarse en una tercera locación física. Así, para que un tercero no autorizado pueda acceder a una copia de seguridad de los datos encriptados tendría que obtener acceso a los archivos en las tres locaciones seguras descritas anteriormente.
  • 5. Factory Soft Venezuela C.A. 5 http://www.factorysoft.com.ve Proceso de Encriptación El proceso consiste en 4 pasos:  Crear una Clave Maestra de Encriptación (y opcionalmente un backup de la misma)  Crear un Certificado protegido por la Clave Maestra de Encriptación, y guardar un backup.  Crear una Clave de Encriptación en la base de datos a encriptar, usando el Certificado.  Activar la encriptación en la Base de Datos. Los primeros dos pasos se deben ejecutar una vez en cada instancia de SQL Server. Los dos últimos pasos se deben ejecutar una vez en cada base de datos a encriptar. A continuación se describen a los pasos a seguir para encriptar una base de datos SQL Server con TDE. Más adelante en este manual se encuentran los scripts que engloban el proceso completo de encriptación. IMPORTANTE: Como en toda operación de riesgo o que pueda afectar a toda la base de datos es necesarioprimerodetenerlos servicios y sistemas conectados a la base de datos, y adicionalmente hacer un último backup sin encriptar antes de proceder con la encriptación. Crear una Clave Maestra de Encriptación En cada instancia de SQL Server solo puede haber una Clave Maestra de Encriptación. La siguiente instrucción se usa para crearla y agregarle una contraseña: USE master; CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>'; Si ya hay una Clave Maestra de Encriptación previamente creada, entonces la instrucción anterior mostrará unerror. En ese caso la clave ha sido creada previamente, pero no sabemos si se creó con nuestracontraseñao si nuestracontraseñafue agregada a la clave maestra. La siguiente instrucción intenta agregar nuestra contraseña a la Clave Maestra de Encriptación: USE master; ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>'; Si esta instrucción muestra un mensaje de error es porque nuestra contraseña ya había sido previamente agregada a la Clave Maestra de Encriptación. Ya sea que se haya creado una clave maestra, o que se haya modificado para agregar una nueva contraseñaes importante hacerunbackup inmediatamente:enprincipio,el esquema de protección de bases de datos de eFactory utiliza Certificados, por lo que no es necesario un backup de la clave maestra (es suficiente con crear una nueva si es necesario), sin embargo si en un futuro se utilizan clavesasimétricasparaencriptarlabase de datos,la única forma de acceder a ellos es por medio de la clave maestra original (no se puede hacer con una nueva). Para hacer un backup de la Clave Maestra de Encriptación se usa el siguiente comando: USE master; BACKUP MASTER KEY TO FILE = 'C:Sql_2012BackupsClaveMaestraServidor.backup' ENCRYPTION BY PASSWORD = '<CONTRASENA PARA EL BACKUP>';
  • 6. Factory Soft Venezuela C.A. 6 http://www.factorysoft.com.ve Nótese que el backup requiere una contraseña para proteger el archivo generado (se utilizará para restaurar el backup de la Clave Maestra de Encriptación); pero esta contraseña es diferente de la propia contraseña de la calve maestra. Ambas contraseñas deben guardarse en un lugar seguro y separado de los backups. Una vez que verifiquemos que ya hay una Clave Maestra de Encriptación y que nuestra contraseña haya sido agregada a la misma continuamos con el Certificado. Crear un Certificado protegido por la Clave Maestra de Encriptación En cada instancia de SQL Server puede haber más de un Certificado, pero los nombres de los certificados deben ser únicos. En las bases de datos de nuestros clientes se creará un certificado agregando el código del cliente global al nombre, utilizando el siguiente comando SQL: USE master; CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000 WITH SUBJECT = 'Certificado de eFactory para CVEVAL0000', EXPIRY_DATE = '20991231'; El nombre debe ser único para que posteriormente pueda importarse más de una base de datos al mismo servidor con sus respectivos certificados sin que haya colisiones. En principio la fecha de expiración no es necesaria ni utilizada por SQL Server cuando el certificado es usado para encriptación,sinembargoestopuedecambiar en el futuro por lo que se establece una fecha lejana como precaución. Antes de poder usar el certificado es necesario hacer un backup del mismo, usando el siguiente comando: USE master; BACKUP CERTIFICATE Certificado_Efactory_CVEVAL0000 TO FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer' WITH PRIVATE KEY ( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk', ENCRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>'); Este comando creará dos archivos: el primero es el certificado en sí, el cual es protegido por una Clave Privada. El segundo archivo contiene la clave privada que a si vez está encriptada usando la contraseña indicada al hacer el backup. Así, los dos archivos generados y la contraseña utilizada deben guardarse en un lugar seguro; al igual que con la Clave Maestra de Encriptación, esta contraseña debe guardarse en un lugar diferente a los archivos del certificado. Crear una Clave de Encriptación de Base de Datos En cada base de datosde eFactory(tantoFactory_Global comoenla base de datos de cada empresa) se debe crear una Clave de Encriptación que use el certificado creado en el paso anterior. Esto se hace mediante el siguiente comando: USE Factory_Administrativo_XXXXXX; CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = TRIPLE_DES_3KEY ENCRYPTION BY SERVER CERTIFICATE Certificado_Efactory_CVEVAL0000;
  • 7. Factory Soft Venezuela C.A. 7 http://www.factorysoft.com.ve La clave de encriptación se almacena dentro de cada base de datos, y es posible crear varias claves (una para cada base de datos) usando el mismo certificado. Activar la encriptación en la Base de Datos En este pasoserá cuando realmente se encripte el contenido de la base de datos. Se ejecuta con el siguiente comando y puede tardar varios minutos u horas en completarse: ALTER DATABASE Factory_Administrativo_XXXXXX SET ENCRYPTION ON; Cualquier backup realizado después de activar la encriptación de la base de datos será generado encriptado.El procesode creación del backup de la base de datos se seguirá ejecutando del mismo modoque con una base de datos no encriptada,yaseapor mediode lainterfazde SSMS o por medio de comandos.
  • 8. Factory Soft Venezuela C.A. 8 http://www.factorysoft.com.ve Proceso para Restaurar un Backup Encriptado 1. Verifique que tiene disponible los siguientes elementos para restaurar el backup: a. El backup de la base de datos (archivo de extensión .bak) b. El backup del certificado asociado a la base de datos (será necesario si no está ya creado en el servidor). Es un archivo de extensión .cer, con el mismo nombre del certificado. c. La clave privada del certificado. Es un archivo de extensión .pvk, con el mismo nombre del certificado. d. La contraseñadel backupdel certificado.Estafue utilizadaal momentode realizar el backup del certificado. 2. Verificarque enlainstanciade SQL Serveresté creado el Certificado asociado al backup que se desea restaurar. El certificado es visible desde SSMS, en el explorador de objetos (ver imagen). 3. Si el certificado no está creado entonces debe ser restaurado desde el backup correspondiente mediante el siguiente comando: USE master; CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000 FROM FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer' WITH PRIVATE KEY ( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk', DECRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>'); 4. Si el paso anterior falla puede ser necesario crear una Clave Maestra de Encriptación, como se explicaenlapágina5. Luegode crear la clave maestra puede intentar de nuevo restaurar el certificado. 5. Una vez que el certificado está creado se restaura la base de datos del mismo modo que se hace con bases de datos no encriptadas.
  • 9. Factory Soft Venezuela C.A. 9 http://www.factorysoft.com.ve Scripts Anexos Para usar estos scripts se debe sustituir la ruta de los backups (“C:Sql_2012Backups”) por la ruta correspondiente al servidor real. Tambiéndebensustituirselascontraseñas“<CONTRASENA MAESTRA FSV>” y “<CONTRASENA PARA EL BACKUP>” por las contraseñas reales a utilizar. El nombre del certificado (“Certificado_Efactory_CVEVAL0000”) y de la base de datos (“Factory_Administrativo_XXXXX”) debensustituirse por los valores reales usando las convenciones de códigos de cliente y nombres de bases de datos de eFactory. Scripts para Encriptar la Base de Datos USE master; GO /*-----------------------------------------------------*/ /* Clave Maestra de la instancia. */ /*-----------------------------------------------------*/ IF(NOT EXISTS(SELECT * FROM sys.symmetric_keys WHERE name = '##MS_DatabaseMasterKey##')) CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>'; ELSE ALTER MASTER KEY ADD ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>'; BACKUP MASTER KEY TO FILE = 'C:Sql_2012BackupsClaveMaestraServidor.backup' ENCRYPTION BY PASSWORD = '<CONTRASENA PARA EL BACKUP>'; GO /*-------------------------------------------------------*/ /* Certificado del cliente (uno por cada cliente global).*/ /*-------------------------------------------------------*/ IF (NOT EXISTS(SELECT * FROM sys.certificates WHERE name = 'Certificado_Efactory_CVEVAL0000')) CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000 WITH SUBJECT = 'Certificado de eFactory para CVEVAL0000', EXPIRY_DATE = '20991231'; BACKUP CERTIFICATE Certificado_Efactory_CVEVAL0000 TO FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer' WITH PRIVATE KEY ( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk', ENCRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>'); GO /*-------------------------------------------------------------------------*/ /* Clave de encriptación de la base de datos (uno por cada Base de datos). */ /*-------------------------------------------------------------------------*/ USE Factory_Administrativo_XXXXX; CREATE DATABASE ENCRYPTION KEY WITH ALGORITHM = TRIPLE_DES_3KEY ENCRYPTION BY SERVER CERTIFICATE Certificado_Efactory_CVEVAL0000; GO /*----------------------------------------------------------------------------*/ /* Activación de la encriptación de la base de datos (en cada Base de datos). */ /*----------------------------------------------------------------------------*/ ALTER DATABASE Factory_Administrativo_XXXXX SET ENCRYPTION ON; GO
  • 10. Factory Soft Venezuela C.A. 10 http://www.factorysoft.com.ve Scripts para restaurar la Clave Maestra del Servidor y un Certificado USE master; /*--------------------------------------------------------------------------------*/ -- Para restaurar: la clave maestra del servidor SQL SERVER (de toda la instancia)*/ /*--------------------------------------------------------------------------------*/ RESTORE MASTER KEY FROM FILE = 'C:Sql_2012BackupsMS_DatabaseMasterKey.backup' DECRYPTION BY PASSWORD = '<CONTRASENA PARA EL BACKUP>' -- CONTRASENA PARA EL BACKUP ENCRYPTION BY PASSWORD = '<CONTRASENA MAESTRA FSV>'; -- CONTRASENA MAESTRA FSV /*--------------------------------------------------------------------------------*/ -- Para restaurar: del certificado de la base de datos (para cada certificado) */ /*--------------------------------------------------------------------------------*/ CREATE CERTIFICATE Certificado_Efactory_CVEVAL0000 FROM FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.cer' WITH PRIVATE KEY ( FILE = N'C:Sql_2012BackupsCertificado_Efactory_CVEVAL0000.pvk', DECRYPTION BY PASSWORD = N'<CONTRASENA PARA EL BACKUP>');