Sie sind auf Seite 1von 55

Microsoft

SQL Server 2008


Usuarios, Roles, Encriptacin y Back Up de la base
de datos.
Luis Carlos Campos Carrin
Creacin de un nuevo Usuario
1. Dar clic en Seguridad.
2. Dar clic derecho en Logins.

Creacin de un nuevo Usuario
Clic en New Login
Creacin de un nuevo Usuario
Se muestra el siguiente cuadro de dilogo
Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario
Finalmente se muestra el Usuario creado.
Sin embargo, este an no funciona, para ello se
deben de hacer unos cambios.
Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario

Creacin de un nuevo Usuario
Como crear un Usuario con cdigo.
1)Se crea el inicio de sesin.
CREATE LOGIN Prueba WITH
PASSWORD = 'Passwd
Crea un usuario de base de datos para el
inicio de sesin creado anteriormente.
CREATE USER Prueba FOR LOGIN
Prueba;
Roles SQL Server
Cada rol agrupa un conjunto de permisos
Facilitan la admn. de seguridad
Se definen a nivel de servidor. Independiente, por tanto, de
las bases de datos
Un inicio de sesin puede pertenecer a cero o ms roles de
servidor
Un inicio de sesin 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 aadirse nuevos roles de servidor
Roles a nivel de servidor
Rol Descripcin
sysadmin Los miembros del rol fijo de servidor sysadmin pueden realizar
cualquier actividad en el servidor.
serveradmin Los miembros del rol fijo de servidor serveradmin pueden cambiar
las opciones de configuracin del servidor y apagarlo.
securityadmin Los miembros del rol fijo de servidor securityadmin administran
los inicios de sesin y sus propiedades. Administran los permisos
de servidor GRANT, DENY y REVOKE. Tambin pueden
administrar los permisos de nivel de base de datos GRANT,
DENY y REVOKE si tienen acceso a una base de datos.
Asimismo, pueden restablecer las contraseas para los inicios de
sesin de SQL Server.
processadmin Los miembros del rol fijo de servidor processadmin pueden
finalizar los procesos que se ejecuten en una instancia de SQL
Server.
setupadmin Los miembros del rol fijo de servidor setupadmin pueden agregar
y quitar servidores vinculados.
bulkadmin Los miembros del rol fijo de servidor bulkadmin pueden ejecutar
la instruccin BULK INSERT.
Roles a nivel de servidor
Rol Descripcin
diskadmin El rol fijo de servidor diskadmin se usa para administrar archivos
de disco.
dbcreator Los miembros del rol fijo de servidor dbcreator pueden crear,
modificar, quitar y restaurar cualquier base de datos.
public Cada inicio de sesin de SQL Server pertenece al rol de servidor
public. Cuando a una entidad de seguridad de servidor no se le
han concedido ni denegado permisos especficos para un objeto
protegible, el usuario hereda los permisos concedidos al rol
public para ese objeto. Solo asigne permisos pblicos en
cualquier objeto cuando desee que el objeto est disponible para
todos los usuarios. No puede cambiar la pertenencia en public.
Roles a nivel de Base de Datos
Rol Descripcin
db_owner Los miembros del rol fijo de base de datos db_owner pueden
realizar todas las actividades de configuracin y mantenimiento
en la base de datos y tambin pueden quitar la base de datos.
db_securitya
dmin
Los miembros del rol fijo de base de
datos db_securityadmin pueden modificar la pertenencia a
roles y administrar permisos. Si se agregan entidades de
seguridad a este rol, podra habilitarse un aumento de privilegios
no deseado.
db_accessa
dmin
Los miembros del rol fijo de base de
datos db_accessadmin pueden agregar o quitar el acceso a la
base de datos para inicios de sesin de Windows, grupos de
Windows e inicios de sesin de SQL Server.
db_backupo
perator
Los miembros del rol fijo de base de
datos db_backupoperator pueden crear copias de seguridad de
la base de datos.
Roles a nivel de Base de Datos
Rol Descripcin
db_ddladmi
n
Los miembros del rol fijo de base de datos db_ddladmin pueden
ejecutar cualquier comando del lenguaje de definicin de datos
(DDL) en una base de datos.
db_datawrite
r
Los miembros del rol fijo de base de
datos db_datawriter pueden agregar, eliminar o cambiar datos
en todas las tablas de usuario.
db_dataread
er
Los miembros del rol fijo de base de
datos db_datareader pueden leer todos los datos de todas las
tablas de usuario.
db_denydata
writer
Los miembros del rol fijo de base de
datos db_denydatawriter no pueden agregar, modificar ni
eliminar datos de tablas de usuario de una base de datos.
db_denydata
reader
Los miembros del rol fijo de base de
datos db_denydatareader no pueden leer datos de las tablas de
usuario dentro de una base de datos.
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 especficos de objetos
Pueden ser:
Rol estndar
Rol de aplicacin: establecer permisos a una
aplicacin sobre la BD
Los pueden gestionar: sysadmin, propietario de BD,
db_owner, db_securityadmin
Crear un Rol con Cdigo
CREATE ROLE compradores AUTHORIZATION
Prueba;

