Как получить список заблокированных учетных записей / проверить, что учетная запись заблокирована?

16

Я могу использовать следующее заявление, чтобы разблокировать аккаунт:

ALTER USER username ACCOUNT UNLOCK

Но какое заявление я могу использовать, чтобы убедиться, что учетная запись в данный момент заблокирована?

Михаил
источник

Ответы:

22

Как уже показывает ответ Dba , информация о состоянии учетной записи доступна через dba_usersпредставление. Связанный с пользователем, имеющим соответствующие права, его также можно использовать для идентификации «неактивных пользователей»:

SELECT username, account_status, created, lock_date, expiry_date
  FROM dba_users
 WHERE account_status != 'OPEN';

сообщает вам для каждой заблокированной / просроченной учетной записи, когда она была создана, в каком состоянии она находится (заблокирована, просрочена, просрочена и заблокирована, просрочена (льготная)) и в какое время она была заблокирована или просрочена. Полезно для «очистки»; но вы должны учитывать, что некоторые учетные записи могут быть просто «держателями данных», к которым никогда не подключаются из соображений безопасности, но которые требуются либо самой Oracle, либо вашими приложениями. Хорошим примером для них является системная учетная запись OUTLN. Поэтому позаботьтесь о том, чтобы только «вычищать» аккаунты, которые, как вы знаете, не используются / не нужны

Иззи
источник
5

Используйте DBA_USERSView.

SELECT username, account_status
FROM dba_users;
администратор базы данных
источник
1

Вы можете запросить это, указав имя пользователя также:

select username, account_status
from dba_users
where username = 'your_user_name';
Мухаммед Ноух
источник