Hola a todos. Una de las funciones de un DBA es la gestión de permisos en la instancia y bases de datos. Para ello, en el caso de SQL Server, podremos usar los los roles de base de datos o configurar roles propios. Quédate y te contamos todo sobre los roles de base de datos en SQL Server.
En el caso de SQL Server la gestión de permisos se basa en:
- Logins (a nivel de instancia). Proporcionan acceso / permiso a nivel de instancia.
- Usuarios (a nivel de base de datos). Los usuarios se crean a nivel de base de datos y es muy común asociarlos a un login. Generalmente con el mismo nombre, pero no necesariamente.
- Roles (a nivel de base de datos). Una vez creado el usuario, se puede (opcionalmente) asociar a un rol.
- Objetos (a nivel de base de datos). Se pueden dar permisos específicos sobre un objeto (tabla, vista, trigger…). Estos permisos se pueden dar directamente a un usuario de base de datos, o a un rol de base de datos propio.

Gestión de permisos con roles
Lo primero que debemos distinguir es el tipo. Tenemos roles de base de datos, que son nativos de SQL Server y aplican a nivel de base de datos, y luego podemos crear roles propios para una aplicación, un departamento, etc. Los roles de base de datos como db_datareader o db_datawriter son los más comunes. Estos permisos son

Independientemente del tipo, los roles de base de datos, se asocian sobre usuarios a nivel de base de datos.
En este ejemplo, creamos un login a nivel de instancia. Posteriormente, creamos su usuario en la base de datos «db1». Una vez creado el usuario lo asociamos a los roles db_datareader y db_datawriter:
USE [master]
GO
CREATE LOGIN [AplicacionPropia] WITH PASSWORD=N'AplicacionPropia', DEFAULT_DATABASE=[master], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
USE [db1]
GO
CREATE USER [AplicacionPropia] FOR LOGIN [AplicacionPropia]
GO
USE [db1]
GO
ALTER ROLE [db_datareader] ADD MEMBER [AplicacionPropia]
GO
USE [db1]
GO
ALTER ROLE [db_datawriter] ADD MEMBER [AplicacionPropia]
GO
Esto es una breve introducción a los permisos, ya que el contenido es muy extenso y complejo. Si quieres que unos DBA expertos se encarguen del mantenimiento de SQL Server, así como su gestión de usuarios y roles. Contáctanos sin compromiso.
¿Aún no conoces Query Performance? Descubre cómo puede ayudarte en tu entorno Oracle. Más información en su página de LinkedIn.
Sígue a GPS en LinkedIn