技术开发 频道

SQL Server2008 R2数据管理:安全新突破

  注意在记录到一个文件目的地中时,文件名称没有在CREATE SERVER AUDIT语句中指定。审核文件名称采用AuditName_AuditGUID_nn_TS.sqlaudit 的形式,其中AuditName 是审核对象的名称,AuditGUID是与审核对象关联的唯一标识符,nn是用于分割文件组的分区编码,而TS是一个timestamp类型的值。例如,通过之前的代码示例创建了HIPAA_FILE_Audit审核对象,它可以产生一个日志文件,其名称与下面的类似:

HIPAA_File_Audit_{65A441F8-DEF3-44ad-B9C6-126B65257223}_00_29384.sqlaudit

 

    可以使用QUEUE_DELAY 审核选项为性能原因执行异步的审核,而ON_FAILURE选项决定当审核信息不能写到目的地时所要采取的行动。在之前的HIPAA_AppLog_Audit示例中所显示的,ON_FAILURE选项配置为当日志不能写的时候关闭SQL Server示例;在这种情况下,执行CREATE SERVER AUDIT语句的用户必须具有SHUTDOWN权限。

  在创建了一个审核对象时,你可以使用CREATE SERVER AUDIT SPECIFICATION和CREATE DATABASE AUDIT SPECIFICATION语句为它添加事件。CREATE SERVER AUDIT SPECIFICATION 添加服务器级别的行动组(在服务器级别会发生的相关行动的预定义集合)到一个审核中去。例如,下面的代码添加了FAILED_LOGIN_GROUP 行动组(它记录了失败的登陆尝试)到HIPAA_File_Audit审核中去。

CREATE SERVER AUDIT SPECIFICATION Failed_Login_Spec

  
FOR SERVER AUDIT HIPAA_File_Audit

  
ADD (FAILED_LOGIN_GROUP);

 

    CREATE DATABASE AUDIT SPECIFICATION语句添加数据库级别的行动组和将单个的数据库事件添加到一个审核中去。添加单独的行动使得你可以过滤基于这个活动涉及的对象和用户来记录的行动。例如,下面的代码示例添加了DATABASE_OBJECT_CHANGE_GROUP行动组(它记录数据库中的任何CREATE、ALTER或DROP操作)和将用户SalesUser或 SalesAdmin在Sales schema中对对象执行的任何INSERT, UPDATE, or DELETE语句添加到HIPAA_AppLog_Audit审核中去。

CREATE DATABASE AUDIT SPECIFICATION Sales_Audit_Spec

  
FOR SERVER AUDIT HIPAA_AppLog_Audit

  
ADD (DATABASE_OBJECT_CHANGE_GROUP),

  
ADD (INSERT, UPDATE, DELETE

  
ON Schema::Sales

  
BY SalesUser, SalesAdmin);

审核对象提供了一个可管理的审核框架,它使得定义应该被记录的事件和日志应该存储的位置变得很容易。这个对SQL Server 的补充帮助你执行一个完全的审核解决方案来保护你的数据库和满足调整遵从性要求。

  8. 总结

  安全性一直都是SQL Server致力改善的一个领域。SQL Server 2008 R2版本做了很多方面的改进来增强和扩展其安全性,提供了功能强大的透明加密和密钥管理功能、强身份验证和访问控制的安全性增强功能、有助于有效管理安全性功能配置策略、以及增强的安全审核,能够帮助用户在有效保证业务系统安全、稳定运行的同时,带来新的商业价值和激动人心的应用体验。

0
相关文章