ldaps аутентификация в Postgres Pro

Опубликовано

Выпуск сертфиката

AD необходимо дать роль CA и выпустить сертификат. Подробнее: https://youtu.be/xC3ujXGkh_c?t=160

Перенос сертификата

Необходимо перенести выпущенный конечный сертификат на сервер СУБД и перекодировать следующей командой:

openssl x509 -inform der -in <ad>.cer -out <ad>.pem

Установка пакета ldap-utils

apt install ldap-utils -y

Правка ldap конфига

В файл /etc/ldap/ldap.conf необходимо добавить следующие строки:

TLS_CACERT	/etc/ldap/<ad>.pem
BASE		dc=<domain>,dc=<local>
URI 		ldaps://<dc>.<domain>.<local>:636

Проверка ldap

ldapsearch -x -b "dc=<domain>,dc=<local>" -H ldaps://<dc>.<domain>.<local>:636 -W -D <domain-user>

Правка pg_hba.conf

С ldapprefix/ldapsuffix в файле /var/lib/pgpro/std-14/data/pg_hba.conf, возможно, придётся поколдовать. Стоит попробовать их оставить пустыми (="").

host <database> <user> <ip>/<mask> ldap ldapserver=<dc>.<domain>.<local> ldapscheme=ldaps ldapprefix="cn=" ldapsuffix=",cn=users,dc=<domain>,dc=<local>"

Создание пользователя в Postgres

psql -c "CREATE USER <domain-user>;"

Перезапуск Postgres Pro

systemctl restart postgres*