Restringir acceso desde el Management Studio

En algunas ocasiones se necesita poder restringir el acceso a SQL Server para ciertos usuarios y especificamente cuando se conectan a SQL Server por medio del Managment Studio.

Una forma sencilla para poder realizar esta restricción es por medio de la creación de un Trigger, tal y como se muestra a continuación.


CREATE TRIGGER restringiraccesosql ON all server FOR logon AS 
BEGIN 
  IF suser_name() <> 'Dominio\AdminSQL' 
  AND 
  EXISTS 
  ( 
         SELECT * 
         FROM   sys.dm_exec_sessions 
         WHERE  program_name IN (N'Microsoft SQL Server Management Studio - Query') ROLLBACK; 
        
END; 

El código anterior restringe el acceso a los usuarios que son distintos al usuario AdminSQL y que se intentan conectar por medio del Management Studio. De la misma forma que se está restringiendo el acceso desde el Management Studio también se puede restringir desde cualquier otra aplicación, lo que se necesita es conocer el nombre de la aplicación.

Por ejemplo para conocer el nombre de la aplicación desde la cual nos estamos conectando en la sesión actual se puede utilizar el siguiente TSQL.

SELECT program_name 
FROM   sys.dm_exec_sessions 
WHERE  session_id = @@SPID 



Saludos,

Comments

Popular posts from this blog

Desactivar llaves foráneas en SQL Server

Permitiendo la administración de los jobs a usuarios que no son System Administrators en SQL Server Agent 2005 o superior

Configurar SQL Server y MSDTC