Auditoria de operaciones personalizada con Temporal Tables

Auditoria de operaciones personalizada con Temporal Tables

En no raras ocasiones nos vemos en la necesidad de mantener una auditoría de seguridad personalizada ante operaciones INSERT, UPDATE y DELETE. Se nos presenta entonces la problemática de querer añadir a la detección de la operación, determinados artefactos lógicos para nuestra trazabilidad interna. Imaginemos por ejemplo que queremos añadir el usuario lógico de nuestra aplicación, que le pasamos en una propiedad del Application Name de la cadena de conexión, es decir…algo digamos que requiera de cierta lógica por nuestra parte a la hora de guardar el dato.

(más…)

Ataque DoS a SQL Server para Dummies

Ataque DoS a SQL Server para Dummies

En muchas ocasiones nos encontramos con entornos de producción donde “demasiada gente” tiene acceso. En muchos casos son accesos de “solo lectura” aunque eso no los hace inofensivos de cara a la estabilidad del sistema. Pero podemos ir más allá, vamos a ver como con un login, con rol public, sin acceso a ninguna base de datos de usuario, se puede realizar fácilmente un ataque de denegación de servicio (DoS) contra SQL Server.

(más…)

Añadir miembros en roles de bases de datos en Analysis Services con Powershell

Añadir miembros en roles de bases de datos en Analysis Services con Powershell

Powershell es una magnífica herramienta para scripting y administración de servidores y es por esto que cada vez más productos van incorporando sus propios CMDLets para realizar las tareas más comunes. SQL Server no es una excepción y en la versión 2012 incorpora modulos con una buena variedad de comandos que nos permiten realizar tareas de administración sobre el motor de bases de datos, los servicios de análisis, de integración, etc.. En esta versión todavía existe el ejecutable sqlps.exe pero se verá depreciado en futuras versiones. (más…)
Powershell: Desactivando roles de Microsoft SQL Server Analysis Services dinámicamente

Powershell: Desactivando roles de Microsoft SQL Server Analysis Services dinámicamente

El control del acceso de los usuarios a nuestros cubos OLAP se convierte en una tarea importante si. Dentro de nuestras tareas diarias podemos tener diferentes procesos de actualización de los datos del data warehouse (por ejemplo, las últimas ventas de hoy) y su correspondiente proceso de actualización del cubo OLAP para reflejar estos nuevos datos y que se muestre en los informes de nuestros gerentes.
(más…)
Cómo establecer permisos a cada elemento de una lista

Cómo establecer permisos a cada elemento de una lista

El objetivo consiste en modificar los permisos de un elemento de una lista dinámicamente, desde un flujo de trabajo y sin tener que recurrir al modelo de objetos cliente por código.

Vamos a utilizar una lista de ejemplo llamada “Gastos diarios” a la que añadimos solamente dos columnas, “Importe” y “Contabilizado”. Lo que se busca es que el autor sea el único que pueda leer y editar cada elemento, y además, que solamente pueda editar aquellos elementos que no han sido contabilizados.

(más…)

Encriptación segura en SQL Server 2008 con TDE

Encriptación segura en SQL Server 2008 con TDE

Como pudimos ver en el anterior post sobre encriptación sobre 2005/2008 encriptar nuestra información sensible no es trivial. Analizando el funcionamiento a fondo de los mecanismos de encriptación y de la implementación en SQL Server se determinó que no es suficiente con habilitar la encriptación sobre nuestros datos. Debemos por tanto comprender a fondo la implementación para evitar dejar datos en claro de forma involuntaria. Con SQL Server 2008 aparece la encriptación transparente (TDE) que afecta a la base de datos completa y es transparente para las aplicaciones su uso lo cual mejora su usabilidad en aplicaciones de terceros o que no puedan ser modificadas. (más…)
Encriptación segura en SQL Server 2005/2008

Encriptación segura en SQL Server 2005/2008

En SQL Server 2005 y 2008 disponemos de encriptación nativa dentro del motor de base de datos. Sin entrar en demasiados detalles sobre la arquitectura de encriptación diremos que su fin es la de impedir el acceso no autorizado a información sensible como tarjetas de crédito, historiales médicos, etc. En SQL Server 2005 la encriptación debía ser gestionada de una forma bastante poco transparente (requería que la aplicación se adaptara) y su ámbito era exclusivamente el de columna encriptada. Con SQL Server 2008 aparece la encriptación transparente (TDE) que afecta a tablas completas y es transparente para las aplicaciones su uso lo cual mejora su usabilidad. (más…)