EBS初始化用户密码脚本

---修改密码,并且将限制用户下次登录的时候(第一次登录),强制要换一个新的口令:
---此过程可以完全模拟我们在标准用户的Form里面初始化用户的密码的动作!

---最后要说明的是,这个处理过程是通过研究标准创建用户的画面得出来的结果,所以,如果有需要,请放心使用!

SELECT last_logon_date,password_date,LAST_UPDATE_DATE,LAST_UPDATE_LOGIN
FROM FND_USER
 WHERE USER_NAME = 'WX214492';

DECLARE
   P_USER_NAME FND_USER.USER_NAME%TYPE;
   P_INIT_PASSWORD VARCHAR2(30);---初始化密码,非加密的。
   ---
   l_change_flag VARCHAR2(10);
   l_reason varchar2(2000);
BEGIN
    ---输入参数(用户名和初始化的密码)
    P_USER_NAME := 'WX214492';
    P_INIT_PASSWORD := 'abc123';
    
    ---------
    ---处理--
    L_change_FLAG := fnd_web_sec.change_password(P_USER_NAME,P_INIT_PASSWORD);


    IF L_change_FLAG = 'Y' THEN
        -- Bug 7016473 - During an administrative reset, set the last_logon_date to NULL
        -- instead of SYSDATE.  last_logon_date should reflect the date the user last
        -- logged in successfully, not the date the user's password was reset.
        -- This does not regress the fix for bug 4690441 because in fnd_web_sec.disable_user
        -- if last_logon_date is NULL, the last_update_date will be used which is the same
        -- date of the sysadmin reset, so the effect is the same.
        --
        -- Reset password_date field to null to force password 
        -- expiration the next time user logs on.
        --
        UPDATE FND_USER
        SET last_logon_date= NULL
           ,password_date = NULL
           --,LAST_UPDATE_DATE = SYSDATE
           --,LAST_UPDATE_LOGIN = FND_GLOBAL.LOGIN_ID
         WHERE USER_NAME = P_USER_NAME;
        
        COMMIT;
        ----
        DBMS_OUTPUT.PUT_LINE('成功初始化用户('||P_USER_NAME||')的密码为:'||P_INIT_PASSWORD);
    ELSE
        ---显示为什么不可以修改
        l_reason := fnd_message.get;
        fnd_message.set_name('FND', 'FND_CHANGE_PASSWORD_FAILED');
        fnd_message.set_token('USER_NAME', P_USER_NAME);
        fnd_message.set_token('REASON', l_reason);
        app_exception.raise_exception;
    END IF;
END;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值