Подключение к базе данных Heroku Postgres из-за пределов приложения Heroku с помощью JDBC

avatar
Daniel Bigham
1 июля 2021 в 20:56
90
1
0

Я пытаюсь подключиться к бесплатной базе данных Heroku уровня Wolfram Language. Пакет DatabaseLink использует JDBC для установления соединения. Когда я указываю, что для соединения следует использовать SSL, я получаю:

JDBC: ошибка SSL: сбой построения пути PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти допустимый путь сертификации к запрошенной цели

Статья поддержки по адресу: https://reference.wolfram.com/language/DatabaseLink/tutorial/SecureSocketLayer.html

... кажется, что нужно получить сертификат безопасности для сайта, сгенерировать файл "хранилища доверия", а затем загрузить JVM таким образом, чтобы указать, какой файл хранилища доверия следует использовать.

Я не уверен, ведет ли это меня в правильном направлении или нет. Но на данный момент я не знаю, как мне получить этот сертификат безопасности.

Источник

Ответы (1)

avatar
Daniel Bigham
1 июля 2021 в 21:13
0

Кажется, я наткнулся по крайней мере на один способ обойти возникшую ошибку, как описано в разделе «Использование SSL без проверки сертификата»:

https://jdbc.postgresql.org/documentation/head/ssl-client.html

Мне удалось указать параметр sslfactory через:

OpenSQLConnection[
    ... 
    "Properties" -> {"ssl" -> "true", "sslfactory" -> "org.postgresql.ssl.NonValidatingFactory"}
]

Теперь соединение с базой данных установлено успешно.