Перейти к основному содержимому

Настройка подключения к PostgreSQL по TLS

Чтобы PassOffice использовал защищённое соединение с базой данных (TLS/SSL), выполните следующие шаги:

1. Настройка подключения в PassOffice

В файле application.properties укажите параметр ssl=true&sslmode=require.

Полная строка подключения должна выглядеть так:

app.db.url=${SPRING_DATASOURCE_URL:jdbc:postgresql://${passoffice.db.host}:${passoffice.db.port}/${passoffice.db.name}?targetServerType=master&ssl=true&sslmode=require}
  • ssl=true — включает шифрование соединения
  • sslmode=require — требует обязательного использования TLS (не допускает незащищённое соединение)

2. Настройка сервера PostgreSQL

Откройте файл postgresql.conf на сервере PostgreSQL и добавьте/измените следующие строки:

ssl = on
ssl_cert_file = 'server.crt' # путь к сертификату сервера
ssl_key_file = 'server.key' # путь к приватному ключу
ssl_ca_file = 'root.crt' # опционально, для клиентской аутентификации
ssl_ciphers = 'HIGH:MEDIUM:+3DES:!aNULL' # настройки шифрования

3. Дополнительно для Docker

Если PostgreSQL запущен в Docker-контейнере, после монтирования файлов сертификатов выполните команду внутри контейнера:

chmod 600 /путь/к/server.key