Ich versuche, eine Verbindung zu einer Postgresql-Datenbank von Java mit dem JDBC Driver herzustellen und möchte zur Authentifizierung verwenden.Unterstützt der Postgresql JDBC-Treiber die Pgpass-Authentifizierung?
Mein Postgresql-Server ist ordnungsgemäß für die Kennwortauthentifizierung eingerichtet und ich habe eine lokale .pgpass
Datei; Ich kann unter Verwendung psql Verbindung herstellen, ohne das Kennwort des Benutzers zur Verfügung stellen zu müssen. Allerdings, wenn ich versuche, eine Verbindung in Java zu öffnen, bekomme ich folgende Fehlermeldung:
org.postgresql.util.PSQLException: The server requested password-based authentication, but no password was provided.
ich den folgenden Code verwenden:
String url = "jdbc:postgresql://localhost/test";
Properties props = new Properties();
props.setProperty("user","my_user");
Connection conn = DriverManager.getConnection(url, props);
Meine Frage ist dann: funktioniert die Postgres JDBC-Treiber-Unterstützung pgpass?
Der einzige Hinweis, den ich finden konnte, ist in SO und scheint darauf hinzuweisen, dass since the driver does not use libpq, then it cannot use pgpass. Ich kann jedoch nirgendwo eine Autoritatsantwort finden.