基于Web的铁路供电段电力作业安全督导系统

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:yeaGem
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:设计并实现基于Web的铁路供电段电力作业安全督导系统,利用铁路计算机内部专用网络实现总公司及各供电段电力作业安全督导。
  关键词:Web;B/S模式;安全督导
  中图分类号:TP315文献标识码:A文章编号:1009-3044(2007)04-10896-02
  
  1 引言
  为了适应铁路供电段电力作业劳动安全的现代化分析和管理,借助铁路内部专用网,利用ASP.NET及相关技术己成功开发出基于B/S模式的专用于铁路供电段电力作业安全督导系统,该系统不仅可实现电力作业劳动的动态分析管理,更重要的是能实现铁路电力作业劳动安全的在线式无纸化办公,进行科学分析和管理。系统还具有操作简便、功能全面、维护方便的特点,应用前景广阔。
  
  2 系统设计
  2.1 开发方案选择
  服务器端:操作系统采用Windows 2000 Server(SP4),数据库采用SQL Server2000,技术平台为.NET framework 1.1,开发工具选用微软的Visual Studio .NET 2003,开发语言为C#,Web服务器采用IIS5.0。
  客户端:浏览器IE6.1。
  2.2 系统体系结构
  B/S结构对用户的技术要求比较低,对客户机的配置要求也较低,而且界面丰富、客户端维护量小、程序分发简单、更新维护方便。它容易进行跨平台布置,容易在局域网与广域网之间进行协调。考虑到B/S结构的优势和铁路信号电源远程监控系统实际的应用环境,本系统的开发也采用这种流行的B/S结构。
  在B/S结构中,客户端的标准配置是浏览器,比如在Windows操作系统下大量应用的Internet Explorer。B/S结构在逻辑上采用多层分布式应用结构,即N-层体系结构,它将应用程序分成多个独立的逻辑部分。本系统开发采用常用的3层结构,即将应用程序分为3个逻辑层次:表示层、业务逻辑层和数据层,如图1所示。
  图1 系统逻辑结构
  2.3 数据库设计
  数据库使用SQL Server 2000。SQL Server 2000提供了以Web标准为基础的数据库编程功能。允许使用内置的存储过程以XML格式存储和检索数据。还可以使用XML更新程序进行插入、更新和删除数据。通过Web轻松访问数据。可以使用HTTP来向数据库发送查询、对数据库中存储的文档执行全文搜索、以及通过Web进行自然语言查询。整个系统运行在网络环境下。前台的应用和后台的数据库物理位置可以是在同一台服务器上,也可以是在不同服务器上。
  作业具体项目数据库:作业具体项目等数据表。
  人员信息管理数据库:用户自然信息等数据表。
  设备信息管理数据库:设备自然信息等数据表。
  2.4 用户权限设计
  根据实际的要求,使用该系统的用户角色分为三种:管理员、普通用户和查阅者,不同的角色具有不同的操作权限和主要功能,例如系统管理员拥有最大的权限,包含对系统合法用户管理、设备以及作业具体项目管理。
  2.5 主要功能模块设计
  系统结构如图2。系统在表示上主要分为两个大的层次:前台公共信息和后台信息管理,其中,前台公共信息是整个系统的首页,它显示的是一些公共信息,用户无需登录即可进行查阅;后台信息管理是本系统的主要管理平台,大部分的功能都在这个层次来实现,授权用户才能被允许登入,进行相应的操作。
  图2 系统结构图
  2.6 系统流程设计
  由功能模块设计可知,系统公共信息部分是面向所有用户的,用户无需登录即可查阅;而主要的信息管理部分需要管理员授权后才能登录操作。与大多数需要进行身份验证的系统类似,可分为两个过程:
  (1)进行用户帐号、密码的验证,确认是否是授权用户。
  (2)用户通过验证后,按照不同的角色权限赋予不同的操作。
  根据各功能模块的设计和实际业务流程,系统流程图如图3。
  图3 系统流程图
  
  3 实现的关键技术
  3.1 数据库连接
  数据库连接是数据驱动的Web应用程序所必须的功能模块。ADO.NET提供了OLE DB,ODBC等编程接口来访问数据库,由于该系统开发采用SQL Server 2000数据库,所以使用专门的SQL Server数据提供者能够达到更好的访问效率。进行数据库连接的时候,通常采用以下的步骤来进行:
  (1)引入命名空间
  在开发ASP.NET应用程序时,首先要引用与该操作有关的Namespace后才能使用其功能,方法如下:
  using System.Data;//处理数据时使用
  using System.Data.SqlClient;/连接SQL Server时使用
  (2)配置通用数据库连接字符串
  在ASP.NET应用中很多页面都需要使用数据库连接,在每个页面中都重写连接字符串显得十分复杂,并且维护性和可移植性差。所以,最好的方法是对数据库配置进行统一的管理,将程序中用到的所有连接字符串信息统一存放在Web.config配置文档中,方便在需要进行数据库连接时直接引用即可,并且,当环境发生变化时,直接修改这个配置文件即可。用sa用户连接SQL Server 2000数据库,代码如下:
  
  3.2 用户登录及权限控制
  用户需要登录后才能使用系统的管理功能,根据不同权限角色的设定进行相关的操作,查阅相应的数据。为防范SQL注入式攻击等非法手段登入系统,用户名、密码设计为只能是字母、数字或者下划线的组合,并且采用验证控件RegularExpressionValidator来完成页面级的数据语法验证,保证系统的安全性。
  不同的用户登录后,具有不同的操作权限。本系统使用Session对象来保存用户的权限,它在Session生命期内可以在不同页面中共享数据。Session的生命期在Web.config中定义,默认为20分钟。代码如下:
  
  用户登录验证及保存Session对象的实现方法如下:
  cd.CommandType=CommandType.StoredProcedure; //调用存储过程
  SqlParameter username=cd.Parameters.Add("@username",SqlDbType.Char,100); //设置存储过程参数
  SqlParameter password=cd.Parameters.Add("@password",SqlDbType.Char,200);
  username.Value=t1;
  password.Value=t2;
  SqlDataReader selreader; //设置SqlDataReader类
  selreader=cd.ExecuteReader(); //命令执行
  if (selreader.Read()==true) //验证
  {Session["username"]=selreader.GetString(1); //用户名存入Session
  Session["password"]=selreader.GetString(2); //用户密码存入Session
  Session["userlevel"]=selreader.GetString(3); //用户权限存入Session
  selreader.Close(); //关闭连接
  myConnection.Close();
  Response.Redirect("manage.aspx"); //通过验证进入管理页面}
  else //验证失败,显示错误信息
  {selreader.Close(); //关闭连接
  myConnection.Close();
  Label1.Text="用户名或密码错误";}
  在需要进行权限控制的地方,加入一个条件判断即可实现。比如,后台管理界面只有通过登录后才能访问,若企图直接键入地址等方式非法访问未授权地址,将被拒绝,页面将错误提示,代码如下:
  if(!Page.IsPostBack)
  {string userlevel;
  userlevel=(string)Session["userlevel"];
  if( userlevel.Trim()!="系统管理员")
  {Page.Visible=true;}
  else
  {Page.Visible=false;
  Response.Redirect(Error.aspx); //显示错误信息
  }}
  合法登录后,通过验证用户类型系统将针对性地显示相关操作页面,如系统管理员权限最大,显示可操作功能就越多。按权限显示界面实现代码如下:
  public bool validateUserLevel(string a)
  {a=a.Trim();
  if(a=="系统管理员")
  {return true;}
  else return false;}
  3.3 .NET环境下水晶报表实现
  本系统中主要使用“推模式”来创建水晶报表,以信号电源工作状态表为例,使用“推模式”创建水晶报表具体实现步骤如下:
  (1)设计一个DataSet。把服务器资源管理器“数据连接”的RailwaySTUS数据库中Status表拖放到Dataset1.xsd数据集文件中。
  (2)创建一个.rpt文件同时将其指定给上一步建立的DataSet。
  (3)在aspx页面中拖放一个CrystalReportViewer控件同时将其与前面的rpt文件建立联系。
  (4)在代码中访问数据库并把数据库存入DataSet。
  (5)报表文件绑定数据源,指定CrystalReportViewer控件的ReportSource属性。在页面隐藏类里添加BindReport()函数,并在Page_Load事件里调用BindReport()函数。代码如下:
  string strConn = "Server=10.50.8.2;DataBase=Railway;UID=sa;PWD="; //指定连接数据库字符串
  CrystalReport2 oCR = new CrystalReport2(); //实例化报表文件
  Dataset1 ds = new Dataset1(); //实例化数据集
  SqlConnection MyConn = new SqlConnection(strConn); //获得连接
  MyConn.Open();
  string sql = "Select * from Status"; //查询语句
  SqlDataAdapter MyAdapter = new SqlDataAdapter(sql,MyConn); //实例化数据适配器
  MyAdapter.Fill(ds,"Customers"); //填充数据集
  oCR.SetDataSource(ds); //报表文件绑定数据集
  this.CrystalReportViewer1.ReportSource =oCR; //指定CrystalReportViewer1控件的ReportSource属性
  
  4 结束语
  本系统立足于软件开发技术发展的前沿,对微软最新发布的.NET开发平台的框架、关键技术和核心服务进行了研究及应用,实现了铁路供电段电力作业安全督导。经过试运行,无论从数据的安全性、系统的可靠性、稳定性方面,还是从系统可操作性、简便性、实用性等方而均达到了预期的效果。
  参考文献:
  [1]郑耀东,蔡骞. ASP.NET网络数据库开发实例精解[M]. 北京:清华大学出版社,2006.36.
  [2]樊建. ASP.NET+ADO.NET项目开发实例[M]. 北京:清华大学出版社,2004.189.
  [3]刘廷,刘帆. ASP.NET开发实例完全剖析[M]. 北京:中国电力出版社,2006.183.
  [4]王雪松,申群太,刘家乐. 基于ASP.NET铁路培训管理系统的设计与实现[J]. 铁路计算机应用,2006(2).48.
  本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。
其他文献
《完美国际》中的生产技能目前开放了四种,即巧匠、铁匠、裁缝和药师。与国内版不同的是,国际版的玩家可同时学习这四种生产技能,因此也就造就了大量的职业生产技能人的出现。国际版开放至今也近五个月的时间,想必游戏中的许多玩家早已将生产技能学到了很高的等级,并且也因这些高级生产技能而受益非浅。但是,由于高级生产技能的学习要求十分苛刻,同时让不少未学但又想学生产技能的玩家望而生畏。不过,如果大家能从自身的职业
期刊
摘要:我国现在使用的大多是国外研制的C类数据库管理系统,均采用自主访问控制产品,其安全性较低,数据库强制访问控制模块是为提高C 级数据库管理系统的安全性而设计,它外挂于数据库管理系统之上,可以增强系统的安全性。  关键词:数据库;强制访问控制;安全标签;主体;客体  中图分类号:TP311.52文献标识码:A 文章编号:1009-3044(2007)04-10923-01  数据库是电子商务、电子
期刊
摘要:结合嵌入式系统的特点对TCP/IP协议进行分析和精简,并且在KeilC51环境下编程实现了该协议子集,为通用TCP/IP协议的精简提供了一种较为简单的思路。  关键词:嵌入式系统;以太网;TCP/IP协议;UDP;ARP  中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)04-10947-03    1 引言  目前,嵌入式系统与网络的结合已经成为嵌入式系统发展过
期刊
摘要:计算机机房是一个精密仪器聚集的实验室,对它的管理需要用比较科学的方法,本文提出一种基于WebGIS原理的机房管理系统设计方案,服务器采用JSP新技术,能够实现以空间的方式管理计算机机房的各项资源,功能完备便于操作,信息显示简明,使管理员不但能了解整个机房的仪器使用情况,也能掌握机房的网络线路配置。  关键词:互联网地理信息技术;机房信息管理系统;JAVA APPLET  中图分类号:TP30
期刊
摘要:分析传统的认证与授权解决方案的弊端,结合Web services的优点提出将认证与授权抽象出来作为一个单独的Web服务将安全性集中起来供所有应用程序共享的解决方案,并根据该解决方案的要求,实现了J2EE平台下基于JAAS,Web Service的SSO和统一认证授权。  关键词:JAAS,Web Service,单点登录,统一认证授权  中图分类号:TP311.1 文献标识码:A文章编号:1
期刊
摘要:通过对网络中心业务办理过程调查发现,我校网络中心前台业务存在着业务办理手续复杂、用户数据分散等缺点。本文给出了用于提高前台业务办理工作效率和统一数据管理系统的具体设计,包括系统结构设计、数据库设计等。以及关键技术的分析和应用。系统采用Visual Basic.NET作为前端开发工具和ACCESS 2003作为后台数据库管理系统来进行实现。系统的应用提高了前台业务办理的效率,实现了数据的统一性
期刊
摘要:随着计算机网络的迅速发展,网络信息量的迅猛增长,网络攻击方式也在不断翻新。同时,网络入侵检测系统也得到了很快的发展。最后展望当前入侵检测系统的研究内容和发展方向。  关键词:入侵检测;分布式入侵检测系统;安全  中图分类号:TP393 文献标识码:A文章编号:1009-3044(2007)04-10977-01    1 引言  入侵检测(IDS)是一种自动识别针对计算机和网络资源的恶意行为
期刊
摘要:本文介绍了IPv4向IPv6网络过渡的策略及一个基于Windows系统的简易IPv6试验网的构建。并以此为例,介绍了IPv6 地址和路由自动配置、DNS的配置,从而使用户能尽快掌握IPv6的基本概念和使用特点。  关键词:IPv6;过渡策略;试验网  中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)04-10971-02    1 引言  目前被广泛采用的IP协议
期刊
摘要:本文首先描述Web Service在解决安全问题上的现有方案的不足,在此基础上引入了WS-Security规范,并对此从完整性、机密性、认证这三个主要方面进行了详细的描述,最后简要介绍了在SOAP中如何将以上几方面进行综合。  关键字:WS-Security;Web Service;XML Signature;XML Encryption  中图分类号:TP393文献标识码:A文章编号:10
期刊
摘要:为了解决传统专网可扩展性和可维护性比较差的问题,在ISP的IP城域网中,使用MPLS技术组建VPN,通过PE、CE的配置,实现基于IP城域网的BGP MPLS VPN运营。BGP MPLS VPN具有组网容易、易于扩展和维护等优点,为企业节省了大量的人力、物力和财力。  关键词:BGP MPLS VPN;VRF;RD;RT  中图分类号:TP393 文献标识码:A 文章编号:1009-304
期刊