集成数据库安全管理工具的研究与设计
过 怡
(苏州市职业大学 计算机工程学院,江苏 苏州 215000)
Wonderware Intrack是广泛应用于制造行业的生产批次跟踪系统[1],具有很强的扩展性和配置性[2],其后台数据库支持Oracle和SQL Server。在多工厂环境中,由于需要保证制造执行系统的实时性,往往各工厂会安装独立的Wonderware Intrack系统,在实践中发现,这样带来了两个问题:①由于数据库软件厂商在体系架构上的差异,使得Oracle和SQL Server数据库之间的管理模式区别较大,在多实例环境下,管理员需要配置和管理多个Oracle和SQL Server数据库实例,而数据库的安全管理是非常重要的一个环节,由于其配置的复杂性和平台的不同,使得系统安全更依赖于管理员的能力和经验[3];
②Wonderware Intrack没有多实例的管理配置平台,只有单实例的ModelMaker客户端作为管理后台,管理员需要切换不同的Wonderware Intrack系统进行用户权限和机台物料等的配置,而切换需要一系列操作,包括数据库设置→数据库连接→ModelMaker登录,效率较低,且需要重复登录数据库。因此,设计一个集成的数据库安全管理工具,实现对Oracle和SQL Server数据库的统一管理,能够进行基本的Wonderware Intrack系统配置,屏蔽复杂而又不尽相同的数据库之间的操作细节,对于提高整个系统的管理效率和安全性有着重要的意义。
本工具的主要功能分为两个层次:底层是数据库软件的安全管理,上层是Wonderware Intrack的应用层配置管理,数据库是联系两个层次的纽带。
1.1 数据库软件的安全管理
主流数据库都有完备的安全机制,主要包括用户管理、角色管理和权限管理等。Oracle还有更为细粒度的管理机制,如概要文件管理,用以控制对口令文件和内核资源的使用[4]。SQL Server则是以内部机制自动管理内部资源[5]。由于Oracle的角色管理比SQL Server更加细粒度化,不适合集成。因此,本工具将安全管理的重点放在用户管理、权限管理和SQL导出等通用功能的集成上。其中权限管理是核心,包括用户对各种数据库对象的操作,比如表、过程、视图。在普通数据库客户端软件中,这种管理有诸多不便,例如如果要知道某个用户拥有哪些对象的权限,只能通过复杂的查询来弄清楚;
又如要将数据导出,客户端需要直接操作数据库,会带来安全隐患。因此,集成数据库安全管理工具需要能够针对不同数据库平台做出不同的操作,达到在同一系统下实现多实例、多平台安全管理的目的。
1.2 Wonderware Intrack的配置管理
ModelMaker是Wonderware Intrack的单实例管理后台,本工具通过模拟ModelMaker的连接过程,把ModelMaker的连接集成到数据库连接中。这样设计的好处是:①简化了Wonderware Intrack的实例切换;
②把ModelMaker扩展成为多实例管理后台。另外,由于Wonderware Intrack提供了丰富的API,本工具也集成了Wonderware Intrack的常用配置功能,包括用户管理和机台物料的配置。
1.3 图形化管理工具的系统框架
如上所述,本文需要设计一个集成数据库安全机制管理平台,包括Oracle和SQL Server的用户管理、权限管理和SQL导出,并利用ModelMaker的开放平台将Wonderware Intrack的安全和配置管理集成到系统中。安全管理工具的框架结构如图1所示。
图1 安全管理工具的框架结构
集成数据库安全管理平台包括用户登录、用户管理、权限管理和SQL导出四个模块。本工具所有的数据库操作都是可视化运行,运行脚本可从临时SQL文件中查看,运行结果保存在日志文件中。
2.1 用户登录
用户登录集成数据库安全管理平台,需要选择相应数据库。如果需要同时对ModelMaker进行用户管理,需要选择同时登录ModelMaker,输入相应管理员账号密码登录。数据库实例通过XML文件预先定义,包括实例名称和类型,配置格式图2所示。其中,
图2 数据库实例定义
2.2 用户管理
用户管理的主要功能包括:①创建和删除数据库用户;
②更改用户信息,包括授予或者回收角色、密码;
③显示和更改用户的使用状态,包括锁定/解锁/过期。用户管理用到的表和视图如表1所示。
表1 用户管理相关表和视图
由于SQL Server没有直接提供状态变更功能,需要修改表sysxlogins中的保留字段xstatus实现,在多次实验后,本工具采用的实现方式如下:
xstatus = xstatus& (~2048)
在当前状态下,通过对xstatus的变更可以实现状态在正常、锁定和过期之间的转换。
2.3 权限管理
权限管理是系统的核心功能,本工具实现的功能有:①显示所有的用户概要文件、用户、角色和数据库对象权限,以及对应的使用状态,在SQL Server中,本文用自定义角色取代Oracle的用户概要文件;
②将数据库对象的权限授予指定用户;
③回收用户拥有的数据库对象权限。权限管理用到的表和视图如表2所示。
表2 权限管理相关表和视图
2.4 数据导出
本工具实现了将表和视图的数据通过SQL以拼接的形式导出。用户可以选择表或者视图,输入所需的条件,本工具可以将相关数据生成可直接运行的SQL脚本,这是一种更安全、更简便的数据导出方式。SQL导出用到的表和视图如表3所示。
表3 SQL导出相关的表和视图
2.5 Wonderware Intrack的配置管理
如果用户登录系统的同时也选择登录ModelMaker,则用户可以在系统中进行Wonderware Intrack的配置。为了实现与ModelMaker的连接,本工具需要把Wonderware安装后对应的配置连接库文件导入系统,然后通过Wonderware的API连接到Wonderware服务器,语句如下:
OLE_CreateObject(%ItDlg, "InTrack.Dialog.Connect");
%ItDlg.Launch();
登录成功后,当前客户端的ModelMaker连接已经设为所连接的数据库,所以可以直接从系统登录ModelMaker。本工具Wonderware Intrack的配置通过API实现,以用户创建为例,语句如下:
InUser.Create(user_name, password, InSecuritygroup, InUsercertification);
其中InUser是Intrack用户对象,InSeuritygroup是权限组,InUsercertification是用户认证,user_name和password是新建用户账号。
该集成数据库管理工具操作简单,实现了Wonderware Intrack和数据库的登录和安全管理的集成,可以实现对Wonderware Intrack的基本安全配置,能对多实例、多平台下的Oracle或者SQL Server数据库的用户、角色、权限、数据快捷准确配置,切换方便,能够满足大多数情况下的数据库安全管理要求。
另外,该工具具有一定伸缩性,可以单独实现对Oracle和SQL Server数据库的安全管理。
猜你喜欢数据库安全管理工具视图精益管理工具在手术室耗材管理中的应用现代临床医学(2022年1期)2022-02-12质量管理工具在减少CT停机天数中的应用现代仪器与医疗(2021年4期)2021-11-05管理信息系统中数据库安全实现方法活力(2019年21期)2019-04-015.3 视图与投影中学生数理化·中考版(2017年6期)2017-11-09视图非公有制企业党建(2017年10期)2017-11-03浅谈高速公路数据库安全审计中国交通信息化(2017年7期)2017-06-06Y—20重型运输机多视图现代兵器(2017年4期)2017-06-02SA2型76毫米车载高炮多视图现代兵器(2017年4期)2017-06-02hosts文件管理工具网络安全和信息化(2017年9期)2017-03-09高职院校计算机网络安全研究与分析科教导刊·电子版(2016年19期)2016-08-19栏目最新:
- 2024年度在理论学习中心组关于群众路线...2024-01-16
- 在退役军人事务工作领导小组会议上讲话...2024-01-15
- 中秋国庆队伍教育管理工作动员部署会议...2024-01-15
- 2024年度区委书记在文旅农康融合发展大...2024-01-14
- 医院纪检监察干部队伍教育整顿个人党性...2024-01-14
- 教师演讲稿:牢记育人使命,涵养高尚师德...2024-01-13
- 2024年组织部长在市委理论学习中心组专...2024-01-13
- 2024年区人民法院案件质量评查办法(2篇...2024-01-13
- 2024年区长在指导某街道干部作风建设动...2024-01-11
- 在公司成立周年大会上讲话(3篇)(完整...2024-01-10
相关文章: