论文部分内容阅读
随着世界经济及信息技术的迅猛发展,越来越多的企业业务往来通过电子商务系统展开,而系统间的异构带来了诸多不便.为了消除或减弱异构系统间互操作的不便,面向服务的架构体系(Service-Oriented Architecture,SOA)正从理论逐步走向实际应用。在传统软件开发过程中,开发人员需要在B/S和C/S间进行二选一,而智能客户端(Smart Client)技术能够妥善地将两者的优点结合起来,同时摈弃各自关键缺点。本文提出将SOA和Smart Client技术相结合进行软件开发,并以上海绿谷生命系统工程有限公司的直销系统为实例。所开发的系统包括两大部门的五个业务模块:即营运部的门店子系统、客服子系统、物流子系统、个人工作室和财务部的财务结算子系统。系统由一个八人左右的开发团队负责研究开发,历时六个月有余;系统于2007年4月正式投入使用,源代码大约在6万行左右。其中,作者主要负责个人工作室的开发,该子系统辅助直销员进行销售业务。在该子系统内,直销员可以查看产品信息、选购产品、查看定单信息以及个人和团队的业绩状况等,该子系统的源代码行数在8000行左右。各个子系统在功能上是相互独立的,但之间需要进行频繁的数据交换,在开发过程中,各个子系统均选择Web Services作为通讯方法,Web Services以XML文本格式传递数据,能够很好在异构系统中实现数据集成。在个人工作室的客户端,采用智能客户端技术。智能客户端应用程序能够支持在线和离线操作,传统方法在判断网络状态时只对客户端进行检测,系统扩展网络检测算法,不仅检测客户端网络状态,而且开设专门线程检测服务器Web Services连接状态,从而提高系统使用时的稳定性。为了确保web services的数据安全性,本文提出基于关键任务及角色访问控制(Key-Task and Role Based Access Control,KTRBAC)。即在工作流环境中,对于关键业务流程系统采用基于任务和角色的双重访问控制,而其他业务则直接采取基于角色访问控制。同时为了使数据能在各个子系统间顺畅流动,采用SAML与XACML相结合的方式来实现web services的访问控制。采用XACML对用户进行访问授权控制,以SAML进行验证和控制,其访问控制信息包含在Web Services的SOAP head信息中。这种实现方式能够解决系统的身份验证、单点登录和访问控制等安全问题。