杨斌
[摘要] 随着企业信息化发展水平的不断提高,企业管理的信息系统也是越做越大,用户数量也是不断增加,如何精确地控制系统用户的访问权限,不越权操作,满足企业内控管理要求,降低企业管理风险,是大型管理信息系统建设需要考虑的重要问题。本文简要介绍大型管理信息系统权限控制的策略。
[关键词] 信息系统; 权限控制; 策略
[中图分类号] F272.7 [文献标识码] A [文章编号] 1673 - 0194(2013)06- 0071- 02
1 什么是权限
权限对于一个信息系统来说,就是用户在系统中能够做哪些操作。说来简单,但是系统实现起来并不是一件容易的事,这要涉及到系统的用户管理、角色管理、权限对象管理、权限分配管理、内控互斥检查等。要求系统在最初设计时就要考虑每个系统功能都要关联权限控制的问题。
2 权限控制的设计
2.1 明确权限控制的精度
对于一个大型管理信息系统,在系统建设的最初设计时要考虑系统的权限要控制到什么程度才能满足管理需求,一般从低到高会分为3个级别:用户级、程序级、权限对象级。用户级就是只要系统中设定了用户,用户就可以使用系统的所有功能,这样的权限控制一般会在比较小的系统中应用。程序级就是在系统中给用户分配可以访问具体的哪些程序,可以利用角色定义一组程序来管理用户权限。这样的权限控制一般会在中型规模的信息系统中应用。权限对象级就是系统中给用户分配可以访问某一个程序中的某个给定的权限对象,如操作对象的“创建”、“修改”、“删除”、“浏览”,组织架构对象中的某些单位信息等等,这是大型管理信息系统建设应该采用的权限控制模式。
2.2 权限控制设计的功能
(1) 用户管理:系统用户基本信息的添加、删除、修改、查询、锁定、重置密码等功能。
(2) 程序管理:程序信息的添加、删除、修改、查询功能,以及在程序中应用的权限对象的添加、删除、修改、查询和分配功能。
(3) 权限对象管理:权限对象的添加、删除、修改、查询功能。
(4) 角色管理:角色的添加、删除、修改、查询功能。
(5) 角色-权限对象“1对多”关系分配:包括在角色中添加、删除、修改、查询程序和程序中要访问的权限对象。
(6) 用户-角色“1对多”关系分配:给用户分配定义好的角色,达到用户权限控制的目的。
3 权限分配的原则
3.1 满足内控的权限互斥要求
大型管理信息系统的管理功能一定要符合内控管理的要求,权限的分配要满足权限互斥的要求,一般系统在上线前都要按系统的特点和管理的要求,制定权限职责分离矩阵,明确互斥权限关系,矩阵中定义了哪些功能在应用时与其他功能是互斥的,一个人不能拥有具有互斥关系的功能。用户权限互斥关系要定期检查,避免管理员在赋权是给予了用户更大的权限或是赋权时出现了权限叠加。权限的检查可以人工按照互斥矩阵检查,也可以开发一套权限管理系统,在系统中定义用户权限互斥矩阵,系统自动判断权限互斥。
3.2 满足系统应用的需求
大型管理信息系统的权限赋值既要满足内控管理要求,还要满足企业的管理需求,有时这是一对矛盾,解决这个问题需要系统在实施时要合理地调整管理人员的岗位设置,必要时要按内控管理要求增设岗位以满足企业的管理需求。对于确实无法避免用户权限互斥的问题,在管理上要对这些岗位人员的操作加强监控,定期检查,避免出现管理风险,给企业造成不必要的损失。
4 系统的实现逻辑
4.1 数据结构设计
用户:用户ID、账号、用户名、密码。
角色:角色ID、角色描述。
程序:程序ID、程序描述。
权限对象:权限对象ID、权限对象描述。
程序-权限对象:程序-权限对象ID,程序ID,权限对象ID。
角色-程序:角色-程序ID,角色ID,程序ID。
用户-角色:用户-角色ID,用户ID,角色ID。
4.2 程序控制设计
登录程序:用户登录时,比较用户名和密码,成功后将用户名和登录状态放在相应的变量中,BS模式可以将用户和登录状态保存在session中。
应用程序:在程序的入口处,判断用户登录状态,成功后,在使用权限对象对应的功能时,判断用户在这个程序拥有的权限对象和权限对象赋值,如果有,执行该功能;如果没有,提示退出。
5 结 语
大型管理信息系统的权限控制策略,决定了系统能否安全可靠地使用,系统的开发人员在系统设计时就要考虑系统权限的控制,本文所提到信息系统的权限控制策略,适用于大型管理信息系统的权限控制,对于一般信息规模系统来说,可以在这个策略的基础上进行必要的简化。
主要参考文献
[1] [德]萨斯喀-亚历山大·拜尔. SAP权限系统[M]. 陈跃东,译. 北京:东方出版社,2006.