Asignar un Rol a un Usuario.

sp_addrolemember compradores,Prueba
Crear un Rol

Crear un Rol

Crear un Rol

Restriccin de Usuario
(Permisos)

Restriccin de Usuario
(Permisos)

Restriccin de Usuario
(Permisos)

Restriccin de Usuario
(Permisos)

Restriccin de Usuario
(Permisos) con cdigo
Permitir a un usuario crear una base de
datos y tablas.
GRANT CREATE DATABASE, CREATE
TABLE TO Prueba

Permitir a un usuario Insertar, modificar y
eliminar registros de una tabla.
GRANT INSERT, UPDATE, DELETE ON
dbo.authors TO Prueba
Restriccin de Usuario
(Permisos) con cdigo
Permitir a un usuario actualizar un nico
campo de una tabla.
GRANT UPDATE( phone ) ON
dbo.authors TO Prueba
Permitir a un usuario Insertar, modificar y
eliminar registros de una tabla.
GRANT INSERT, UPDATE, DELETE ON
dbo.authors TO Prueba
Restriccin de Usuario (Revocar
Permisos) con cdigo
Impedir que el usuario pueda crear vistas
de una tabla.
REVOKE CREATE VIEW
TO Prueba
Impedir que un usuario pueda eliminar.
REVOKE DELETE
TO Prueba
Restriccin de Usuario (Denegar
Permisos) con cdigo
Denegar a un usuario el permiso de
seleccionar.
DENY SELECT
TO Prueba
Denegar a un usuario el permiso de crear
tablas.
DENY CREATE TABLE
TO Prueba
Encriptacin de datos
para qu?
Evitar acceso a datos sensibles
Evitar robo de copias de seguridad con datos
sensibles
qu tcnicas?
Encriptacin a nivel de columna
Encriptacin transparente (TDE) (afecta a toda la
BD)
coste?
Mayor sobrecarga y puede afectar al rendimiento
Requiere una estrategia para la definicin y
mantenimiento de claves, passwords y certificados
Por ello no debe considerarse para todos los datos
y conexiones
Encriptacin de datos
Encriptacin a nivel de columna
Mediante certificados, keys o frases
Requiere el uso de funciones especficas
Symmetric Key
Certificate
EncrypyPassphrase
Encriptacin de datos
Encriptacin a nivel de columna
Encriptacin transparente (TDE), afecta a toda
la BD
No protege las comunicaciones entre aplicacin
cliente y servidor
No encripta FILESTREAM.
No impide al DBA ver los datos.
Puede caer el rendimiento si conviven BD TDE
y sin encriptar.
Encriptacin de datos. Ejemplo
Encriptar un registro de una tabla.

SELECT
EncryptByPassPhrase(address,'PassWord') AS
encrypted FROM dbo.authors


Encriptacin de datos. Ejemplo
Insertar un registro encriptado.

1) Crear la Tabla

create table login_details
(
uid integer,
username varchar(10),
password varbinary(100)
)

Encriptacin de datos. Ejemplo
Insertar un registro encriptado.

2)Insertar los registros

insert into login_details(uid,username,password)
values(1,'smith',EncryptByPassPhrase('12','XXX'))
insert into login_details(uid,username,password)
values(2,'kennal',EncryptByPassPhrase('12','YYY'))
insert into login_details(uid,username,password)
values(3,'staurt',EncryptByPassPhrase('12','ZZZ'))
Encriptacin de datos. Ejemplo
Insertar un registro encriptado.

3) Verificar Encriptacin.

select * from login_details

Encriptacin de datos. Ejemplo
Desencriptar los registros.

select uid,username,convert(varchar(10),
DECRYPTBYPASSPHRASE ('12',password))
from login_details


Back Up de la Base de Datos



Back Up de la Base de Datos



Back Up de la Base de Datos



Back Up de la Base de Datos



Back Up de la Base de Datos



Back Up de la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos



Restaurar la Base de Datos

Das könnte Ihnen auch gefallen