ABAP权限的基本定义及实例学习

  • Post author:
  • Post category:其他



SAP


权限的几个基本概念:


* SAP


系统权限:某


SAP


操作用户能在


SAP


系统中做哪些操作。比如(大致概念)用户


XX-A


只能查看物料信息,在


SAP


系统中就分配事物码


MM03





XX-A





SAP


的权限控制是控制到字段级的,换句话说,其权限控制机制可以检查你是否有权限维护某张透明表的某一个字段。


用户(


User


):具体操作


SAP


系统的用户,即登陆


SAP Logon


输入的用户。使用事物码


SU01


创建一个新的用户


ID


,默认的权限是空白的,不允许任何操作。


单一角色(


Single Role


):简单的说就是一个事物码的集合。其中包含了控制事物码操作的“权限对象”、“权限字段”以及允许的操作及允许的值。用事物码


PFCG


维护。单一角色是相对应复合角色而言的。


复合角色(


Comp. Role


):又叫通用角色,即是多个单一角色的集合。复合角色中可以包含多个单一角色,此复合角色包含了这多个单一角色所控制的权限。复合角色还可以维护具体的“权限对象”、“权限字段”以及允许的字段值及字段操作。用事物码


PFCG


维护。


*


单一角色和复合角色:单一角色好比“


IT


部员”,复合角色好比“


IT


经理”,每个


IT


部员所操作的权限范围不同,而


IT


经理可以具备多有部员的权限,


IT


经理的权限就是多位


IT


部员的权限的一个集合,即在


IT


经理的权限中添加多为


IT


部员的权限即可。就是将多个单一角色分配在一个复合角色当中,取并集。


权限对象(


Authorization Object


),权限字段(


Authorization Field


),允许的操作(


Activity


),允许的值(


Field Value




角色包含了若干权限对象,在透明表


AGR_1250


中有存储二者之间的关系;权限对象包含了若干权限字段、允许的操作和允许的值,在透明表


AGR_1251


中体现了


ROLE/Object/Field/Value


之间的关系;有一个特殊的权限对象用来包含了若干事务码。这个权限对象叫 “


S_TCODE


”,该权限对象的权限字段叫“


TCD


”,该字段允许的值(


Field Value


)存放的就是事务代码;有一种特殊的权限字段用来表示可以针对该权限对象做哪些操作,是允许创建、修改、显示、删除或者其他呢。该权限字段叫 “


ACTVT


”,该字段允许的值(


Field Value


)存放的就是允许操作的代码,


01


代表创建、


02


代表修改、


03


代表显示等;


SAP


系统自带了若干权限对象、默认控制了若干权限字段(对应到透明表的某些字段)。可以用事务码


SU20


来查看系统有哪些权限字段,用


SU21


来查看系统有哪些默认的权限对象。于是我们知道了事务代码与权限对象的区别。从权限控制的范畴来看,事务代码属于一种特殊的权限对象;一个事务代码在执行过程中,为了判断某个


ID


是否有权限执行此事务代码,还可能检查其他若干普通的权限对象。使用


SU22


来查看某个事务代码包含了哪些权限对象。在透明表


USOBX


中,存放了事务码与权限对象的对应关系。


如果大家理解了上面的概念(不理解也没关系,因为我也一开始也没懂),我们开始用实例来讲解如何维护一个用户的权限。


SAP


权限设置常用的事物码:


* SU01


:创建用户


* SU22


:查看事物码中的权限对象


* PFCG


:创建角色


* SU53


:权限测试


1.


创建用户


事物码


SU01


,输入新建用户名:


SAPMOON_01


2.


创建单一角色


ZR_SAPMOON_01


,事物码:


PFCG


。有三种方法:





1


)手工创建





2


)复制创建





3


)继承创建:输入要继承的角色


*


继承与复制的区别:


复制:


A


复制


B





A


创建好后与


B


没有联系,


A


可以自由维护添加事物码


继承:


A


继承


B





B


变更后,


A


也相应变更,


A


中不能添加事物码,可以删除继承关系后单独添加。





4


)维护菜单:此处添加允许操作的事物码,报表或其他功能





5


)维护权限,生产权限参数文件。


这里我们维护的是“菜单”页中事物所控制的权限字段


维护权限字段值(红灯变绿的),点击生成参数文件,保存。





6


)可将单一角色直接分配给用户,分配用户,进行用户比较





7


)保存退出,单一角色


ZR_SAPMOON_01


创建完毕


3.


创建复合角色





1


)创建复合角色


ZC_SAPMOON_01


,事物码同样是


PFCG







2


)复合角色中分配单一角色,不能添加事物码





3


)点击“读菜单”,读取单一角色的菜单。





4


)将复合角色分配给用户,用户比较。





5


)保存退出,创建复合角色成功。


4.SU22


:维护事物码所控制的权限对象及权限字段





1





SU22


,输入事物码,


F8


运行。





2


)左边为


CO01


所有可控制的权限对象。两种状态:


YES





NO


YES


:运行


CO01


时,程序检查此权限对象,判断用户是否可操作。


NO


:运行


CO01


时,程序不检查此权限字段





3


)维护权限字段检查状态及权限字段值。变更后会产生请求号。


5.SU53


:权限测试


6.SUIM


:权限报表


可以更加各种条件查询用户权限信息



SE93



查询所有


TCODE


或者


table: tstc



SE16



display



SUIM



查询用户信息的报表们