La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Seguridad en SQL Server 2005 Hector Minaya, MCSD, MCT

Presentaciones similares


Presentación del tema: "Seguridad en SQL Server 2005 Hector Minaya, MCSD, MCT"— Transcripción de la presentación:

1 Seguridad en SQL Server 2005 Hector Minaya, MCSD, MCT

2 Autenticación & Autorización Usuarios & Schemas Seguridad para Desarrolladores

3 Terminología de Seguridad Principal: individuos, grupos y procesos que pueden solicitar recursos de un servidor SQL. Securable (asegurable): los recursos a los cuales el sistema de autorización de SQL Server le regula el acceso.

4 SQL Server define 4 conceptos básicos de Principals Login de SQL Server Usuario de la Base de datos Role de la BD Role de una aplicación

5 Login de SQL Server Un login es la habilidad de utilizar una instancia del Servidor SQL Esta asociado con un usuario de Windows o con un usuario de SQL Son autenticados contra SQL Server Por defecto tienen acceso a la base de datos default Algunos grupos de Windows tienen logins preestablecidos.

6 Usuarios & Roles Un usuario es un principal de una base de datos en particular. Los Logins son asignados a los usuarios Los grants se le hacen a los usuarios. A los usuarios se le asignan sus propios schemas. Los usuarios pueden pertenecer a Roles. Todos los usuarios son miembros del Role Public El login sa esta asignado al usuario dbo en todas las base de datos.

7 Roles Los Roles pueden existir a nivel de instancia o base de datos. A nivel de Instancia Los logins pueden ser otorgados roles llamados server roles. No se pueden crear Roles nuevos A nivel de Base de Datos Los usuarios de base de datos pueden ser otorgados roles. Se pueden crear roles nuevos.

8 Role de una Aplicación Un role de aplicación sirve para asignarle permisos a una aplicación: Tiene un password No contiene usuarios

9 En el Servidor & BD Servidor Login de SQL Server Usuario de SQL Server Roles de la BD Roles de Aplicaciones Assemblies Servicios Fulltext Catalog Eventos DDL Schema En un Schema Tablas Vistas Funciones Procedimientos Reglas Sinónimos Agregados Ejemplos de Securables (asegurables)

10

11 ¿ Quien Soy? ¿Soy miembro de Grupos o Roles? ¿ Quien me verifico? ID Primario ID(s) Secundarios Authenticator Autenticación Que es Autenticación? Es básicamente el proceso de determinar que alguien es realmente quien dice ser.

12 Mejoras en la Autenticación sobre SQL2000 La información de Login no se envía como texto plano a través de la red. La nueva política para los passwords esta activada por default. Esta política incluye: Complejidad de passwords. No mas passwords como: sa, password, Admin, Administrator, sysadmin o Maneja el bloqueo de las cuentas en base a intentos fallidos Expiración de passwords

13 DEMO

14 Schemas Schemas son contenedores para objetos de base de datos. Un esquema le puede pertenecer a un usuario, role o roleapp Si el usuario no tiene un schema asignado se utiliza el schema DBO. A diferencia de SQL 2000 (y anterior) múltiples usuarios pueden ser colocados en un schema.

15 Schemas CREATE TABLE accounts.invoice (…) GO ALTER SCHEMA accounts2 TRANSFER accounts.invoice accounts es un schema, no existe un usuario que se llame accounts Transferir de un schema a otro

16 Seguridad hoy en día SSL ISA Firewall IIS SQL Server ISA Firewall IPSec

17 Encriptación SQL Server 2005 tiene la habilidad de utilizar múltiples algoritmos para la encriptación de la data: Llaves simétricas (RC4, RC2, DES Family, AES Family) Llaves asimétricas (Rivest-Shamir-Adelman Encryption (RSA)) Certificados (X.509 V1)

18 DEMO

19 Contexto En SQL2005 el código no tiene que ser ejecutado en el mismo contexto del usuario que esta haciendo el llamado. Execute AS Para Stored Procedures & Funciones. Jose Jose.SProc Silvia.Tabla Execute AS Silvia Execute AS Silvia Se verifican los permisos de ejecución de Jose Se verifican los permisos de Select para Silvia, no Jose. SQL Server 2005

20 Execute AS El código puede se ejecutado como: CALLER (quien lo esta llamando) SELF (el usuario actual que esta creado o alterando el objeto) OWNER (el dueño del objeto) a specific user (un usuario en especifico) Si no colocamos esta opción nuestro código se ejecuta bajo el contexto del usuario que esta haciendo la llamada (CALLER).

21 Recursos en Línea MSDN: Información Adicional NetaWeb Contacto

22 ?


Descargar ppt "Seguridad en SQL Server 2005 Hector Minaya, MCSD, MCT"

Presentaciones similares


Anuncios Google