Sei sulla pagina 1di 14

Características y Funciones de Seguridad del SMBD seleccionado

Manuel Octavio Muñoz Gutiérrez


Carlos Adriano Ramírez Aldana
Edwin Alejandro Mateus Rodríguez

Sena Centro de Servicios Financieros

Gestión y Seguridad de Bases de Datos

momunoz00@misena.edu.co

Bogotá D.C.
CONTENIDO

1. Introducción.
2. Objetivo General
3. Objetivos Específicos
4. Características de seguridad.
5. Opciones de configuración.
6. Privilegios y cuentas de usuarios.
7. Mecanismos de autenticación.
8. Funciones de Integridad
9. Bibliografía
1. Introducción

La mayoría de datos están almacenados en sistemas gestores de bases de datos


comerciales como lo es Microsoft SQL Server entre otros, y atacar una base de datos es
uno de los objetivos favoritos para los criminales.

Un factor crítico para el buen desarrollo de las actividades que como administradores de
base de datos debemos realizar tiene que ver con el aseguramiento de la información. Ya
al inicio de las actividades de formación se conceptualizo sobre los estándares
internacionales para la seguridad de la Información, a través de la norma ISO-27000,
ahora es el momento de profundizar en aspectos que le permitirá definir y validar los
esquemas de seguridad de la organización, así como la determinación de privilegios
sobre los datos. Se introducirá sobre la gestión de riesgos como elemento que posibilita
analizar los riesgos y plantear las acciones que permitirán prevenir, mitigar o generar
contingencias sobre estos.
2. Objetivo General

Analizar las diferentes características, políticas y funciones de seguridad del sistema


manejador de base de datos seleccionado SGBD.

3. Objetivos Específicos

- Conocer procesos de autenticación.


- Conocer los tipos de inicio de sesión.
- Reconocer las características y funciones de seguridad que posee el SMBD
- Analizar el comportamiento obtenido al diligenciar la plantilla de verificación de
Norma ISO 270002
4. Características de seguridad SQL Server

SQL Server contiene una estructura de seguridad la cual está diseñada para que los
administradores de bases de datos puedan desarrollar aplicaciones y así neutralizar
amenazas.

Para la seguridad, cada uno de los desarrolladores debe tener una idea y saber cuál sería
una combinación aceptable de funcionalidades, de cómo anticiparse y así contrarrestar.

A continuación, se evidenciará los siguientes tipos de seguridad:

 Autenticación en SQL Server

SQL Server permite dos métodos para autenticación:

- Windows: Es el modo predeterminado, y se denomina seguridad integrada ya


que este modelo de seguridad de SQL está reducidamente integrado con
Windows. 

Para iniciar sesión en SQL, se confía en las cuentas de usuario específicas de


Windows. 

- Mixto: permite autenticación de Windows y SQL. 


Los nombres de usuario y contraseña se mantienen en SQL Server.

Escenarios de autenticación:

La autenticación de Windows es una buena opción a partir de las siguientes condiciones:

 Hay un controlador de dominio.


 La aplicación y el BD se encuentran en un mismo equipo.
 Se está utilizando una instancia de SQL Server Express o Local.

El inicio de sesión de SQL se usa habitualmente en las siguientes situaciones:

 Se tiene un grupo de trabajo.


 Los usuarios, se conectan desde diferentes dominios que no son de confianza.
 ASP.NET.

Tipo de Inicio de sesión 


SQL Server tienes tres tipos de inicio de sesión:

 Una cuenta de usuario de Windows local o una cuenta de dominio de confianza.


 Grupo de Windows. Cuando se concede acceso a un grupo de Windows, se
concede acceso a todos los inicios de sesión.
 Inicio de sesión de SQL. Almacena el nombre de usuario y un valor de la
contraseña en la base de datos maestra, usando métodos de autenticación para
comprobar los intentos de inicio de sesión.

 Autorización y permisos SQL Server

 Privilegios mínimos

Cuando se desarrollar una aplicación basándonos en un enfoque decuenta de usuario,


constituimos una parte importante de la estrategia de defensa contra las amenazas a la
seguridad. 

Las tareas administrativas se realizan utilizando roles del servidor y el uso del rol fijo del
servidor es muy restringido. (SYSADMIN)

Cuando concedemos permisos a usuarios de base de datos, siempre el privilegio es el


