数据库安全监控装置和方法

文档序号:6471982阅读:161来源:国知局
专利名称:数据库安全监控装置和方法
技术领域
本发明涉及数据库管理,尤其涉及一种数据库安全监控装置和方法。
背景技术
在现有的数据库技术中,数据库管理系统只对数据库连接时进行甄别, 甄别方式一般采用用户名和密码校验,对成功的连接不再设置合法性的监控 和管理。实际数据库运行中,又存在以下数据库被非法访问的可能
1、 开发人员一般习惯性将数据库用户名和密码设置成固定的,黑客很容 易通过各种手段获得到数据库用户名和密码,从而进入数据库;
2、 开发人员将用户名和密码进行动态设置,但是由于一些数据库管理系 统提供了和操作系统信任的技术,使得黑客可以通过骗取操作系统的信任, 从而绕过数据库管理系统对用户名和密码的检验;
这样,数据库管理系统对成功连接运行过程中监控和管理的缺失,使得 黑客一旦侵入数据库就会有足够的时间进行破坏性操作。

发明内容
本发明的目的是克服现有技术中对数据库运行中的安全情况进行管理和 监控的缺失,容易被人一旦入侵成功有足够的时间进行破坏的技术问题,提 供一种可以自定义安全级别的数据库安全监控装置和方法,从而达到加强数 据库安全的目的。
本发明提出的数据库安全监装置包括一设置在数据库前端的监控管理模 块和设置在用户端的连接申请模块。数据库监控管理模块主要功能是甄别数 据库连接用户的合法性以及连接的运行状况,结合已定义的安全级别记录数 据库的运行情况并对非法的或超出安全要求的连接强制断开;数据库维护一 个客户端注册信息的链表L,每个链表节点N至少包括标识唯一客户端的注册 信息和连接标志;连接申请模块功能是向数据库监控管理模块发出连接请求, 并发送本客户端的标识信息,以供数据库监控、管理模块甄别连接的合法性 和监控、管理到数据库连接是否在安全级别允许范围内。
本发明提出的数据库安全监方法在所述的监控管理模块在审核连接申请 过程中,执行下列步骤
4a. 连接申请模块,读取客户端注册信息C并将该客户端参数C和已注册 客户链表L中的注册信息进行匹配查找,若匹配査找失败,直接返回客户端 申请模块"未注册"状态;如匹配成功执行步骤b;
b. 找出注册用户的对应节点,提取该节点的数据库连接标志信息,若该 节点的数据库连接标志为"未连接",则将该节点的数据库连接标志位设置 为"预连接",同时返回连接申请模块"预连接"状态;若该节点的数据库 连接标志是"预连接",直接返回给返回连接申请模块"正在处理请等待" 状态,以免申请人多次发出请求;
c. 客户端收到转发的状态信息后,如是"预连接"状态,直接连接数 据库,如是"等待"状态,则放弃多次请求。
所述的监控管理模块在监控数据库安全连接过程中,执行下列步骤
a. 数据库监控管理模块按预设的安全参数,定时对数据库连接用户进行 扫描,对数据库的所有连接状况进行捕捉;
b. 将捕捉到的连接用户与上次扫描捕捉到的用户进行比较,找出所有的 新的链接,并将该新链接的客户端信息查在已注册用户链表L节点中匹配查 找,若该新链接用户的连接状态为"预连接",则是合法用户,若匹配失败, 则将该连接用户断开;
c. 将本次审核的连接状态参数记录更新,并存储到运行日志文件Log中。 与现有技术相比,本发明提出的数据库安全监控装置和方法通过数据库监
控管理模块对数据库运行状况的监控和管理,结合客户端信息注册和连接时 的请求设定,能很好地甄别出非法的或超出设定安全范围的到数据库的连接, 并及时断开这些连接,从而自动完成对数据库运行状况的监控和管理,很好 地补充了当前数据库管理系统对数据库运行状况监控、管理的缺失,极大地 增强了数据库的安全性。


