Introducing 

Prezi AI.

Your new presentation assistant.

Refine, enhance, and tailor your content, source relevant images, and edit visuals quicker than ever before.

Loading…
Transcript

Un Inicio de Sesión (Login) se define a nivel de Instancia mientras que un Usuario se define a nivel de Base de Datos.

Un inicio de sesión es una entidad de seguridad o una entidad que puede ser autenticada por un sistema seguro.

Los usuarios necesitan iniciar sesión para conectarse a SQL Server.

Puede crear un inicio de sesión basado en una entidad de seguridad de Windows

O puede crear un inicio de sesión que no lo esté (como un inicio de sesión de SQL Server).

TIPOS DE INICIO DE SESION

Windows

} Usuario

} Grupo de usuarios

SQL Server

Certificado

Clave Asimétrica

OPCIONES DE ADMINISTRACIÓN

} Podemos forzar el cambio de contraseña en el primer inicio de sesión: MUST_CHANGE

} Exigir directivas de contraseña

} Desbloquear Cuentas: UNLOCK

} Deshabilitar un inicio de sesión: DISABLE

} Establecer una BD de conexión predeterminada

CREATE LOGIN

}CREATE LOGIN Pepe WITH PASSWORD = ‘Passwd' MUST_CHANGE

}CREATE LOGIN [UNICAN\pepe] FROM WINDOWS

DROP LOGIN / ALTER LOGIN

LA INFORMACIÓN SE ALMACENA EN:

sys.server_principals: Contiene una fila por cada entidad de seguridad del servidor.

sys.sql_logins: Devuelve una fila por cada inicio de sesión de SQL.

ROLES FIJOS DEL SERVIDOR

* Cada rol agrupa un conjunto de permisos

* Facilitan la administración de seguridad

* Se definen a nivel de servidor. Independiente, por tanto, de las bases de datos

*Un inicio de sesión puede pertenecer a cero o más roles de servidor

* Un inicio de sesión que pertenezca a un rol de servidor adquiere los permisos de ese rol

* Son fijos:

} No se pueden modificar sus permisos

} No pueden eliminarse

} No pueden añadirse nuevos roles de servidor

SEGURIDAD DE BASE DE DATOS

Los siguientes inicios de sesión pueden conectarse a una BD:

} sysadmin

} Propietario de la BD

} Usuarios de la BD

} Cualquier inicio de sesión si existe el usuario guest y tiene permiso

Usuario de BD

} Definido a nivel de BD

} Corresponde con un inicio de sesión

CONCEDER ACCESO A UNA BD

Pueden conceder permisos:

}sysadmin

}Propietario dela BD

}Usuario con rol db_owner

}Usuario con rol db_accessadmin

Al conceder acceso a un inicio de sesión a una base de datos:

Se crea el usuario correspondiente en esa BD

Pertenece al rol public

Para conceder permisos ‰ sp_grantdbaccess y sp_adduser

Para quitar el acceso ‰ sp_revokedbaccess

Para reasignar inicios de sesión con usuarios ‰ sp_change_users_login

Ver info de usuarios ‰ sp_helpuser

ROLES DEFINIDOS POR EL USUARIO

Agrupan un conjunto de permisos

No tienen permisos predefinidos

Los permisos se establecen por:

}Pertenencia a otros roles

}Permisos de sentencias

}Permisos específicos de objetos

Pueden ser:

}Rol estándar

}Rol de aplicación: establecer permisos a una aplicación sobre la BD

Los pueden gestionar: sysadmin, propietario de BD, db_owner, db_securityadmin

AUTENTICACIÓN

* Principio del mínimo privilegio

* Usar Autenticación Windows

* Si hay que emplear autenticación SQL:

}Políticas de contraseña en SQL server

*Para el acceso desde aplicaciones, definir un rol de aplicación

ENCRIPTADO

* Sopesar el uso de cifrado de datos

} Aceso a través de procedimientos almacenados

* Cifrado e Indexado

} No cifrar columnas con índices si es posible

Autor: Jordan King Rodriguez Mallqui

Código: 20092687B

Roles fijos de base de datos

Creación de un inicio de sesión

Asignación de un rol de servidor

Asignación de usuarios

Elementos que pueden proteger

Estado del inicio de sesión

USUARIO DE BASE DE DATOS

Crear un Usuario

}CREATE USER <usuario> FOR LOGIN<login> WITH DEFAULT_SCHEMA = <schema>

}Podemos crear un usuario sin asociar: WITHOUT LOGIN

Modificar

}ALTER USER

Eliminar

}DROP USER}No si es propietario de objetos

Invitado

}GRANT CONNECT TO GUEST

Información sobre usuarios en: sys.database_principals

ROLES O FUNCIONES DE BASE DE DATOS

*CREATE ROLE <nombre>

*Asignar a un usuario

} sp_addrolemember <role>,<usuario>

*Ver información en: sys.database_role_members

*Rol Public

Roles fijos de Servidor

Consejos de Buenas Practicas

Principales: entidades de seguridad:

Usuarios windows, usuarios sql server, Usuarios de BD

SEGURIDAD EN SQL SERVER 2008

Modelo de seguridad en SQL Server

Learn more about creating dynamic, engaging presentations with Prezi