mínimo y necesarios para realizar una tarea concreta.

 Permisos basados en roles.

Se otorgan permisos a roles en vez de a usuarios ya que los conjuntos de permisos


asignados a roles los heredan los miembros del rol. 

De igual forma, es sencillo agregar o quitar usuarios de un rol que volver a crear conjuntos
de permisos para cada usuario. 

Los usuarios obtienen los permisos en todos los objetos nuevos creados en el esquema;
no es necesario otorgar nuevamente permisos cuando se crean objetos nuevos.

Instrucciones de permiso.

En la siguiente tabla se describen las tres instrucciones de permiso de Transact-SQL.

Grant Concede permisos


Revoke Revoca permisos
Deny Revoca permisos que no pueden ser
heredados
5. Opciones de Configuración

Microsoft SQL Server es un sistema de administración de bases de datos relacionales


(RDBMS) que contiene pocos componentes y subcomponentes. Cada componente en
SQL Server tiene su propio mecanismo de seguridad que está casi separado el uno del
otro. La seguridad de Database Engine incluye la cuenta de servicio, la instancia y la
seguridad de las bases de datos.

Cuenta de servicio de Microsoft SQL Server

Microsoft SQL Server es una aplicación de modo de usuario, aunque se ejecuta en el


servicio de Windows. La cuenta de servicio es completamente una cuenta de usuario de
Windows y proporciona privilegios de seguridad para que el servicio SQL Server acceda a
los recursos de la plataforma Windows, como el sistema de archivos, la red y el registro.
El punto más importante es que SQL Server Service Account no se debe compartir con
otras instancias de SQL Server y se prefiere estar en un controlador de dominio (DC).

Capas de seguridad de SQL Server

Microsoft SQL Server tiene varias capas de seguridad, la primera capa es la seguridad del
canal de comunicación que es aplicada por TSL o protocolo SSL. La segunda capa está
en el nivel de instancia que está protegido por la API de

Protección de datos de Windows (DPAPI), DPAPI es en la función de cifrado en la


plataforma de Windows para cifrar y descifrar datos y el algoritmo es diferente en cada
máquina. Los inicios de sesión, los roles de servidor y las credenciales son objetos de
seguridad de nivel de instancia en SQL Server y el usuario, el certificado, las funciones,
los esquemas y las claves de cifrado son objetos de seguridad de nivel de base de datos.
La figura siguiente muestra las capas de seguridad de SQL Server
El sistema manejador de bases de datos cuenta con las siguientes características.

Protección de datos:

• Criptografía integrada.

• Cifrado transparente.

• Clave extensible.

• Firma de módulos de códigos.

• Certificados a partir de bytes.

• Claves de seguridad usando AES256.

• Soporte para hashes SHA512 y SHA2 (256 y 512 bits).

Control de Acceso:

• Flexibilidad mediante reparto de responsabilidades y roles anidados.

• Evasión del acceso de Administrador del Sistema.

• Mayor cumplimiento de las normas utilizando Windows Group.

• Usuarios individuales.

• Seguridad de usuarios con controles de TI integrados.

Garantía de Cumplimiento:

• Optimización mejorada y capacidades enriquecidas con respecto a versiones


anteriores.

• Mayor flexibilidad para filtrar eventos no deseados en el log de la auditoría.

• Permite que las aplicaciones escriban código personalizado dentro de log de la


auditoría
6. Privilegios y cuentas de usuarios

Característica Tipo Descripción


