好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

浅谈SAP R-3系统权限控制机制和实现过程.doc

10页
  • 卖家[上传人]:gg****m
  • 文档编号:232255427
  • 上传时间:2021-12-30
  • 文档格式:DOC
  • 文档大小:68.59KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 浅谈SAP R/3系统权限控制机制和实现过程[摘要]:本文描述了 SAP系统的权限管理的概念、 控制机制和解决方案,详细介绍SAP系统的权限管理在ERP 项目中的设计实施过程和步骤,及在权限设计时针对信息安 全方面提出的几点建议[关键词]:ERP SAP角色事务代码授权对象权限对 象SAP R/3系统(一个基于客户/服务机结构和开放系统的、 集成的企业资源计划系统)是基于ERP (企业资源计划系统) 技术的一个成熟产品,在国内外大中企业中广为使用系统 包括 HR、FI/CO/TR, PP、MM、MRO、PM、SD、PS、QM、AIS 等多个模块,涵盖了企业经营管理的整个内容它之所以能 够实现复杂环境下的业务集成,保证系统数据的准确、完整, 与其相对完善的权限管理体系有着密切关系一、SAP权限概念SAP系统权限体系引用了账户、角色、参数文件、授权 对象、字段等权限概念,结合系统中企业组织架构及业务处 理的配置等对用户进行权限控制;同时SAP系统采用了多数 据库集成技术,并通过设计大量的数据表记录事务处理的权 限检查情况及系统用户的授权情况图1描述了 SAP权限架构,简单解释了用户、角色、事 务代码、权限对象、权限相互关联关系。

      1•所谓角色即ROLE,是一堆事务代码(TCODE)的集合, 当然还包含有事务代码(TCODE)必备的“权限对象”、“允 许的操作“、“权限字段‘及“允许的值"等,在系统中使 用事务代码PFCG创建维护角色;为了系统的测试与SAP实 施项目的阶段性需要,进一步将角色分为“通用角色”和 “本地角色”,通用角色好比“安措材料员”,本地角色 对应就是“**公司安措材料员”所以,本地角色较之通用 角色的区别就是,在同样的操作权限(事务代码)情况下, 前者多了具体的限制值这个限制值可能是组织架构限制, 也可能是其他业务的限制女口,A公司的安措材料员不能维 护B的内部订单的材料提报2•权限对象(Authorization Objet )、权限字段 (Authorization Field)、允许的操作(Activity)、允许 的值(Field Value)角色包含了若干权限对象,权限对象包含了若干权限字 段、允许的操作和允许的值,在系统透明表AGR_1251中体 现了 ROLE/Object/Field/Value之间的关系有一个特殊的 权限对象用来包含了若干事务码,这个权限对象叫 “S_TCODE”,该权限对象的权限字段叫"TCD” ,该字段允 许的值(Field Value)存放的就是事务代码;有另一种特 殊的权限字段用来表示可以针对该权限对象做哪些操作,是 允许创建、修改、显示、删除或者其他,该权限字段叫 “ACTVT” ,该字段允许的值(Field Value)存放的就是允 许操作的代码,01代表创建、02代表修改、03代表显示等。

      SAP的权限控制是控制到字段级的,换句话说,其权限 控制机制可以检查你是否有权限维护某张透明表的某一个 字段二、 SAP权限控制机制用户在SAP系统中进行业务处理是通过各种事务代码来 实现的,每个事务代码都对应着不同的功能程序程序的设 计除了实现业务处理的基本功能外,还包含执行这个事务代 码所需要进行的授权检查,即Authrization Checko新建一个用户ID时,该用户ID默认的权限是空白,无 权进行任何操作角色的授权参数文件中包含着事务代码的 集合,还包含事务代码所要求的“权限对象"、“权限字 段”、“允许的操作”等,通过将本地角色或直接通过权限 参数文件将不同的权限授予不同的用户,用户主记录中就记 录了他的授权信息当用户执行某事务代码时,事务代码对 应的程序对用户主记录中的授权信息进行权限检查,检查通 过了该用户就具有该处理权限,反之提示用户无权操作三、 SAP系统权限控制解决方案SAP系统实现权限控制分为三个层次:事务代码级、组 织机构级、权限对象字段值级1•事务代码级控制:用户进行业务操作,必须具有该业 务操作对应的事务代码执行权限也就是为其分配的具体角 色中必须在菜单或事物代码中含有该事务代码。

      2•组织机构级控制:用户具有了事务代码的执行权限, 还必须具有相应组织的操作权限才能完成业务按照企业的 实际情况,在SAP系统中根据业务特点设计了不同性质的组 织架构系统中最高的组织级别为公司代码,可以通过为角 色分配不同的公司代码值,将用户的业务限制在不同的公司 代码下组织机构级别的权限控制实现了企业中相近业务的 权限划分四、实例说明以上概念性术语对初次接触权限管理的人员而言可能 过于抽象,现在我们就以ERP项目实施,从建立通用角色, 到最终用户的过程作一个简单的说明对于一个最终用户的建立,我们需要经过如下几个步 骤:1.根据客户需求及其实际工作情况要求,提交事务代码 (TCODE)o这是最终用户使用系统根本元素,从一般意义而 言,我们可以把这些事务代码看成是应用软件系统中的菜单 栏下的具体工具菜单事务代码的提交正确与否直接关系到 最终用户的使用范围,也就是通俗意义下的权限功能因此 我们对于事务代码的提交一般由各功能模块组的关键用户 根据其所在部门的具体业务流程制定,再确定事务代码组成 的合理及其准确性2•事务代码提交之后,就可以开始着手建立通用角色(COMMAN R0LE)o通用角色从名词解释上可以看出,这只是 角色共有的组成部分,从技术上,可以简单的将通用角色看 成是多个事务代码的简单集合,它包含了某一集团用户共用 的事务代码,建立通用角色的目的在于为以后建立本地角色 提供事务代码的共同载体,大大简化了后续工作负担。

      虽然 可以不对通用角色中的权限对象或是组织级别进行控制,但 可以根据实际需要,提前对本地角色中相同部分的权限对象 或是组织级别赋值,这样在本地角色权限对象赋值过程中, 可以提高我们的工作效率 3.通用角色的建立完成之后,需要经过一个通用角色的测试过程,这个测试通常由 权限设置人员完成,测试的内容是将测试用户与各个通用角 色进行一一映射,每次只进入一个通用角色中,主要的任务 是检查事务代码在测试环境中是否能够正常打开,如果不能 正常打开,使用SU53事务代码的权限检查进行比较,对通 用角色中的权限对象修改赋值,或是手动添加该事务代码缺 省的权限对象(OBJECT)4•通用角色测试通过之后,就可以开始建立本地角色(LOCAL ROLE)o本地角色是区分使用同一通用角色下的最 终用户的不同权限,通俗地说就是两人都具有使用某一订单 的事务代码,但工作要求只能让一个人创建,而另外一人只 能查看,而无权创建,这就需要对该事务代码下的某一权限 对象进行不同的授权码来加以区分对第一人赋予创建的权 限,而将第二人的创建权限去除改为查询权限再如:企业 部门中存在的审批机制也可以利用事务代码中的授权码来 实现,这表现在一张日常检修订单创建以后科长要有审1的 权限,部门主任有审2的权限,公司领导具有发布下达的权 限,权限设计需要考虑配置三个授权码,通过授权码控制各 个节点的审批流程及操作权限。

      本地角色的建立对于最终用 户而言是极为重要的,它关系着最终用户的权利分配的合理 与准确5. 对本地角色进行测试是由关键用户来进行的,这是因 为关键用户要针对最终用户的业务流程来进行测试,特别是 针对同一事务代码操作过程的区分及可能在实际业务中存 在特殊情况,只有关键用户(参与ERP项目的业务专责)才 能在系统操作中检验出来权限设计是否存在问题6. 本地角色测试完成后,就可以开始建立最终用户了, 最终用户与本地角色的关系可以为一对一或一对多的关系, 这个过程是由关键用户根据职责分工确定哪些本地角色分 配给具体的最终用户7•最终用户的建立完成以后,用户就可以根据各自的用 户名及其密码登陆系统了,通过一段时间的实际运用和操 作,对各自权限进行验证和校正,通过修改达到最终的要求五、针对信息安全保密方面提几点建议SAP系统自带的后台表结构查询事务代码种类很多,包 括SE16、SE38、SA38等,拥有这些事务代码的用户就可以 轻而易举的查询后台表中的内容,那么系统中财务数据、人 事数据等信息安全性、保密性就不能得到控制,以下浅谈三 点权限控制建议:(一)关于SE38/SA38的控制从安全的角度,原则上,应该限制一般用户在生产系统 中直接运行程序(Tcode: SE38/SA38),因为大多数自开发 程序和报表都可以使用Tcode: SE93建立Tcode,然后授权, 但是,有时又确实需要SE38/SA38来运行一些特殊程序,比 如:(1) SAP的一些排错程序,SAP有时可以将多个逻辑完 全一致的程序建立一大堆不同的Tcode,也可能在业务出错 时Oss会告诉你可运行哪个程序去检查,此时需要SE38/SA38 去运行程序。

      2) 生产系统做业务交易时出现ABAP错误或其它莫名 错误,需要SE38+/H权限3) 自定义的增强,函数或业务复杂的报表,必须有, 需要跟踪生产机器上的业务数据才能判断问题原因,需要 SE38+/H 权限 建议:如有必要,在角色中限制SE38只能跟踪和执行 特定程序二)禁止增强SMOD/CMOD的授权假设在生产机器中授权SMOD,实际上反而会可能造成用户错误地取消增强,事实上类似情况多次发生,有的企业生产机和开发机同处一机,结果, 开发人员在开发机一取消增强, 重!如确实需要跟踪增强的话, 在生产机器跟踪以免影响权限,有的增强竟然是跨client,生产机受影响了,后果很严除非特殊情况,一般也禁止在传输中可激活/取消增强;如何需要跟踪增强,只要找出增强对应的增强函数(表MODSAP包含了增强和函数的对应关系)对应的程序加入SE38允许的OBJNAME中即可三)谨慎放行SAP查询SAP提供的Query功能非常适合快速建立报表,甚至可 以在查询里增加逻辑代码,Query建立步骤简单, SQ03->SQ02->SQ01,可从任何表中迅速查岀数据,所以存在风险建议:SQ01/SQ03可以授权给用户,而信息集的建立SQ02最好不给,随意建立信息集意味暴露所有业务数据,所以信息集请一定使用传输。

      六、结束语以上我重点阐述了权限在SAP系统中的概念及控制机 制,并以简单的案例说明了系统权限的实施过程,及在信息 安全保密方面提出自己的几点建议对于ERP系统而言权限 的设置涵括了通用角色,本地角色及其最终用户的三个主要 过程,它的设计从责任分工的角度出发,将具体工作按岗位 的需求进行合理的拆解,这样就可以把具体的人与岗位分 开,岗位不再会随人的变动而发生改变,做到人员换岗,而 本地角色不需要重新设计因此,在设计SAP系统的权限时, 要充分考虑岗位设置的合理性,对岗位的职能,职责进行科 学的区分,通过权限授权对象限制用户的操作权限,通过事 务代码限制用户的操作范围,从而保证了系统的安全性,数 据的完整性参考文献:[1] 闪四清ERP系统原理和实施北京:清华大学出版社 2006[2] 周玉清ERP理论、方法与实践北京:电子工业出版 社 2006[3] 田军 企业资源计划(ERP)北京:机械工业出版社 2007[4] 田俊国ERP项目实施全攻略北京:北京大学出版社 2007作者简介:门海玲,女,出生于陕西户县,国网陕西省电力公司信 息通信公司,工程师,从事SAP ERP (企业资源计划系统) 方面的研究、实施与运维,从事信息化应用系统的部署、实 施、运行与维护,从事oracle数据库、中间件等日常应用 与运维工作。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.