IT 安全专业人员需要定期监视和审核 SQL Server 中的所有活动,以确保关键数据的完整性和机密性不会受到损害。手动监视服务器上的所有这些活动是一个忙碌的过程。为了使管理员的工作更轻松一些,Microsoft 提供了 SQL Server 审核功能来帮助管理员有效地审核日志。SQL Server Audit 还将帮助管理员遵守 GDPR、HIPAA、SOX 和 PCI DSS 的数据保护策略。
什么是 SQL Server 审核
SQL Server 审核涉及跟踪和查看 SQL 服务器上发生的所有活动,以检测潜在的威胁和漏洞。SQL Server 中的可审核操作分组为审核操作组。服务器级审核操作组(如 AUDIT_CHANGE_GROUP 和 APPLICATION_ROLE_CHANGE_PASSWORD_GROUP)按服务器审核规范分组。数据库级审核操作组事件(如 DATABASE_OPERATION_GROUP 和 DATABASE_LOGON_GROUP)分组到数据库审核规范中。SQL Server 审核报告的结果存储在事件日志或文件中。
简单来说,SQL Server 审核允许管理员监视和记录对服务器设置的每个更改。此外,管理员可以轻松地跟踪数据库特定表中的所有服务器活动,例如谁修改了哪些值。管理员可以通过分析可疑日志事件来识别对网络的未授权访问。
审核类型
有两种类型的 SQL Server 审核:
- 服务器级审核
- 数据库级审计
SQL Server 审核功能
在 SQL Server 审核中,定义要审核的内容、进行服务器配置和架构更改以及审核数据修改。下面是一些 SQL Server 审核功能的列表:
- C2 审核
- 通用准则合规性
- 登录审核
- SQL Server 审核
- SQL 跟踪
- 扩展事件
- 变更数据捕获
- DML、DDL 和登录触发器
根据企业的需求,选择上述功能的任意一项或组合。其中,C2 审计和通用准则合规性是 SQL 审计使用最广泛的国际标准。C2 审核记录 SQL 服务器以外的信息,例如谁在哪个数据库中触发了事件、服务器名称、事件类型和事件的结果。通用准则合规性使残留信息保护、查看登录统计信息的能力以及表级 DENY 优先于列级 GRANT。
登录审核监视 SQL Server 登录活动,并将失败和成功的登录写入错误日志。SQL 跟踪是一种事件驱动的监视工具,用于捕获用户活动。更改数据捕获记录服务器表中的所有插入、更新和删除活动。DML、DDL 和登录触发器用于审核和规范数据库操作。
如何执行 SQL Server 审核
SQL Server 审核的组件
- SQL Server 审核对象
- 审计规范
- 目标
SQL Server 审核对象是在审核的 SQL Server 实例中创建的对象。定义在服务器和数据库级别监视事件的目标。可以为单个 SQL Server 实例定义多个审核,每个审核将审核信息存储在单独的目标文件中。定义了目标类型(二进制文件、安全协议或应用程序协议)和路径。审核未指定记录的内容。此处未指定任何事件类型、对象或数据库。现在,让我们创建一个 SQL Server 审核事件。
创建 SQL 服务器审核
-
第一步是创建审核并定义目标。有两种方法可以创建 SQL Server 审核。
- 使用 SQL Server Management Studio(GUI 功能):在“对象资源管理器”面板中,展开“安全”文件夹,右键单击“审核”,然后选择“新建审核”。
- 使用 Transact-SQL 命令
CREATE SERVER AUDIT [ZohoAudit_DDL_Access] TO FILE
(
FILEPATH = N’C:\TestAudits’
,MAXSIZE = 10 MB
)
WITH
(
QUEUE_DELAY = 1000
,ON_FAILURE = CONTINUE
)
ALTER SERVER AUDIT [ZohoAudit_DDL_Access]WITH (STATE = ON)
GO
- 选择以下两种审核规范之一:服务器审核规范或数据库审核规范。
- 启用审核规范。
- 使用 Windows 事件查看器和日志文件查看器读取审核事件。
创建 SQL 服务器审核对象
- 打开 SQL Server Management Studio。
- 点击创建审核以创建 SQL Server 审核,这将打开“创建审核”对话框。
- 在“审核名称”字段中为审核指定一个名称。
- 选择审核目标(最好是文件)。
- 选择审核的文件路径。
- 将“最大文件大小”设置为 1000(以 MB、GB、TB 或“无限制”为单位)。
- 单击“保留磁盘空间”复选框。
查看审核日志
- 打开 SQL Server Management Studio。
- 在“对象资源管理器”面板中,展开安全文件夹。
- 右键单击审计对象在安全文件夹以查看审核日志报告。
SQL Server 审核提供了一个名为“日志文件查看器”的内置解决方案,使用户能够更轻松地自定义和筛选出日志条目。默认情况下,所有 SQL Server 文件都以 SQLAUDIT 格式存储,这很难读取。尽管如此,管理员可以使用 LOG 文件格式功能来保存和导出审核报告。
降低数据泄露风险的最佳方法是主动审核 SQL Server 数据库。除了监视、审核、通知和报告服务器上所做的关键更改之外,SQL Server 审核还提供了 SQL Server 安全见解的全面视图。因此,IT 管理员可以采取适当的措施,通过 SQL Server 审核提供的强大功能来增强其企业范围的网络数据安全性。