下面结合附图和较佳实施例对本发明进行详细的说明,其中
图l是本发明硬件的原理框图2是本发明对数据库申请链接的流程图3是本发明对数据库运行进行监控的流程图。
具体实施例方式
本发明对数据库安全自动监控和管理的原理如图1所示。本发明提出的数据库监控装置包括一设置在数据库30前端的监控管理模块20和设置在用 户端的连接申请模块10。数据库监控管理模块20启动时读取预设的安全参数 S和已注册的客户端信息参数r,并维护一个已注册的客户端信息链表L,该 链表节点包含己注册的客户端注册信息、数据库连接标志等多项数据。同时 数据库监控管理模块20进入定时对数据库运行状态监控管理的模式中,并监 听用户端的连接申请。
监控管理模块20在审核连接申请过程中,执行下列步骤
a. 连接申请模块IO,读取客户端注册信息C并将该客户端参数C和已注 册客户链表L中的注册信息进行匹配査找,若匹配查找失败,直接返回客户 端申请模块IO "未注册"状态;如匹配成功执行步骤b:
b. 找出注册用户的对应节点,提取该节点的数据库连接标志信息,若该 节点的数据库连接标志为"未连接",则将该节点的数据库连接标志位设置 为"预连接",同时返回连接申请模块10 "预连接"状态;若该节点的数据 库连接标志是"预连接",直接返回给返回连接申请模块10 "正在处理请等 待"状态,以免申请人多次发出请求;
c. 客户端收到转发的状态信息后,如是"预连接"状态,直接连接数 据库,如是"等待"状态,则放弃多次请求。
监控管理模块20在监控数据库安全连接过程中,执行下列步骤
a. 数据库监控管理模块20按预设的安全参数,定时对数据库连接用户 进行扫描,对数据库的所有连接状况进行捕捉;
b. 将捕捉到的连接用户与上次扫描捕捉到的用户进行比较,找出所有的 新的链接,并将该新链接的客户端信息在已注册用户链表L节点中匹配査找, 若该新链接用户的连接状态为"预连接",则是合法用户,若匹配失败,则 将该连接用户断开;
c. 将本次审核的连接状态参数记录更新,并存储到运行日志文件Log中。 在上述数据库连接申请和运行过程中的监控操作中,数据库监控管理模
块20不断地对数据安全级别定义和客户端注册信息进行维护,包括对安全参 数S的维护,S至少包含定时扫描时间参数T,系统自动对原有的安全参数保 存文件F进行更新并保存;对输入客户端注册信息参数r,客户端注册信息参 数包含客户端的网卡物理地址、ip地址、机器名称等信息的维护,系统自动 对原有的客户端注册信息保存文件R进行更新并保存。
在本发明中,所述的数据的安全参数S不限于只包含定时扫描时间,还可 以包含其他方面的设置,如连接数量,"预连接"状态的有效时间,操作允许的类型,操作允许的延时,连接对资源的占用量等数据库连接可以捕捉
到的相关参数;同样客户端的注册信息也可以不仅限于包含网卡物理地址、 ip地址、机器名等;申请连接的过程的控制也可以根据实际的需要加强控制, 如对连接时分配数据库用户权限、动态控制数据库访问凭证等。
在本发明的实施方式中,对数据库连接和监控管理还可以采用以下两个 方式实现
(一) 在用户端连接数据库30时加强控制。具体实现可以使启动数据库
监控管理模块20屏蔽掉一切到数据库的连接方式,只有数据库监控管理模块 20接收到用户申请模块10发出的连接申请后才临时给用户端一个连接方式, 并且在用户端连接成功后重新蔽掉一切到数据库的连接方式。
(二) 在用户端连接数据库30时,用户端40申请后,必须在有效时间 内完成连接,且每次申请只允许一次成功连接。具体实现可以使数据库监控 管理模块20维护的已注册的客户端信息链表L的节点还包含一等待时间t数 据项,初始化状态下该数据项为0,当把连接标志设置为"预连接"时,也将 该数据项设置为t,并在运行过程中对t递减,当t为0时强制将连接状态设 置为"断开";另外,在对所有新连接处理时,按客户端进行分组统计,若 同一用户端有大于1的m个新连接,将最近的m - 1个连接强制断开。
本发明提出的数据库安全自动监控和管理方法与现有技术相比,具有以 下优点
(一) 安全可靠
对数据库运行中的监控和管理,结合客户端注册信息和预设的安全参数, 能及时发现非法连接或超出安全允许的连接,并断开这些连接,极大的提高 数据库运行中的安全性。
(二) 技术容易封装,能很方便地在不同软件中使用 本发明很容易封装成数据库监控管理模块和连接申请模块,且它们开发
封装完成后,可以直接布置在任何软件中,接口简单不会给软件的开发带来 任何附加工作量。
虽然本发明己参照上述实施方式进行了描述,但本技术领域的普通技术 人员应当认识到,上述实施方式仅用来说明本发明,并非用来限定本发明的 保护范围,任何在本发明的精神和原则范围之内,所做的任何修饰、等效替 换、改进均应包含在本发明的权利保护范围之内。
权利要求
1、一种数据库安全监控装置,其特征在于包括设置在数据库前端的数据库监控管理模块和设置在用户端的连接申请模块,所述的监控管理模块在数据库运行过程中对已连接用户执行下列步骤a. 数据库监控管理模块按预设的安全参数,定时对数据库连接用户进行扫描,对数据库的所有连接状况进行捕捉;b. 将捕捉到的连接用户与上次扫描捕捉到的用户进行比较,找出所有的新的链接,并将该新链接的客户端信息查在已注册用户链表L节点中匹配查找,若该新链接用户的连接状态为“预连接”,则是合法用户,若匹配失败,则将该连接用户断开;c. 将本次审核的连接状态参数记录更新,并存储到运行日志文件中。
2、 如权利要求1所述的监控装置,其特征在于所述的连接申请模块 执行下列步骤a. 连接申请模块,读取客户端注册信息C并将该客户端参数C和已注 册客户链表L中的注册信息进行匹配查找,若匹配查找失败,直接返回客 户端申请模块"未注册"状态;如匹配成功执行步骤b;b. 找出注册用户的对应节点,提取该节点的数据库连接标志信息,若 该节点的数据库连接标志为"未连接",则将该节点的数据库连接标志位 设置为"预连接",同时返回连接申请模块IO "预连接"状态;若该节点 的数据库连接标志是"预连接",直接返回给返回连接申请模块"正在处 理请等待"状态,以免申请人多次发出请求;c. 客户端收到转发的状态信息后,如是"预连接"状态,直接连接 数据库,如是"等待"状态,则放弃多次请求。
3、 如权利要求1所述的监控装置,其特征在于所述的数据库安全参 数S至少包含一个定时扫描时间T,系统自动对原有的安全参数保存文件F 进行更新并保存;和输入客户端注册信息参数r,系统自动对原有的客户端 注册信息保存文件R进行更新并保存。
4、 一种数据库安全监控方法,其特征在于:所述的数据库前端设置有 数据库监控管理模块,用户端设置有数据库连接申请模块,所述的监控管 理模块在数据库运行过程中对已连接用户执行下列步骤a.数据库监控管理模块按预设的安全参数,定时对数据库连接用户进 行扫描,对数据库的所有连接状况进行捕捉;b. 将捕捉到的连接用户与上次扫描捕捉到的用户进行比较,找出所有 的新的链接,并将该新链接的客户端信息查在己注册用户链表L节点中匹 配査找,若该新链接用户的连接状态为"预连接",则是合法用户,若匹 配失败,则将该连接用户断开;c. 将本次审核的连接状态参数记录更新,并存储到运行日志文件中。
5、 如权利要求4所述的监控方法,其特征在于所述的数据库安全参 数S至少包含一个定时扫描时间T,系统自动对原有的安全参数保存文件F 进行更新并保存;和输入客户端注册信息参数r,系统自动对原有的客户端 注册信息保存文件R进行更新并保存。
6、 如权利要求4所述的监控方法,其特征在于所述的连接申请模块 执行下列步骤a. 连接申请模块,读取客户端注册信息C并将该客户端参数C和已注 册客户链表L中的注册信息进行匹配查找,若匹配查找失败,直接返回客 户端申请模块"未注册"状态;如匹配成功执行步骤b;b. 找出注册用户的对应节点,提取该节点的数据库连接标志信息,若 该节点的数据库连接标志为"未连接",则将该节点的数据库连接标志位 设置为"预连接",同时返回连接申请模块"预连接"状态;若该节点的 数据库连接标志是"预连接",直接返回给返回连接申请模块"正在处理 请等待"状态,以免申请人多次发出请求;c. 客户端收到转发的状态信息后,如是"预连接"状态,直接连接 数据库,如是"等待"状态,则放弃多次请求。
全文摘要
本发明公开了一种数据库安全监控装置和方法,包括设置在数据库前端的数据库监控管理模块和设置在用户端的连接申请模块,所述的监控管理模块在数据库运行过程中对已连接用户执行下列步骤a.数据库监控管理模块按预设的安全参数,定时对数据库连接用户进行扫描,对数据库的所有连接状况进行捕捉;b.将捕捉到的连接用户与上次扫描捕捉到的用户进行比较,找出所有的新的链接,并将该新链接的客户端信息查在已注册用户链表L节点中匹配查找,若该新链接用户的连接状态为“预连接”,则是合法用户,若匹配失败,则将该连接用户断开;c.将本次审核的连接状态参数记录更新,并存储到运行日志文件中。
文档编号G06F17/30GK101464889SQ20081024181
公开日2009年6月24日 申请日期2008年12月23日 优先权日2008年12月23日
发明者尹立东, 杭小林, 王东卫 申请人:深圳市迈科龙电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1