Не удается настроить SSL-соединение между Spring Boot и PostgreSQL - PullRequest
1 голос
/ 05 февраля 2020

Я хочу настроить SSL на Postgresql 12. Затем мое приложение Java добавит записи в базу данных, удалит и т. Д. c.

Я создал сертификаты: CA, сервер, клиент. CA и сервер находятся в каталоге C: \ Program Files \ PostgreSQL \ 12 \ data. Клиент находится в C: \ Users \ User \ AppData \ Roaming \ postgresql.

I сделал это для моего Java (хранилище доверенных сертификатов): https://jdbc.postgresql.org/documentation/head/ssl-client.html

Конфиги:

pg_hba:

hostnossl     all          all            0.0.0.0/0                reject
hostssl       all          all           0.0.0.0/0            cert clientcert=1

postgresql .conf:

ssl = on
ssl_ca_file = 'root.crt'

Я могу соединить сервер throw pgAdmin и cmd с моими сертификатами, но не могу соединиться с помощью своего приложения Spring Boot.

Теперь есть это Применение *

Это происходит в конце процесса, как я вижу (часть результатов javax. net .debug = ssl):

update handshake state: change_cipher_spec
upcoming handshake states: client finished[20]
upcoming handshake states: server change_cipher_spec[-1]
upcoming handshake states: server finished[20]
main, WRITE: TLSv1.2 Change Cipher Spec, length = 1
*** Finished
verify_data:  { 104, 228, 110, 105, 172, 1, 108, 84, 30, 158, 127, 133 }
***
update handshake state: finished[20]
upcoming handshake states: server change_cipher_spec[-1]
upcoming handshake states: server finished[20]
main, WRITE: TLSv1.2 Handshake, length = 40
main, READ: TLSv1.2 Alert, length = 2
main, RECV TLSv1.2 ALERT:  fatal, unexpected_message
%% Invalidated:  [Session-2, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384]
main, called closeSocket()
main, handling exception: javax.net.ssl.SSLException: Received fatal alert: unexpected_message

Журналы PostgreSQL ничего не говорят новое:

СООБЩЕНИЕ: Получено фатальное оповещение: неожиданное сообщение

Я действительно не знаю, что может быть не так ... Может, кто-то здесь может мне помочь? Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...