欢迎来到学术参考网

电子商务系统开发过程中的安全设计

发布时间:2015-07-09 09:56
[摘要] 安全设计是开发电子商务系统的关键问题之一。其核心在于后台的数据访问控制和前端web页面的访问控制。本文在描述并分析了目前主流的基于角色的数据访问控制和基于技术的web页面访问控制的基础上,提出了基于数据和web页面双重访问控制的安全模型——dwacbsm(data and web access control based security model)。
  [关键词] 电子商务系统 开发 安全 设计
  
  一、问题的提出
  
  就目前主流b/s(browser/server,浏览器/服务器)模式的电子商务系统开发设计而言,其对应的安全模块设计主要包括两方面的工作:其一是对后台数据的安全访问控制;其二是对web页面的访问控制。但在系统的具体开发过程中,两者并非孤立而是彼此关联地分布在b/s模式所对应的三层结构(表示层、应用层、数据层)的每一个层次之中。
  目前流行的数据访问控制方式是基于角色的访问控制(rbac,role base access control);而微软的基于.net技术的web认证方式可方便地实现对web页面的安全访问控制。在具体的开发过程中可将两者有效结合,实现所谓基于数据和web双重访问控制的安全模型——dwacbsm(data and web access control based security model)。
  
  二、基于角色的数据访问控制(rbac)
  
  rbac的核心思想在于:对数据访问的“许可 (permission)”权限被分配给特定的角色,而角色可被指派(赋予)给不同的用户,不允许用户直接与许可关联。c对数据访问的“许可 (permission)”权限由数据库管理员统一管理,并可根据实际需要定义不同的角色;用户根据其职能和责任被指派(赋予)给相应的角色并取得角色所具有的许可权限。
  rbac安全策略具有下列优点:大大降低了数据库管理员的工作量和工作的复杂度。数据访问的权限分配通常是管理员的一项繁重工作,而在rbac中根据用户的实际工作岗位将用户与角色相关联。一方面,定义、添加、删除角色中的用户易于操作。另一方面可以通过更改角色的权限实现对大批量用户权限的更新。在实际系统中,由于用户角色的数量总是远远少于用户的数量,而且角色也相对稳定,用户的变化则相对频繁,所以rbac的管理代价是很小的。
  系统管理员可以通过定义角色、角色分层、角色限制来实现广泛、复杂的安全策略。在具体电子商务系统实现过程中,可设计下列通用的数据库逻辑模型,以配合rbac安全策略的实施。
  数据访问控制的管理可以分两个层次来设计,一是用户和角色的管理,这是系统管理员的工作;二是对用户及用户操作合法性的确认。
  1.用户与角色的管理
  系统管理员的系统操作集可定义为:
  systemoperation={adduser,deluser,updateuser,addrole,delrole,updaterole,addpermissionassignment,delpermissionassignment,addroleassignment,delroleassignment}
  即分别为:添加用户、删除用户、更新用户、添加角色、删除角色、更新角色、为角色增加学科、删除角色的某个许可、为用户分配角色、取消用户的某个角色。在具体数据库设计时可设计相应函数来加以实现。
  2.用户及用户操作合法性的确认
  对用户身份的认证是通过对“用户→口令”的检查来实现的。一旦用户通过认证,就为用户产生一个有效的“票据”,该票据是用户进行系统访问的“通行证”。
  通过认证的用户,每次访问敏感数据前都要进行许可检查。这个过程是通过查询userrole表和acl来完成。只有当该用户对应的角色具有目标数据的操作许可,并且角色可以访问的密级不低于数据的固有密级时,认证才能通过。这个过程可考虑使用下述自定义的函数实现:
  ispermission(ticket,operation,objiect):确认用户user对目标数据object是否具有操作operation的许可权力,其中ticket是用户的票据。
  在具体实现的过程中,如采用.net作为开发平台,考虑到.net架构的clr(common language runtime,通用语言运行环境)针对sql server进行了优化,故选用sql server数据库是效率很高的一种方式。


  
  三、web页面的访问控制
  
  对web页面访问控制的目的在于防止敏感页面的非法访问。web页面访问控制是在表示层实现的。如采用技术来设计系统的表示层时,需分成两个部分来设计:其一是用户的认证与授权;其二是根据用户权限定制网页。
  对web访问的认证方式是和系统选用的开发标准向关联的。考虑到微软的技术提供了更灵活的方式,并易于实现。
  
  四、基于数据和web页面的双重访问控制
  
  上述基于rbac的数据访问控制策略和web页面的认证和授权,组成了本文所提出的基于数据和web双重访问控制的安全模型——dwacbsm(data and web access control based security model)。
  系统的安全模型由数据访问控制和web访问控制两个部分组成。数据访问控制是安全模型的主要部分,它管理用户认证、访问特许权检查工作。其中特许权检查模块是数据访问模块对外的接口。当用户调用特许权检查模块时,特许权检查模块把用户票据、目标对象名称、操作分别传给用户管理模块和目标管理模块,如果口令非法或者目标对象不存在,则立即通知特许权检查模块;否则用户管理模块将用户id、目标对象管理模块、目标id和操作代码传给用户角色管理模块,用户角色管理模块通过检查用户所属角色并查询acl来确定用户是否具有操作许可,完成后把许可信息反馈给特许检查模块,特许检查模块根据存取规则到目标对象管理模块中获取数据。
  
  参考文献:
  [1]吴晨孙少波叶莞:数据库项目案例导航.清华大学出版社,2004
  [2]齐治昌谭庆平宁洪:软件工程.高等教育出版社,2004
  [3]joe martinbrett tomson:循序渐进 程序设计.中国青年出版社,2001

上一篇:基于数据仓库三层架构的商务智能系统研究

下一篇:基于电子商务与信用关系的信用体系的构建