关闭 x
IT技术网
    技 采 号
    ITJS.cn - 技术改变世界
    • 实用工具
    • 菜鸟教程
    IT采购网 中国存储网 科技号 CIO智库

    IT技术网

    IT采购网
    • 首页
    • 行业资讯
    • 系统运维
      • 操作系统
        • Windows
        • Linux
        • Mac OS
      • 数据库
        • MySQL
        • Oracle
        • SQL Server
      • 网站建设
    • 人工智能
    • 半导体芯片
    • 笔记本电脑
    • 智能手机
    • 智能汽车
    • 编程语言
    IT技术网 - ITJS.CN
    首页 » SQL Server »在SQL Server 2008中安装安全审计(1)

    在SQL Server 2008中安装安全审计(1)

    2015-11-05 00:00:00 出处:ITJS
    分享

    在SQL Server 2008里安装审计,步骤如下:

    1. 给每个SQL Server 2008具体实例创建一个SQL Server审计

    2. 创建服务器审计规范、数据库审计规范或者其中的一个

    3. 激活SQL Server审计

    4. 查看审计数据

    在这一技巧中,我将复习其中的每一步并举例说名它们怎么进行的。注意大多数情况下这些例子是基于T-SQL语句的。但是,这些步骤也能够用 SQL Server Management Studio界面来执行。假如想了解更多有关SQL Server Management Studio用法的信息,请查看 Microsoft SQL Server联机丛书。

    创建SQL Server审计

    第一步你应该在SQL Server 2008的一个实例上创建审计,这样就能创建一个SQL Server审计。审计就是为与数据库引擎相关的具体事件集合配置的安全对象。你可以在SQL Server 2008里的一个实例上创建多个审计。

    在创建审计时,你必须给它指定一个名称和事件输出的目标位置。目标文件可以是二进制的文件、Windows Security日志或Windows Application日志。你还可以给审计对象指定一个或更多个可选参数。

    你可以用CREATE SERVER AUDIT语句,如下所示:

     USE master  
    GO 
    CREATE SERVER AUDIT SrvAudit 
    TO FILE (FILEPATH='C:Data', MAXSIZE=5 MB) 
    WITH (QUEUE_DELAY = 3000)
    

    注意,你必须在主数据库中创建一个审计。由于审计是和SQL Server实例相联系的,因此你不能在用户数据库中创建。

    第一行的CREATE SERVER AUDIT语句仅规定审计名称(如SrvAudit)。第二行的TO 子句确定事件输出时的目标位置。例如,我想将输出结果保存在文件中,所以我必须指定TO FILE并规定FILEPATH 值。注意这只是一个路径名。SQL Server将自动命名输出文件,如下所示:

     <audit_name>_<audit_GUID>_<partition_number>.sqlaudit

    在上面的例子中,TO FILE语句还包括了MAXSIZE参数,MAXSIZE参数将文件大小限制为5 MB。该参数是TO FILE子句可选参数之一。假如你将审计数据迁到Application日志或 Security 日志,你就只需要指定日志名选项,示例如下:

     CREATE SERVER AUDIT SrvAudit2 

    创建服务器审计规范

    你创建SQL Server审计之后,必须创建一个服务器审计规范或者是一个数据库审计规范或者是其中的每个。一个服务器审计规范就是和具体的SQL Server审计相关的一个或多个服务审计。活动组就数据库引擎暴露出来的一组相关的事件,例如,我们在进行安全审计操作时,SERVER_OPERATION_GROUP行动组就出现了,如当用户在改变服务器设置时。你可以在每个审计上只创建一个服务器审计。但是,你可以对审计规范增加多个活动组。创建一个服务器审计规范,你需要在主数据库上运行CREATE SERVER AUDIT SPECIFICATION,如下所示:

    USE master  

    激活SQL Server审计

    和我们刚刚回顾的审计规范一样,CREATE SERVER AUDIT 语句中的WITH子句并不支持STATE参数。也就是说你必须在单独的一步中激活审计,如下面的语句中所示:

    USE master  

    在SQL Server 2008里安装审计,步骤如下:

    1. 给每个SQL Server 2008具体实例创建一个SQL Server审计

    2. 创建服务器审计规范、数据库审计规范或者其中的一个

    3. 激活SQL Server审计

    4. 查看审计数据

    在这一技巧中,我将复习其中的每一步并举例说名它们怎么进行的。注意大多数情况下这些例子是基于T-SQL语句的。但是,这些步骤也能够用 SQL Server Management Studio界面来执行。假如想了解更多有关SQL Server Management Studio用法的信息,请查看 Microsoft SQL Server联机丛书。

    创建SQL Server审计

    第一步你应该在SQL Server 2008的一个实例上创建审计,这样就能创建一个SQL Server审计。审计就是为与数据库引擎相关的具体事件集合配置的安全对象。你可以在SQL Server 2008里的一个实例上创建多个审计。

    在创建审计时,你必须给它指定一个名称和事件输出的目标位置。目标文件可以是二进制的文件、Windows Security日志或Windows Application日志。你还可以给审计对象指定一个或更多个可选参数。

    你可以用CREATE SERVER AUDIT语句,如下所示:

     USE master  
    GO 
    CREATE SERVER AUDIT SrvAudit 
    TO FILE (FILEPATH='C:Data', MAXSIZE=5 MB) 
    WITH (QUEUE_DELAY = 3000)
    

    注意,你必须在主数据库中创建一个审计。由于审计是和SQL Server实例相联系的,因此你不能在用户数据库中创建。

    第一行的CREATE SERVER AUDIT语句仅规定审计名称(如SrvAudit)。第二行的TO 子句确定事件输出时的目标位置。例如,我想将输出结果保存在文件中,所以我必须指定TO FILE并规定FILEPATH 值。注意这只是一个路径名。SQL Server将自动命名输出文件,如下所示:

     <audit_name>_<audit_GUID>_<partition_number>.sqlaudit

    在上面的例子中,TO FILE语句还包括了MAXSIZE参数,MAXSIZE参数将文件大小限制为5 MB。该参数是TO FILE子句可选参数之一。假如你将审计数据迁到Application日志或 Security 日志,你就只需要指定日志名选项,示例如下:

     CREATE SERVER AUDIT SrvAudit2 
    TO APPLICATION_LOG
    WITH (QUEUE_DELAY = 3000)

    就像你看到的一样,TO FILE子句已经被TO APPLICATION_LOG子句所替代并且还没有另外规定其他的参数。

    最后一行在CREATE SERVER AUDIT 语句中的就是一个 WITH子句。该子句支持很多个选项,限制了创建审计的方法。在这种情况下,我使用的是QUEUE_DELAY参数并将它的值设为3000。这个参数指定了在创建审计之前要耗费的毫秒数并且。默认数字为 1000 毫秒(即1秒)。

    要了解所有CREATE SERVER AUDIT 语句可选择项和该文文章中的其他语句,请查看Microsoft SQL Server联机丛书。

    创建服务器审计规范

    你创建SQL Server审计之后,必须创建一个服务器审计规范或者是一个数据库审计规范或者是其中的每个。一个服务器审计规范就是和具体的SQL Server审计相关的一个或多个服务审计。活动组就数据库引擎暴露出来的一组相关的事件,例如,我们在进行安全审计操作时,SERVER_OPERATION_GROUP行动组就出现了,如当用户在改变服务器设置时。你可以在每个审计上只创建一个服务器审计。但是,你可以对审计规范增加多个活动组。创建一个服务器审计规范,你需要在主数据库上运行CREATE SERVER AUDIT SPECIFICATION,如下所示:

    USE master  
    GO
    CREATE SERVER AUDIT SPECIFICATION SrvAuditSpec
    FOR SERVER AUDIT SrvAudit
    ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (FAILED_LOGIN_GROUP)
    WITH (STATE=ON)

    第一行CREATE SERVER AUDIT SPECIFICATION语句规定了审计规范名(SrvAuditSpec)。第二行FOR SERVER AUDIT子句指定了与审计规范相关的审计名(SrvAudit)。第三行和第四行为 增加了规范活动组的ADD 子句。在这种情况下,我增加了SUCCESSFUL_LOGIN_GROUP和FAILED_LOGIN_GROUP活动组,跟踪试图登录到SQL Server实例的安全主管。

    最后一行 CREATE SERVER AUDIT SPECIFICATION语句为WITH 子句。WITH 子句包括激活规范的在STATE参数。默认值不能激活审计规范(STATE=OFF)。假如你在创建时不能激活审计规范,你就必须过段时间再激活,在你能够审计活动组之前进行激活。

    创建数据库审计规范

    和服务器的审计规范不一样,数据库审计规范是具体针对数据库的。但是它和服务器审计规范相同的是,你可以增加审计活动组,但是它们仅仅针对数据库。此外,你可以给规范增加单独的审计活动。审计活动就是数据库具体的活动,如删除数据或运行存储程序。

    创建数据库审计规范,在目标数据库中运行CREATE DATABASE AUDIT SPECIFICATION语句,例如:

    USE AdventureWorks2008  
    GO
    CREATE DATABASE AUDIT SPECIFICATION DbAuditSpec
    FOR SERVER AUDIT SrvAudit
    ADD (DATABASE_OBJECT_CHANGE_GROUP),
    ADD (SELECT, INSERT, UPDATE, DELETE
    ON Schema::HumanResources BY dbo)
    WITH (STATE=ON)

    第一行CREATE DATABASE AUDIT SPECIFICATION语句指定了规范(DbAuditSpec),第二行为FOR SERVER AUDIT 子句,用它可以判断和规范相关的审计。接下来,我增加了一个审计活动组,在这里就是 DATABASE_OBJECT_CHANGE_GROUP。在对AdventureWorks2008 数据库执行CREATE、ALTER 或DROP语句时就会出现这个活动组。

    第二个ADD 子句制定了单独审计活动,而不是一个活动组。这样,审计活动就是SELECT、INSERT、UPDATE和 DELETE。但是你要注意,下面一行包含一个ON子句指定的HumanResources schema和dbo安全主管。结果,只要dbo在HumanResources schema中查询一个对象或在 AdventureWorks2008数据库中插入、更新或删除,SQL Server就会将事件记入日志。

    最后,CREATE DATABASE AUDIT SPECIFICATION语句中的最后一个子句就是WITH子句。跟上次一样,你可以在操作完之后就激活审计规范或者过一段时间之后再进行激活。

    激活SQL Server审计

    和我们刚刚回顾的审计规范一样,CREATE SERVER AUDIT 语句中的WITH子句并不支持STATE参数。也就是说你必须在单独的一步中激活审计,如下面的语句中所示:

    USE master  
    GO
    ALTER SERVER AUDIT SrvAudit
    WITH (STATE=ON)

    你可以看到,我使用的是ALTER SERVER AUDIT 语句更改我之前创建的SQL Server审计(SrvAudit)。ALTER SERVER AUDIT语句中的WITH子句支持被我设置成ON的STATE参数,SQL Server会审计这些具体事件。

    查看审计数据

    你可以在 SQL Server Management Studio中用Log File Viewer查看审计数据。另外假如你创建SQL Server审计将事件保存到Application日志或者Security日志,这样你就可以用Event Viewer查看这些数据。我认为回顾事件信息最简单的方法就是将审计数据保存到一个二进制文件中,然后用Log File Viewer回顾这些数据。

    要访问Log File Viewer,就要打开SQL Server Management Studio,扩展Security节点。接下来选择你要复习的审计,然后点击View Audit Log发送Log File Viewer。图1表示以上的例题中SQL Server Audit (SrvAudit)事件实例。

     
    图1:在Log File Viewer中查看审计数据

    以上就是安装审计以及回顾审计数据的步骤。SQL Server 2008让这些步骤比以前版本执行更加简单。你只需要简单创建SQL Server审计,并附上一到两个审计规范,然后激活。其余的工作都由SQL Server完成。要了解更多有关审计方面的信息,请查看微软SQL Server联机丛书。

    上一篇返回首页 下一篇

    声明: 此文观点不代表本站立场;转载务必保留本文链接;版权疑问请联系我们。

    别人在看

    hiberfil.sys文件可以删除吗?了解该文件并手把手教你删除C盘的hiberfil.sys文件

    Window 10和 Windows 11哪个好?答案是:看你自己的需求

    盗版软件成公司里的“隐形炸弹”?老板们的“法务噩梦” 有救了!

    帝国CMS7.5编辑器上传图片取消宽高的三种方法

    帝国cms如何自动生成缩略图的实现方法

    Windows 12即将到来,将彻底改变人机交互

    帝国CMS 7.5忘记登陆账号密码怎么办?可以phpmyadmin中重置管理员密码

    帝国CMS 7.5 后台编辑器换行,修改回车键br换行为p标签

    Windows 11 版本与 Windows 10比较,新功能一览

    Windows 11激活产品密钥收集及专业版激活方法

    IT头条

    智能手机市场风云:iPhone领跑销量榜,华为缺席引争议

    15:43

    大数据算法和“老师傅”经验叠加 智慧化收储粮食尽显“科技范”

    15:17

    严重缩水!NVIDIA将推中国特供RTX 5090 DD:只剩24GB显存

    00:17

    无线路由大厂 TP-Link突然大裁员:补偿N+3

    02:39

    Meta 千万美金招募AI高级人才

    00:22

    技术热点

    微软已修复windows 7/windows 8.1媒体中心严重漏洞 用户可下载安

    卸载MySQL数据库,用rpm如何实现

    windows 7中使用网上银行或支付宝支付时总是打不开支付页面

    一致性哈希算法原理设计

    MySQL数字类型中的三种常用种类

    如何解决SQL Server中传入select语句in范围参数

      友情链接:
    • IT采购网
    • 科技号
    • 中国存储网
    • 存储网
    • 半导体联盟
    • 医疗软件网
    • 软件中国
    • ITbrand
    • 采购中国
    • CIO智库
    • 考研题库
    • 法务网
    • AI工具网
    • 电子芯片网
    • 安全库
    • 隐私保护
    • 版权申明
    • 联系我们
    IT技术网 版权所有 © 2020-2025,京ICP备14047533号-20,Power by OK设计网

    在上方输入关键词后,回车键 开始搜索。Esc键 取消该搜索窗口。