Разблокировка пользователей в Oracle

Если ваша система работает с СУБД Oracle, то вам необходимо знать, что если ввести несколько раз подряд неверный пароль, то учетная запись пользователя может быть заблокирована на уровне СУБД. "Может быть" я написал потому, что это зависит от настроек Oracle. В случае, если пользователи, все таки, блокируются, для их разблокировки проще всего выполнить в sqlplus следующую команду

ALTER USER username ACCOUNT UNLOCK

Если с такой ситуацией приходится сталкиваться часто, то можно пойти дальше - добавить в разделе Администрирование действие "Разблокировать пользователя" и реализовать следующий обработчик события:
function amiUnlockUserOnExecute(ActionMenuItem, Sender) {
  var UserName = GetDatasetFieldValue (dlData.Dataset, 'SQLObjectName');
  if (UserName) {
    Connector.DBEngine.ExecuteCustomSQL('ALTER USER "' + UserName + '" ACCOUNT UNLOCK', System.EmptyValue);
    ShowInformationDialog('Пользователь "' + UserName + '" успешно разблокирован!');
  }
}

Нравится

Поделиться

2 комментария

Впринципе, если это часто происходит блокировка пользователей в следствии некорректного воода пароля, то в настройках Oracle параметру FAILED_LOGIN_ATTEMPTS нужно указать UNLIMITED и пользователь блокироваться не будет.

я вообще ничего не понимаю в этом оракле =)
что он хочет?

ALTER USER username ACCOUNT UNLOCK
   2  /
SP2-0640: Not connected
Показать все комментарии