Cómo evitar conexiones desde EXCEL , POWER BI u otra aplicación a MSSQL

by | Aug 17, 2021 | Administración, Seguridad, SQL 2017, SQL 2019, SQL Server | 0 comments

En muchas ocasiones necesitamos controlar el acceso de nuestros usuarios a nuestro motor de bases de datos SQL Server.

Por ejemplo, que los mismos no puedan hacerlo desde EXCEL, POWER BI, Management Studio o cualquier otra aplicación que no sea la autorizada.

Para poder resolver esto vamos a usar Triggers DDL de SQL Server.

En el siguiente ejemplo te muestro como podemos controlar que un usuario de aplicación solo pueda ser accedido desde nuestro sistema y no así desde otra aplicación.

-- CREAMOS UN TRIGGER DDL LOGON 

CREATE TRIGGER [CONNECTION_LIMIT_TRIGGER]
ON ALL SERVER 
FOR LOGON
AS 
 SET NOCOUNT ON 
-- CON ESTE TRIGGER QUE EL LOGIN DEMOAPP SOLO PUEDA SER USADO DESDE NUESTRA APP
 BEGIN
 IF SUSER_SNAME() = 'DEMOAPP' AND APP_NAME() <> 'MIAPLICACION'
    ROLLBACK;
 END;
 GO 
GO 

SET QUOTED_IDENTIFIER OFF
GO 

ENABLE TRIGGER [CONNECTION_LIMIT_TRIGGER] ON ALL SERVER
GO 

Si deseas ver una explicación completa te paso el siguiente video en el cual comento como hacer esta implementación

Acerca del autor

Maximiliano Accotto

Experto en SQL Server y BI

Con mas de 20 años de experiencia y trayectoria trabajando con bases de datos SQL Server y BI.

Fui Microsoft MVP desde el 2005 al 2019 y soy orador frecuente para distintos eventos de Microsoft y comunidades técnicas.

Me especializado en temas de tuning, administracion, performance, diseño y BI en el mundo Microsoft ya sea para ambientes locales como nube.