浅谈电子商务系统开发过程中的安全设计(2)
2013-08-08 01:08
导读:即分别为:添加用户、删除用户、更新用户、添加角色、删除角色、更新角色、为角色增加学科、删除角色的某个许可、为用户分配角色、取消用户的某个
即分别为:添加用户、删除用户、更新用户、添加角色、删除角色、更新角色、为角色增加学科、删除角色的某个许可、为用户分配角色、取消用户的某个角色。在具体数据库设计时可设计相应函数来加以实现。
2.用户及用户操作合法性的确认
对用户身份的认证是通过对“用户→口令”的检查来实现的。一旦用户通过认证,就为用户产生一个有效的“票据”,该票据是用户进行系统访问的“通行证”。
通过认证的用户,每次访问敏感数据前都要进行许可检查。这个过程是通过查询UserRole表和ACL来完成。只有当该用户对应的角色具有目标数据的操作许可,并且角色可以访问的密级不低于数据的固有密级时,认证才能通过。这个过程可考虑使用下述自定义的函数实现:
IsPermission(ticket,operation,objiect):确认用户user对目标数据object是否具有操作operation的许可权力,其中ticket是用户的票据。
在具体实现的过程中,如采用.Net作为开发平台,考虑到.Net架构的CLR(Common Language Runtime,通用运行)针对SQL Server进行了优化,故选用SQL Server数据库是效率很高的一种方式。
三、WEB页面的访问控制
对Web页面访问控制的目的在于防止敏感页面的非法访问。Web页面访问控制是在表示层实现的。如采用Asp.Net技术来设计系统的表示层时,需分成两个部分来设计:其一是用户的认证与授权;其二是根据用户权限定制网页。
对Web访问的认证方式是和系统选用的开发标准向关联的。考虑到微软的Asp.Net技术提供了更灵活的方式,并易于实现。
四、基于数据和Web页面的双重访问控制
上述基于RBAC的数据访问控制策略和Web页面的认证和授权,组成了本文所提出的基于数据和Web双重访问控制的安全模型——DWACBSM(Data and Web Access Control Based Security Model)。
(科教范文网http://fw.nseac.com)
系统的安全模型由数据访问控制和Web访问控制两个部分组成。数据访问控制是安全模型的主要部分,它用户认证、访问特许权检查工作。其中特许权检查模块是数据访问模块对外的接口。当用户调用特许权检查模块时,特许权检查模块把用户票据、目标对象名称、操作分别传给用户管理模块和目标管理模块,如果口令非法或者目标对象不存在,则立即通知特许权检查模块;否则用户管理模块将用户ID、目标对象管理模块、目标ID和操作代码传给用户角色管理模块,用户角色管理模块通过检查用户所属角色并查询ACL来确定用户是否具有操作许可,完成后把许可信息反馈给特许检查模块,特许检查模块根据存取规则到目标对象管理模块中获取数据。
参考文献:
[1]吴晨孙少波叶莞:ASP.NET数据库项目案例导航.
清华大学出版社,2004
[2]齐治昌谭庆平宁洪:
软件工程.高等出版社,2004
[3]Joe MartinBrett Tomson:循序渐进 ASP.NET程序设计.中国青年出版社,2001
[2]