dba_users.Password содержит хешированные пароли. Как проверить старый пароль перед сменой пароля? У меня есть приблизительное представление о двух методах:Проверка старого пароля при изменении пароля
(1) Найдите, что использует алгоритм хеширования и значение оракула, а затем беру хэш и хэши. Это оказывается очень сложным, поскольку алгоритм хеширования оракула и семена не являются общеизвестными.
(2) EXECUTE IMMEDIATE 'CONNECT' || p_UserName || '/' || p_OldPassword. Какие проблемы имеет этот подход? Как закрыть соединение после этого, или сделать это автоматически закрытым после завершения инструкции или процедуры? Может ли один и тот же пользователь войти в систему одновременно несколько раз в любом сценарии?