Управління паролями Oracle реалізується за допомогою профілів користувачів. Профілі можуть забезпечити безліч стандартних засобів захисту.
Відзначте: не використовуйте профілі, які призводять до того, що можуть закінчитися терміни паролів і блокуватися облікові записи користувачів SYS, SYSMAN і DBSNMP.
Account locking: Включає автоматичне блокування облікових записів на вказаний проміжок, коли користувачі не можуть увійти в систему вказану кількість спроб
FAILED_LOGIN_ATTEMPTS: Визначає число безуспішних спроб входу в систему перед блокуванням облікового запису
Password aging and expiration: Дозволяє визначати час життя призначених для користувача паролів, після якого паролі закінчуються і повинні бути змінені
PASSWORD_LIFE_TIME: Визначає час життя пароля в днях, після яких закінчується пароль
PASSWORD_GRACE_TIME: Визначає період відстрочки в днях для того, щоб змінити пароль після першого успішного входу в систему, коли пароль вже закінчився
Відзначте: Закінчення строку паролів і блокування облікових записів SYS, SYSMAN і DBSNMP перешкодять тому, щоб Enterprise Manager функціонував належним чином. Додатки повинні відстежувати попередження "password expired" і обробляти зміна пароля; інакше, період відстрочки може закінчитися, і користувач буде заблокований, не знаючи причину.
Password history: Перевіряє новий пароль, щоб гарантувати, що пароль не використовувалася вказану кількість часу, або що він не збігається з одним із заданого кількості попередніх паролів. Ці перевірки можуть бути реалізовані при використанні одного з наступних способів:
PASSWORD_REUSE_TIME: Визначає, що користувач не може знову використовувати пароль протягом заданого числа днів
PASSWORD_REUSE_MAX: Визначає число змін пароля, які потрібні перш, ніж поточний пароль може бути знову використаний
Згадайте, що значення параметрів профілю або встановлені або успадковані від профілю DEFAULT.
Якщо у обох параметрів історії пароля встановлено значення UNLIMITED, Oracle Database ігнорує обидва параметри. Користувач може знову використовувати будь-який пароль через будь-який проміжок часу, що не є добре з міркувань безпеки.
Якщо обидва параметри встановлені, повторне використання пароля дозволяється - але тільки після задоволення обом умовам. Користувач повинен змінити пароль вказане число раз, а також має пройти вказану кількість днів з моменту останнього використання даного пароля.
Наприклад, у профілю користувача ALFRED параметр PASSWORD_REUSE_MAX дорівнює 10, а параметр PASSWORD_REUSE_TIME дорівнює 30. Користувач ALFRED не може знову використовувати пароль, поки він не змінить пароль 10 разів і поки не пройде 30 днів з моменту останнього використання пароля.
Якщо один параметр дорівнює числу, а інший параметр встановлений в UNLIMITED, користувач ніколи не може знову використовувати пароль.
Password complexity verification: Здійснює перевірку складності пароля, щоб переконатися, що він задовольняє певним правилам. Перевірка повинна гарантувати, що пароль досить складний, щоб забезпечити захист проти зловмисників, які можуть спробувати увійти в систему, вгадавши пароль.
Параметр PASSWORD_VERIFY_FUNCTION визначає ім'я функції PL / SQL, яка виконує перевірку складності пароля перед тим, як можна буде його використовувати. Функції перевірки пароля повинні належати користувачеві SYS і повинні повертати Булево значення (ІСТИНА або БРЕХНЯ). Зразок функції перевірки пароля надано в сценарії utlpwdmg.sql, який можна знайти в в наступних каталогах:
Платформи Unix і Linux: $ ORACLE_HOME / rdbms / admin
Платформи Windows:% ORACLE_HOME% \ rdbms \ admin