
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