除了通过我的 C# 应用程序之外,如何防止与 SQL Server 数据库的任何连接或交互?我有一个使用 .net 创建的系统,并且有可以访问数据库的第三方应用程序。我尝试了多种解决方案,例如停止 Windows 身份验证或阻止使用触发器登录,但这不起作用。
CREATE TRIGGER trg_restrict_app_access
ON ALL SERVER
FOR LOGON
AS
BEGIN
IF ORIGINAL_LOGIN() = 'myUsername' AND APP_NAME() <> 'MyApp'
BEGIN
ROLLBACK;
THROW 50000, 'Unauthorized application', 1;
END
END;
GO
您的应用程序应使用凭据(用户名/密码)连接到数据库。
您可以将数据库配置为仅允许通过这些凭据进行访问。 这通常是通过创建具有相关权限的角色并将该角色分配给您的应用程序的用户来完成的。用于连接。