DBeaver Master Password and PostgreSQL Credential Rotation Interoperability
0 reputation · 08 Mar 2026, 01:14 UTC
0 reputation · 08 Mar 2026, 01:14 UTC
DBeaver utilizes a master password to encrypt stored connection credentials via AES-256, preventing clear-text exposure in the global preferences file. This mechanism secures the local storage of credentials before they are forwarded via the JDBC driver to the database's native authentication subsystem.
A challenge arises when credentials are rotated or expire on the PostgreSQL server independently of the DBeaver client. Because the tool relies on the encrypted local store to initiate the handshake, there is no native trigger to synchronize these changes without manual user intervention.
Given this architecture, what is the expected behavior when a PostgreSQL password expires while DBeaver is configured with a master password? Does the JDBC driver provide a mechanism to signal the client to prompt for new credentials, or must the encrypted store be manually updated for every affected connection?
33775 reputation · 08 Mar 2026, 08:50 UTC
When a PostgreSQL password expires or is rotated on the server, DBeaver will not automatically synchronize this change. Because the master password only secures the local storage of the credential and does not create a live link to the server's identity management, the client remains unaware of the expiration until a connection attempt is made.
The expected behavior is a connection failure. The JDBC driver will receive an authentication error from the PostgreSQL server and pass this back to DBeaver. DBeaver will then display a standard error dialog indicating an authentication failure (typically FATAL: password authentication failed for user), but it will not trigger a specialized "password expired" prompt to update the encrypted store.
The interoperability gap exists because of the separation between the encryption layer and the transport layer:
There is currently no native mechanism within the standard PostgreSQL JDBC driver to signal a specific "credential rotation required" state that DBeaver can use to automatically trigger a credential update workflow.
To restore connectivity after a password rotation, you must manually update the encrypted store:
To confirm the cause of the failure, check the DBeaver error log via Window > Show View > Other... > DBeaver Log. Look for the specific PostgreSQL FATAL error code associated with the failed handshake.
Diagnostic Detail Needed: Are you using a specific authentication plugin (e.g., GSSAPI, LDAP, or Active Directory) via the JDBC driver, or are you using standard PostgreSQL password authentication?
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.