工作中经常碰到SAP账号锁定、忘记密码 需要解锁之类的小事,写代码写了一半就跑去帮别人解锁,很容易打乱开发思路。
之前文章写过BSP网页端自助功能开发,那我们就可以把用户自助账号密码解锁功能部署上去,让用户自己操作了。
设计思路参考其他系统,一般都是点忘记密码,然后发送秘钥到个人移动端,然后输入秘钥对账号操作,SAP系统用了工号登录,我们公司钉钉也用工号登录,就用了工号当做唯一识别。
设计界面(主要用户能秒懂即可,不考虑美观0.0)
1.输入工号
2.点击按钮,钉钉会收到一个验证码
钉钉消息推送这块不展开了,可参考钉钉或微信技术文档
验证码生成:
用当前时间戳转换随机码
cl_abap_random_int=>create( EXPORTING seed = CONV i( sy-uzeit ) min = 1000 max = 9999
RECEIVING prng = ls_randon ).
3.输入验证码
4.解锁+初始化
解锁账号BAPI_USER_UNLOCK
密码修改BAPI_USER_CHANGE
仅提供思路,具体可以私聊