Посмотреть когда у пользователя последний раз менялся пароль можно следующими способами:
Если аудит включен, то можно обратиться к представлению dba_audit_trail, и вытащить из него запись о последнем удачном выполнении команды ALTER USER для данного пользователя:
SELECT MAX(timestamp) FROM dba_audit_trail WHERE action_name = 'ALTER USER' AND obj_name = 'USER1' AND returncode = 0
Недостатком этого способа является то, что под командой ALTER USER может скрываться не только изменение пароля пользователя, но и, к примеру, изменение у него табличного пространства по умолчанию. К достоинству этого способа можно отнести то, что можно посмотреть историю изменения пароля пользователя.
Обратиться к системным представлениям KU$_PSW_HIST_LIST_VIEW или EXU8PHS:
SELECT MAX(password_date) FROM sys.ku$_psw_hist_list_view WHERE uname = 'USER1'
Представления базируются на таблицах USER_HISTORY$ и USER$ словаря и отображают историю свёрток (хэшей) паролей пользователей. Недостатком этого способа является то, что он применим только для пользователей, которым назначен профиль с установленным параметром PASSWORD_REUSE_TIME. Как и в предыдущем способе, здесь так же можно при желании вывести историю изменения паролей.
Обратиться к системной таблице словаря USER$:
SELECT ptime FROM sys.user$ WHERE name = 'USER1'
Поле ptime покажет дату, и время когда пароль пользователя был изменён.