Seguridad SQL Server
Seguridad SQL Server
Seguridad SQL Server
Principals: Identidades de seguridad que acceden y ejecutan acciones sobre los objetos
Vamos a Databases > EJEMPLO ‘Base de datos Asignada’ > Security > Users > User09 >
Properties
Ahora buscamos las tablas de la base de datos para dar los permisos.
En selección de tipos de objetos, seleccionamos tablas y nos mostrara las tablas de la base de
datos asignada al usuario.
Por ejemplo: Que el usuario pueda seleccionar solo las tablas clientes, empleados, oficinas y
pedidos, también que el usuario no pueda ver la cuota y ventas de la tabla empleados, además
que solo pueda actualizar la tabla oficinas sin cambiar la columna oficina, y por último que
pueda insertar un registro a la tabla pedidos.
A la tabla pedidos y productos denegamos el ‘Select’ para que el usuario no visualice esas
tablas.
En la tabla empleados denegamos el Select solo a las columnas cuota y ventas, para que el
usuario puede ver la tabla, pero no puede ver esas dos columnas.
A la tabla oficina le permitiremos actualizar, pero que no pueda modificar la columna oficina,
ciudad y región. Y por último Hacemos click en OK para crear los permisos.
Antes de iniciar sesión con el usuario creado, damos click derecho al servidor, nos dirigimos a
seguridad y nos aseguramos que este marcado las siguientes opciones.
A partir de este momento podrás iniciar sesión con el nuevo usuario creado, seleccionando
SQL Server Authentication y los datos de usuario creado.
Aquí podemos ver que al usuario puede ver en funcionamiento los permisos de usuarios.
Creación de usuarios y permisos por código:
--Creamos un Login
GO
CREATE LOGIN User11 WITH PASSWORD = '123456', DEFAULT_DATABASE = [EJEMPLO],
CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
--Asignamos la base de datos
USE EJEMPLO;
Login: Un login es la habilidad de utilizar una instancia del Servidor SQL, está asociado con un
usuario de Windows o con un usuario de SQL. Son autenticados contra SQL Server por lo tanto
son los accesos al servidor, pero esto no quiere decir que puedan acceder a las bases de datos
o a otros objetos. Para poder acceder a cada una de las bases de datos se necesita de un
usuario (user).
--Creamos al Usuario
GO
CREATE USER User11 FOR LOGIN User11;
GO
A nivel de Instancia:
--Asignamos Permisos--
--Denegamos SELECT
--Permitimos Actualizar
--Permitimos Insertar
INSERT INTO empleados VALUES (200, 'Juan López', 30, NULL, 'representante',
'23/06/01', NULL, 350000, 0)