PostgreSQL - Складність пароля, включення passwordcheck

  • Останнє оновлення: 3 Листопада 2023 р.
  • Перегляди: 43
  • Автор: Адмін
PostgreSQL - Складність пароля, включення passwordcheck

Колеги всім привіт.

У сьогоднішній статті ми вам покажемо як встановити механізм перевірки складності пароля в PostgreSQL при створенні нового користувача або ролі в базі даних або зміни існуючого користувача або ролі.

За перевірку складності пароля в PostgreSQL відповідає плагін passwordcheck. Плагін перевірятиме пароль щоразу, коли створюється нова роль базі даних чи користувач, або коли змінюється пароль вже існуючої ролі чи користувача.

 

Насамперед потрібно перевірити увімкнений у вас плагін passwordcheck в PostgreSQL чи ні, для цього в консолі бази даних виконуємо простий запит:

sql> SHOW shared_preload_libraries;

перевірка пароля

У нашому випадку нам повернулося порожнє значення, а це означає, що плагін passwordcheck у нас вимкнений.

 

Щоб увімкнути плагін, потрібно в основному конфігураційному файлі postgresql.conf знайти параметр shared_preload_libraries і додати значення  $libdir/passwordcheck .

перевірка пароля

Після додавання параметра обов'язково перезапустіть базу даних, інакше плагін не буде активним.

 

Якщо після перезапуску бази даних у нас виникне помилка при старті, і СУБД покаже помилку з приблизним текстом, що вона не знає такого плагіна і не може його підключити, то ви коли збирали вашу СУБД, то ви не вказали які розширення ви хочете встановити разом із СУБД.

Вам потрібно до зібрати вашу СУБД за допомогою утиліти configure яка поставляється разом із СУБД.

 

Якщо у вас все вийшло і ваша база даних успішно запустилася після додавання параметра, то тепер знову перевіримо стану змінної  shared_preload_libraries в консолі.

sql> SHOW shared_preload_libraries;

перевірка пароля

Як бачимо, в результаті плагін успішно був активований.

 

Тепер настала черга перевірити як відпрацьовуватиме плагін якщо ми спробуємо створити роль із надто простим паролем.

sql> CREATE ROLE test WITH LOGIN PASSWORD '123';
sql> CREATE ROLE test WITH LOGIN PASSWORD 'test';
sql> CREATE ROLE test WITH LOGIN PASSWORD 'postgres';
sql> CREATE ROLE test WITH LOGIN PASSWORD 'postgresql';
sql> CREATE ROLE test WITH LOGIN PASSWORD 'postgresqlqqqkjhkh';

перевірка пароля

Як бачимо плагін успішно бореться з тим, щоб ми не могли створити роль зі слабким паролем.


 

Дякую всім, я сподіваюся що вам моя стаття хоч чимось допомогла.

СХОЖІ СТАТТІ

PostgreSQL - pg_dump створення резервної копії зі стисненням bzip2

PostgreSQL - pg_dump створення резервної копії зі стисненням bzip2

PostgreSQL - як скинути пароль postgres

PostgreSQL - як скинути пароль postgres

Завантажити та встановити Postgresql 14 на Linux CentOS/RHEL 8/7 TAR

Завантажити та встановити Postgresql 14 на Linux CentOS/RHEL 8/7 TAR