Here we will discuss about useful Steps to recover APPS password in EBS R12. Suppose someone forgot to remember the APPS and SYSADMIN password, just follow the below steps to recover the same password.
To recover APPS password:-
create FUNCTION apps.decrypt_pin_func(in_chr_key IN VARCHAR2,in_chr_encrypted_pin IN VARCHAR2) RETURN VARCHAR2 AS LANGUAGE JAVA NAME
‘oracle.apps.fnd.security.WebSessionMa nagerProc.decrypt(java.lang.String,java.lang.String) return java.lang.String’;
/
set linesize 200 long 300
select ENCRYPTED_FOUNDATION_PASSWORD from apps.fnd_user where USER_NAME=’GUEST’;
Below will show the apps password.
SELECT apps.decrypt_pin_func(‘GUEST/ORACLE’,’ZG59262C41BF17CF61B68941A4A4AD707B61C407D54D52615AA1344981200AA4089E1BD5FB811FB1E1517D61D0EDCD008CDE’) from dual;
How to recover SYSADMIN password.
Step to Find SYSADMIN PASSWORD :
Step# 1:
SQL> conn apps/APPS123;
Connected.
Step#2: Create package as get_pwd
SQL> CREATE OR REPLACE PACKAGE get_pwd AS
FUNCTION decrypt (KEY IN VARCHAR2, VALUE IN VARCHAR2)
RETURN VARCHAR2;
END get_pwd;
/
Package created.
Step# 3: Create package body as get_pwd
SQL>
CREATE OR REPLACE PACKAGE BODY get_pwd AS
FUNCTION decrypt (KEY IN VARCHAR2, VALUE 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 get_pwd;
/
Package body created.
Step# 4: In this step we will see the sysadmin password.
SQL> SELECT usr.user_name,get_pwd.decrypt((SELECT (SELECT get_pwd.decrypt(fnd_web_sec.get_guest_username_pwd,usertable.encrypted_foundation_password)
FROM DUAL) AS apps_password FROM fnd_user usertable WHERE usertable.user_name =(SELECT SUBSTR(fnd_web_sec.get_guest_username_pwd,1,INSTR
(fnd_web_sec.get_guest_username_p ‘/’ )- 1)FROM DUAL)),usr.encrypted_user_password) PASSWORD FROM fnd_user usr WHERE usr.user_name = ‘&USER_NAME’;
Enter value for user_name: SYSADMIN
old 23: WHERE usr.user_name = ‘&USER_NAME’
new 23: WHERE usr.user_name = ‘SYSADMIN’
USER_NAME PASSWORD
———————— —————–
SYSADMIN SYSADMIN123
Step#5 : Bellow sql will help you to validate SYSADMIN Password
SQL> select fnd_web_sec.validate_login(‘SYSADMIN’,’SYSADMIN123) from dual;
FND_WEB_SEC.VALIDATE_LOGIN(‘SYSADMIN’,’SYSADMIN123′)
——————————————————————————–
Y