1. Пароль пользователя apps не известен.
2. Есть доступ к dbTier пользователем с привилегиями SYSDBA или DBA.
Последовательность шагов:
1. Сменить пароль пользователя apps на любой другой.
2. Залогиниться пользователем apps и выполнить следующее:
CREATE OR REPLACE PACKAGE get_pwd AS
FUNCTION decrypt ( KEY IN VARCHAR2,VALUE IN VARCHAR2
)
RETURN VARCHAR2;
END get_pwd;
/
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;
/
3. Далее выполнить(пользователем apps): 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_PWD,'/')-1) from dual)
4. Сменить пароль пользователя apps на результат выполнения запроса ш.3.
FEA8CC6C52430366049BB7AD893CF736697A90F127B67581927359A8762D825A2E4305C357B89F3E4696F0A99AFED9DF2C915D825DF9F4FCCF54BA4C2DE3B1BA78CB5B18EEBA55063C154C32F570BF357CDF29C27A64998687C7088803BDC548901E5B26CE82E65054D9387EA0923FE37D5E51EEE85A24B8104D2BC1B5D3EB861E6F0B33C5F19991B069CC8377B6273D1BE06B7C7683B39AF13163EF
ОтветитьУдалить