Administración de Vistas, Roles y Permisos en SQL Server
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en
con un tamaño de 2,92 KB
Concepto de Vista en SQL
Una vista es una sentencia SELECT constituida como un objeto separado de la tabla (o tablas) a las que hace referencia su definición.
La vista no es una tabla, sino la definición de una consulta y, por tanto, no posee datos propios.
Utilidad de las vistas
Sirve, por ejemplo, si queremos que un usuario acceda a una tabla, pero no nos interesa que vea unos campos en concreto; en ese caso, creamos una vista con los campos específicos que queremos que visualice.
CREATE VIEW clientesMadrid AS SELECT * FROM clients WHERE poblacion='Madrid';
Usuarios y Roles del Sistema
El usuario "guest": Es un usuario que está presente en todos los servidores, pero que se encuentra desactivado por defecto. Para utilizarlo, tendremos que activarlo previamente.
La función "public": Es la función que todos los usuarios adquieren por defecto cuando son creados en un servidor.
Funciones Preestablecidas de Bases de Datos
Existen 4 funciones principales dentro de las bases de datos:
- Db_owner: Permite realizar cualquier acción sobre una base de datos concreta. Sería el equivalente al propietario de la base de datos, aunque puede haber más de uno.
- Db_datareader: Tiene permisos para leer todas las tablas de la base de datos.
- Db_datawriter: Puede escribir en todas las tablas de la base de datos.
- Db_ddladmin: Permite añadir, modificar y eliminar objetos de la base de datos, como por ejemplo, borrar o crear tablas.
Gestión de Permisos: Deny y Revoke
Tanto el DENY como el REVOKE sirven para quitar permisos. La diferencia fundamental radica en su comportamiento: el deny los quita, pero si el usuario obtiene los permisos de otro sitio, los mantendrá; en cambio, el revoke quita todos los permisos incluso si se intentan obtener desde otra ubicación.
Tipos de Funciones Preestablecidas
Existen las funciones preestablecidas para servidores y las funciones preestablecidas para bases de datos.
- Funciones de servidores: Permiten agrupar a los usuarios por las tareas que pueden realizar y otorgar privilegios a nivel de servidor.
- Funciones de bases de datos: Permiten agrupar usuarios del servidor para otorgarles permisos en una base de datos en concreto.
Ejemplos de Comandos SQL para Administración
sp_addlogin maru, 123;
sp_grantdbaccess maru, usuariomaru;
sp_addrole administracion;
sp_addrolemember 'administracion', 'usuariomaru';
GRANT SELECT, UPDATE, DELETE, INSERT ON Contabilidad TO administracion;