J'ai trouvé le problème. Simplement passer
ssl = true
n'est pas suffisant pour JDBC, vous devez également installer les certificats racine corrects dans votre keystore Java afin que PgJDBC puisse vérifier le certificat distant.
Si vous ne souhaitez pas configurer le magasin de certificats racine, vous pouvez plutôt passer :
ssl = true
sslfactory = org.postgresql.ssl.NonValidatingFactory
bien que cela désactive la protection contre les attaques man-in-the-middle , votre session SSL ne dispose donc plus d'une sécurité fiable de bout en bout.
Consultez la documentation Heroku ici :
(Avertissement sur la sécurité SSL ajouté par Craig Ringer)