Шифрование паролей в СУБД Oracle



Средство СУБД Oracle по управления паролями в БД - часть 2


Всем пользователям присваивается профиль с ограниченным сроком действия пароля. Если пароль не меняется, то дается ограниченный период, в течение которого будут выдаваться предупредительные сообщения. Если пароль не меняется в течение дополнительного периода, то логин будет заблокирован. Разблокировать пароль сможет только член группы ДБА командой alter user account unlock;

Это средство также полезно, когда нужно заставить всех пользователей поменять их пароли.

Управление историей хранения паролей реализуется с помощью параметров password_reuse_max и password_reuse_time. Эти параметры не позволяют пользователю завести для себя два пароля и менять их поочередно. Бывают пользователи, которые, только что сменив пароль на какой-нибудь новый, тут же повторно меняют его на старый. Эти параметры запрещают пользователю вернуться к одному из старых паролей, пока не пройдет определенный период времени. Один из параметров определяет, сколько дней должно пройти прежде, чем пароль можно будет использовать повторно, а другой определяет сколько раз нужно сменить пароль, прежде, чем его можно будет использовать повторно. СУБД запоминает все введенные пароли (точнее, их хеши) и сравнивает их.

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

Один из способов управления паролями заключается в редактировании и выполнении скрипта, предназначенного для настройки политики парольной защиты - $ORACLE_HOME/rdbms/utlpwdmg.sql. Этот скрипт имеет ряд предварительно установленных параметров, поэтому в большинстве случаев администратор может просто выполнить его.

Скрипт utlpwdmg.sql присваивает параметру password_reuse_time=1800, а password_reuse_max=UNLIMITED. Методологически целесообразнее присваивать значение параметру password_reuse_time, а не password_reuse_max, потому что настойчивый пользователь может обойти ограничение password_reuse_max, поменяв пароль password_reuse_max+1 раз.

История паролей хранится в таблице sys.user_history$.




Содержание  Назад  Вперед