出于安全和合规性目的,数据库管理员通常会使用各种技术来审计SQL Server数据库的使用。最常见的方法之一是创建SQL Server审计触发器,以自动捕获有关事务和数据库表更改的信息。
技术服务提供商FinTek Development公司数据架构师兼顾问Tim Smith表示,作为数据库审计过程的一部分,SQL Server中的触发器通常用于确保和提高数据完整性。例如,当对敏感数据执行操作时,触发器可以验证该操作是否符合已建立的数据业务规则。
当满足预先建立的条件时,触发器本身被设置为执行特定操作,从而使数据库管理员(DBA)无需手动编写和运行审计查询。但是触发器并不适用于所有情景。在由数据库工具供应商Idera举办的审计最佳做法和选项的网络研讨会上,Smith讨论了在SQL Server中使用审计触发器的优缺点。
审计触发器的优点
SQL Server审计触发器使数据库管理员能够在粒度级跟踪数据库更改。Smith说,这使得它们非常适用于较小SQL Server环境中,因为这些环境需要以更细节的方式进行监控。
触发器还可用于审计特定的数据库对象,而不是整个主机的对象。此外,如果它们检测到数据操作语言和数据定义语言操作或未经授权登录尝试等问题,它们可以向数据库管理员发出警告电子邮件。Smith说,触发器比其他审计方案更具成本效益,其他审计方案具有高昂的开发和维护成本。
当管理员启动审计触发器后,它们会自动运行,从而使SQL Server数据库管理员有更多时间专注其他职责。Smith说,虽然这可以让数据库管理处理多个其他任务,但他们仍然需要注意数据库中的触发器参数。否则,审计触发器可能会成为管理员和最终用户不必要的绊脚石。
SQL Server审计触发器的缺点
触发器会给数据库系统增加处理开销,并使它们运行得更慢。Smith和其他SQL Server专家表示,特别是在具有大量在线事务处理的环境或具有大量数据的环境中,触发器往往会遇到困难。利用触发器捕获此类系统中的审计信息可能会导致性能和可扩展性问题。
Smith说,在使用审计触发器时,必须仔细规划与之相关的业务规则。
他解释称:“触发器是……一种响应式的方法。”
由于触发器被设计为对特定刺激作出反应,如果业务规则计划不周或者措辞错误,触发器可能会误解。而正确构建这些规则可能非常耗时,有时也很困难。
使用触发器的另一个问题是,它们通常具有用户不具有的权限,这可能在用户需要绕过数据库中的审计触发器时导致问题。
Smith还详细谈到恶意黑客如何利用SQL Server审计触发器来获取优势。如果黑客知道系统配备了触发器,他们可能会反复攻击它以创建转移视线或看看数据库管理员的响应速度以及他们采取的安全措施。
虽然触发器在数据库中可能是有用的审计工具,但它们并不适用于所有系统,即使是这样,数据库管理员也需要密切管理它们及其使用。Smith称:“因为触发器是自动的,这可能是一件有价值的事情,但如果我们不小心,则可能对我们有害。”
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国