Sp_helpdbfixedrole (Transact-SQL) Metadato Lista de los roles fijos de BD
Sp_dbfixedrolepermission (Transact- Metadato Muestra los permisos de un rol fijo.
SQL)
Sp_helprole (Transact-SQL) Metadato Información de los roles de la BD actual.
Sp_helprolemember (Transact-SQL) Metadato Devuelve información acerca de los miembros de un rol de la base de
datos actual.
Sys.database_role_members Metadato Devuelve una fila por cada miembro de cada rol de base de datos.
(Transact-SQL)
IS_MEMBER (Transact-SQL) Metadato Indica si el usuario actual es miembro del grupo de Microsoft Windows o
del rol de BD.
CREATE ROLE (Transact-SQL) Comando Crea un rol nuevo en la BD actual.
ALTER ROLE (Transact-SQL) Comando Cambia el nombre o la pertenencia de un rol.
DROP ROLE (Transact-SQL) Comando Quita un rol de la BD.
Sp_droprole (Transact-SQL) Comando Quita un rol de base de datos de la BD.
Sp_addrolemember (Transact-SQL) Comando Agrega un usuario de base de datos, un inicio de sesión de Windows o
un grupo de Windows. Todas las plataformas, salvo Almacenamiento de
datos paralelos , deben usar ALTER ROLE en su lugar.
Sp_droprolemember (Transact-SQL) Comando Quita una cuenta de seguridad de un rol de SQL. Todas las plataformas,
salvo Almacenamiento de datos paralelos , deben usar ALTER ROLE en
su lugar.
GRANT Permiso Agrega el permiso a un rol.
DENY Permiso Deniega un permiso a un rol.
REVOKE Permiso Quita un permiso concedido o denegado anteriormente.
Nombre del rol fijo de BD Descripción
db_owner Los miembros del rol fijo db_owner pueden realizar todas las actividades de configuración y
mantenimiento en la base de datos y también pueden quitar la base de datos en SQL Server. 

db_securityadmin Los miembros del rol fijo db_securityadmin pueden modificar la pertenencia a roles únicamente
para roles personalizados y administrar permisos. 

db_accessadmin Los miembros del rol fijo db_accessadmin pueden agregar o quitar el acceso a la base de datos
para inicios de sesión.
db_backupoperator Los miembros del rol fijo  db_backupoperator pueden crear copias de seguridad de la base de
datos.
db_ddladmin Los miembros del rol fijo db_ddladmin pueden ejecutar cualquier comando del lenguaje de
definición de datos (DDL) en una base de datos.
db_datawriter Los miembros del rol fijo db_datawriter pueden agregar, eliminar o cambiar datos en todas las
tablas de usuario.
db_datareader Los miembros del rol fijo db_datareader pueden leer todos los datos de todas las tablas de
usuario.
db_denydatawriter Los miembros del rol fijo db_denydatawriter no pueden agregar, modificar ni eliminar datos de
tablas de usuario de una base de datos.
db_denydatareader Los miembros del rol fijo  db_denydatareader no pueden leer datos de las tablas de usuario
dentro de una base de datos.
7. Mecanismos de autenticación.

 Autenticación en SQL Server

SQL Server permite dos métodos para autenticación:

- Windows:  Es el modo predeterminado, y se denomina seguridad integrada ya


que este modelo de seguridad de SQL está reducidamente integrado con
Windows. 

Para iniciar sesión en SQL, se confía en las cuentas de usuario específicas de


Windows. 

Mixto: permite autenticación de Windows y SQL. 


Los nombres de usuario y contraseña se mantienen en SQL Server

8. Funciones de Integridad

La integridad de datos se define en 3 niveles:

Integridad de dominio

La integridad de dominio se establece en condiciones que se deben cumplir al momento


de insertar valores en una columna.
La integridad de dominio son reglas de validación, valores predeterminados, y conjunto de
valores permitidos en una columna (llave foránea).

Integridad de entidad

Es una tabla donde se almacena los datos de una entidad, las cuales requieren que sean
únicas. Esto se define para cada fila de la entidad como un identificador único (llave
primaria).

Integridad referencial

La integridad referencial garantiza que la relación entre la llave primaria (en la tabla
referenciada) y la llave foránea (en la tabla de referencia) siempre se mantiene. Una fila
en una tabla referenciada no puede anularse ni cambiar su valor de la principal.
Nivel de Restricción Descripción
Integridad
Dominio Default Especificación del valor que se
mantendrá para la columna, cuando
no se ha ingresado en una sentencia
de Insert.
Check Especifica los valores que son
aceptables en las columnas.
Entidad Primary Key Identifica cada registro o fila como
única.
Unique Previene duplicación de llaves
alternas y permite valores nulos.

Referencial Foreign Key Define la combinación de columnas


secundarias que dependen de la
llave primaria.
9. Bibliografía

https://docs.microsoft.com/es-es/dotnet/framework/data/adonet/sql/overview-of-sql-server-
security

http://drsoftworld.blogspot.com/2018/04/la-integridad-de-datos-sql-server.html

https://www.sothis.tech/seguridad-en-microsoft-sql-server/

Potrebbero piacerti anche