浅析SQL Server数据库安全系统

时间:2022-09-09 06:18:12

浅析SQL Server数据库安全系统

摘要:本文阐述了 SQL Server的安全机制,提出了如何提高 SQL Server 安全系统的措施,并研究了数据库监控信息获取策略,探讨了SQL Server数据库安全系统的实现。

关键词:SQL Server 安全 系统 分析 措施

1、 SQL Server的安全机制

SQL Server 的安全机制可分为以下三个等级:SQL Server 的登录安全、数据库的访问安全和数据库对象的使用安全。这三个等级可以有效地保护数据库中数据的安全。 用户在使用SQL Server时,需要经过两个安全阶段:身份验证和权限认证。①身份验证阶段:用户在 SQL Server 上获得对任何数据库的访问权限之前,必须合法的登录到 SQL Server 上。②权限认证阶段:在身份验证阶段,系统只检验用户是否有连接SQL Server 实例的权力,如果身份验证通过了,即表示用户可以连接 SQL Server 实例,否则系统将拒绝用户的连接。

2、提高SQL Server安全的措施

2.1使用安全的文件系统 NTFS 是最适合安装 SQL Server 的文件系统,它比 FAT 文件系统更稳定且更容易恢复,而且它还包括一些安全选项,如文件、目录ACL及文件加密(EFS)等。在安装过程中,如果侦测到 NTFS,SQL Server 将在注册表键和文件上设置合适的 ACL。通过 EFS 的数据库文件将在运行 SQL Server 的账户身份下进行加密,也只有这个账户才能解密这些文件。

2.2使用安全的密码策略 安全的密码策略是数据库管理安全配置的第一步,不要让 sa 账号的密码写于应用程序或者脚本中。SQL Server 2000 安装的时候,如果是使用混合模式,那么就需要输入sa 的密码,建议不要使用空密码并定期修改密码。数据库管理员应该定期查看是否有不符合密码要求的账号。

2.3使用安全的账号策略 SQL Server 不允许更改 sa 超级用户名称,更不能删除超级用户,所以必须对 sa 账号进行严格的保护。数据库管理员可以建立一个拥有与 sa 一样权限的超级用户来管理数据库。

2.4加强数据库日志的记录 SQL Server 使用数据库的事务日志来恢复事务。事务日志是对数据库中已发生的所有修改和执行每次修改的事务的一连串记录。

2.5使用协议加密 SQL Server 使用 Tabular Data Stream 协议来进行网络数据交换。若不加密,所有的网络传输都是明文的,包括密码、数据库内容等,这就存在一定的安全隐患,所以,最好使用SSL 加密协议。以下介绍在 SQL Server 2000 上启用 SSL 加密的配置步骤:①在服务器端计算机上,单击 Microsoft SQL Server 程序组中的“服务器网络实用工具”; ②单击选择“强制协议加密”;③验证是否启用了TCP/IP 和/或命名管道;④单击“确定”关闭 SQL Server网络实用工具,然后在“SQL Server 网络实用工具”消息框中单击“确定”; ⑤重新启动SQL Server服务。设置完后,不论客户端是否指定安全连接(即Encrypt=True/False),后续客户端所有连接都将以密文传送。

2.6修改 TCP/IP 使用的端口 SQL Server 一般使用的端口是1433,在实际配置中选择网络配置中的 TCP/IP 协议的属性,将 TCP/IP使用的默认端口变为其他端口。

3、SQL Server安全系统整体结构

3.1横向结构 横向看,该系统按照信息获取系统、分析机系统、控制台系统按照功能不同进行了重新的系统模块结构的划分,并补充了实时状态查询模块,增加了数据库安全监控系统安全威胁分析的数据来源,横向结构分:①信息获取子系统;②分析机子系统;③控制台子系统。

3.2纵向结构 从纵向看,与原有系统不同之处在于,新的数据库安全监控系统在采用获取分析响应的体系结构,构建面向对象开发和面向构件开发的技术基础上,新引入了面向服务框架思想,实现了获取与分析的分离,通信与业务的分离。在整个系统中TCP/IP层,即物理网络层,作为底层存在于系统中,在其上构筑的通信托管层则总揽了系统的全部通信工作,是整个系统的总线,支持异步通讯。

3.3切向结构 若从切面来观察该系统,新系统的关键脉络变得更加清晰,两条关键脉络包括:数据和命令,而且互相内部之间实现了高聚合、松耦合,提高了模块的独立性。

4、系统工作原理

该系统是一种基于主机探测的实时自动攻击识别和响应系统,运行于有敏感数据需要保护内部网络中。通过采取主机监控的方式,获取用户的数据库操作信息。借助于自身内置的攻击特征数据库,识别违反用户定义的安全规则,进行应用级攻击检查。主要包括以下几个方面:①主机报警实现 探头启动之后,将自动实现对于探头所在主机数据库的监控,获取与数据库操作有关的信息,包括数据库操作的SQL 语句、登陆的用户名、数据库主机名称、当前系统用户、操作结果(成功或者失败)等信息,并将信息格式化发送到分析机,分析机通过自身的信息规则分析系统,从这些信息当中分离出对数据库安全有危害的操作,并向控制台发送报警,控制台在接受到报警信息之后,由管理员发出对攻击源IP 地址行阻断的命令。②命令的下发 控制台对分析机以及探头进行控制,对它们进行维护更新,并通过查询的方式,获取探头以及分析机的运行状态。命令由控制台发出后,向分析机或者经分析机向信息获取部分传达,再分别由分析机以及信息获取部分的响应模块对命令加以实现。③数据的传送 探头、分析机以及控制台三者之间通过指定的端口进行数据的传送,所有发送的数据都进行了统一的格式化处理,以固定的格式进行传递。

参考文献:

[1]罗运模,王珊.SQL Server数据库系统基础[M].北京:高等教育出版社,2004.

[2]孟盛.SQL Server数据库安全系统分析[J].价值工程,2011.11

上一篇:浅谈钢结构在火电厂设计中的应用 下一篇:浅谈计算机网络病毒与网络安全维护探讨