From f3567518d34205543587c5297545c8bec05d1554 Mon Sep 17 00:00:00 2001 From: Akshay Joshi Date: Tue, 7 Oct 2025 13:13:37 +0530 Subject: [PATCH] Added option to skip the password dialog when using an identity file. #6996 1. Don't ask for the SSH Tunnel or Database server password if it is already saved. 2. Modified the generic error message from the SSH Tunnel library. --- docs/en_US/images/server_ssh_tunnel.png | Bin 67807 -> 96578 bytes docs/en_US/release_notes_9_9.rst | 4 +- docs/en_US/server_dialog.rst | 3 ++ web/migrations/versions/efbbe5d5862f_.py | 42 ++++++++++++++++++ .../browser/server_groups/servers/__init__.py | 40 ++++++++++++++--- .../servers/static/js/server.ui.js | 18 +++++++- .../servers/tests/servers_test_data.json | 1 + .../tests/test_check_ssh_mock_connect.py | 1 + web/pgadmin/model/__init__.py | 12 ++++- web/pgadmin/setup/tests/servers.json | 1 + .../js/Dialogs/ConnectServerContent.jsx | 32 ++++++------- web/pgadmin/utils/__init__.py | 5 +++ .../utils/driver/psycopg3/server_manager.py | 10 ++++- 13 files changed, 142 insertions(+), 27 deletions(-) create mode 100644 web/migrations/versions/efbbe5d5862f_.py diff --git a/docs/en_US/images/server_ssh_tunnel.png b/docs/en_US/images/server_ssh_tunnel.png index 71e9e806e972b056de19182a860b2cb095a68c05..b5964e8a867020119a6ce1e1a6c9130fbbe0e458 100644 GIT binary patch literal 96578 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 z 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 UtsN-q_5$%piOGxp71sCpKcqiTd;kCd literal 67807 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 diff --git a/docs/en_US/release_notes_9_9.rst b/docs/en_US/release_notes_9_9.rst index 175c10ec1..cfc32ef24 100644 --- a/docs/en_US/release_notes_9_9.rst +++ b/docs/en_US/release_notes_9_9.rst @@ -8,7 +8,7 @@ This release contains a number of bug fixes and new features since the release o Supported Database Servers ************************** -**PostgreSQL**: 13, 14, 15, 16 and 17 +**PostgreSQL**: 13, 14, 15, 16, 17 and 18 **EDB Advanced Server**: 13, 14, 15, 16 and 17 @@ -20,8 +20,10 @@ Bundled PostgreSQL Utilities New features ************ + | `Issue #6385 `_ - Add support of DEPENDS/NO DEPENDS ON EXTENSION for ALTER FUNCTION. | `Issue #6394 `_ - Added "MULTIRANGE_TYPE_NAME" option while creating a Range Type. | `Issue #6395 `_ - Added "SUBSCRIPT" option while creating a External Type. + | `Issue #6996 `_ - Added option to skip the password dialog when using an identity file. | `Issue #8932 `_ - Added 'failover' and 'two_phase' parameter support in CREATE/ALTER SUBSCRIPTION for PostgreSQL v17+. Housekeeping diff --git a/docs/en_US/server_dialog.rst b/docs/en_US/server_dialog.rst index c9db6df7c..233b438d0 100644 --- a/docs/en_US/server_dialog.rst +++ b/docs/en_US/server_dialog.rst @@ -177,6 +177,9 @@ not be able to connect directly. *Identity file* field to specify the location of the key file. * If the SSH host is expecting a password of the user name or an identity file if being used, use the *Password* field to specify the password. +* Check the box next to *Prompt for password?* to to have pgAdmin prompt for + a password if the identity file includes one. This setting applies only when + using an identity file, which may or may not require a password. * Check the box next to *Save password?* to instruct pgAdmin to save the password for future use. Use :ref:`Clear SSH Tunnel Password ` to remove the saved diff --git a/web/migrations/versions/efbbe5d5862f_.py b/web/migrations/versions/efbbe5d5862f_.py new file mode 100644 index 000000000..a4f078303 --- /dev/null +++ b/web/migrations/versions/efbbe5d5862f_.py @@ -0,0 +1,42 @@ +########################################################################## +# +# pgAdmin 4 - PostgreSQL Tools +# +# Copyright (C) 2013 - 2025, The pgAdmin Development Team +# This software is released under the PostgreSQL Licence +# +########################################################################## + +""" +Revision ID: efbbe5d5862f +Revises: e6ed5dac37c2 +Create Date: 2025-09-29 18:40:30.248908 + +""" +from alembic import op, context +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = 'efbbe5d5862f' +down_revision = 'e6ed5dac37c2' +branch_labels = None +depends_on = None + + +def upgrade(): + with op.batch_alter_table( + "server", + table_kwargs={'sqlite_autoincrement': True}) as batch_op: + batch_op.add_column(sa.Column('tunnel_prompt_password', + sa.Integer(), server_default='0')) + with op.batch_alter_table( + "sharedserver", + table_kwargs={'sqlite_autoincrement': True}) as batch_op: + batch_op.add_column(sa.Column('tunnel_prompt_password', + sa.Integer(), server_default='0')) + + +def downgrade(): + # pgAdmin only upgrades, downgrade not implemented. + pass diff --git a/web/pgadmin/browser/server_groups/servers/__init__.py b/web/pgadmin/browser/server_groups/servers/__init__.py index 1f00620cd..369e3e248 100644 --- a/web/pgadmin/browser/server_groups/servers/__init__.py +++ b/web/pgadmin/browser/server_groups/servers/__init__.py @@ -167,6 +167,7 @@ class ServerModule(sg.ServerGroupPluginModule): server.tunnel_password = sharedserver.tunnel_password server.save_password = sharedserver.save_password server.tunnel_identity_file = sharedserver.tunnel_identity_file + server.tunnel_prompt_password = sharedserver.tunnel_prompt_password if hasattr(server, 'connection_params') and \ hasattr(sharedserver, 'connection_params') and \ 'passfile' in server.connection_params and \ @@ -413,6 +414,7 @@ class ServerModule(sg.ServerGroupPluginModule): tunnel_authentication=0, tunnel_identity_file=None, tunnel_keep_alive=0, + tunnel_prompt_password=0, shared=True, connection_params=data.connection_params, prepare_threshold=data.prepare_threshold @@ -790,6 +792,7 @@ class ServerNode(PGChildNodeView): 'tunnel_username': 'tunnel_username', 'tunnel_authentication': 'tunnel_authentication', 'tunnel_identity_file': 'tunnel_identity_file', + 'tunnel_prompt_password': 'tunnel_prompt_password', 'tunnel_keep_alive': 'tunnel_keep_alive', 'shared': 'shared', 'shared_username': 'shared_username', @@ -1086,6 +1089,8 @@ class ServerNode(PGChildNodeView): 'tunnel_username': tunnel_username, 'tunnel_identity_file': server.tunnel_identity_file if server.tunnel_identity_file else None, + 'tunnel_prompt_password': server.tunnel_prompt_password + if server.tunnel_identity_file else 0, 'tunnel_authentication': tunnel_authentication, 'tunnel_keep_alive': tunnel_keep_alive, 'kerberos_conn': bool(server.kerberos_conn), @@ -1212,6 +1217,8 @@ class ServerNode(PGChildNodeView): tunnel_authentication=1 if data.get('tunnel_authentication', False) else 0, tunnel_identity_file=data.get('tunnel_identity_file', None), + tunnel_prompt_password=1 if data.get('tunnel_prompt_password', + True) else 0, tunnel_keep_alive=data.get('tunnel_keep_alive', 0), shared=data.get('shared', None), shared_username=data.get('shared_username', None), @@ -1419,6 +1426,19 @@ class ServerNode(PGChildNodeView): } ) + def is_prompt_tunnel_password(self, server): + """ + This function will check whether to prompt tunnel password or not. + """ + prompt_tunnel_password = True + # In case of identity file check the value of tunnel_prompt_password. + if server.tunnel_password is not None or \ + (server.tunnel_identity_file is not None and + server.tunnel_prompt_password != 1): + prompt_tunnel_password = False + + return prompt_tunnel_password + def connect(self, gid, sid, is_qt=False, server=None): """ Connect the Server and return the connection object. @@ -1502,11 +1522,12 @@ class ServerNode(PGChildNodeView): # If server using SSH Tunnel if server.use_ssh_tunnel: - if 'tunnel_password' not in data: - if server.tunnel_password is None: - prompt_tunnel_password = True - else: - tunnel_password = server.tunnel_password + if 'tunnel_password' not in data and \ + server.tunnel_password is None: + prompt_tunnel_password = self.is_prompt_tunnel_password(server) + elif 'tunnel_password' not in data and \ + server.tunnel_password is not None: + tunnel_password = server.tunnel_password else: tunnel_password = data['tunnel_password'] \ if 'tunnel_password' in data else '' @@ -1562,6 +1583,10 @@ class ServerNode(PGChildNodeView): return self.get_response_for_password( server, 428, prompt_password, prompt_tunnel_password) + # Check whether to prompt for the tunnel password in case if + # password is saved in server object or in data. + prompt_tunnel_password = self.is_prompt_tunnel_password(server) + try: status, errmsg = conn.connect( password=password, @@ -1571,7 +1596,7 @@ class ServerNode(PGChildNodeView): ) except Exception as e: return self.get_response_for_password( - server, 401, True, True, + server, 401, not server.save_password, prompt_tunnel_password, getattr(e, 'message', str(e))) if not status: @@ -1583,7 +1608,8 @@ class ServerNode(PGChildNodeView): return internal_server_error(errmsg) return self.get_response_for_password( - server, 401, True, True, errmsg) + server, 401, not server.save_password, + prompt_tunnel_password, errmsg) else: if save_password and config.ALLOW_SAVE_PASSWORD: try: diff --git a/web/pgadmin/browser/server_groups/servers/static/js/server.ui.js b/web/pgadmin/browser/server_groups/servers/static/js/server.ui.js index d192c8037..97a7311af 100644 --- a/web/pgadmin/browser/server_groups/servers/static/js/server.ui.js +++ b/web/pgadmin/browser/server_groups/servers/static/js/server.ui.js @@ -211,6 +211,7 @@ export default class ServerSchema extends BaseUISchema { tunnel_port: 22, tunnel_username: undefined, tunnel_identity_file: undefined, + tunnel_prompt_password: false, tunnel_password: undefined, tunnel_authentication: false, tunnel_keep_alive: 0, @@ -496,7 +497,22 @@ export default class ServerSchema extends BaseUISchema { maxLength: null }, readonly: obj.isConnected, - }, { + }, + { + id: 'tunnel_prompt_password', label: gettext('Prompt for password?'), + type: 'switch', group: gettext('SSH Tunnel'), mode: ['properties', 'edit', 'create'], + deps: ['tunnel_authentication', 'use_ssh_tunnel'], + depChange: (state)=>{ + if (!state.tunnel_authentication) { + return {tunnel_prompt_password: false}; + } + }, + disabled: function(state) { + return !state.tunnel_authentication || !state.use_ssh_tunnel; + }, + helpMessage: gettext('This setting applies only when using an identity file. An identity file may or may not have a password. If set to true the system will prompt for the password.') + }, + { id: 'save_tunnel_password', label: gettext('Save password?'), type: 'switch', group: gettext('SSH Tunnel'), mode: ['create'], deps: ['connect_now', 'use_ssh_tunnel'], diff --git a/web/pgadmin/browser/server_groups/servers/tests/servers_test_data.json b/web/pgadmin/browser/server_groups/servers/tests/servers_test_data.json index b1a47a309..a5a432c7f 100644 --- a/web/pgadmin/browser/server_groups/servers/tests/servers_test_data.json +++ b/web/pgadmin/browser/server_groups/servers/tests/servers_test_data.json @@ -633,6 +633,7 @@ "tunnel_password": "user123", "tunnel_identity_file": "pkey_rsa", "tunnel_keep_alive": 0, + "tunnel_prompt_password": 0, "service": null, "server_info": { "id": 1, diff --git a/web/pgadmin/browser/server_groups/servers/tests/test_check_ssh_mock_connect.py b/web/pgadmin/browser/server_groups/servers/tests/test_check_ssh_mock_connect.py index f6e376838..8e19f9758 100644 --- a/web/pgadmin/browser/server_groups/servers/tests/test_check_ssh_mock_connect.py +++ b/web/pgadmin/browser/server_groups/servers/tests/test_check_ssh_mock_connect.py @@ -77,6 +77,7 @@ class ServersSSHConnectTestCase(BaseTestGenerator): self.service = service self.save_password = 0 self.shared = None + self.tunnel_prompt_password = 0 mock_server_obj = TestMockServer( self.mock_data['name'], diff --git a/web/pgadmin/model/__init__.py b/web/pgadmin/model/__init__.py index 323412fdd..fcc55268c 100644 --- a/web/pgadmin/model/__init__.py +++ b/web/pgadmin/model/__init__.py @@ -33,7 +33,7 @@ import config # ########################################################################## -SCHEMA_VERSION = 47 +SCHEMA_VERSION = 48 ########################################################################## # @@ -246,6 +246,11 @@ class Server(db.Model): nullable=False ) tunnel_identity_file = db.Column(db.String(64), nullable=True) + tunnel_prompt_password = db.Column( + db.Integer(), db.CheckConstraint( + 'tunnel_prompt_password >= 0 AND tunnel_prompt_password <= 1'), + nullable=False + ) tunnel_password = db.Column(PgAdminDbBinaryString()) tunnel_keep_alive = db.Column(db.Integer(), nullable=True, default=0) shared = db.Column(db.Boolean(), nullable=False) @@ -483,6 +488,11 @@ class SharedServer(db.Model): nullable=False ) tunnel_identity_file = db.Column(db.String(64), nullable=True) + tunnel_prompt_password = db.Column( + db.Integer(), db.CheckConstraint( + 'tunnel_prompt_password >= 0 AND tunnel_prompt_password <= 1'), + nullable=False + ) tunnel_password = db.Column(PgAdminDbBinaryString()) tunnel_keep_alive = db.Column(db.Integer(), nullable=True) shared = db.Column(db.Boolean(), nullable=False) diff --git a/web/pgadmin/setup/tests/servers.json b/web/pgadmin/setup/tests/servers.json index a6b715e8c..07ac58449 100644 --- a/web/pgadmin/setup/tests/servers.json +++ b/web/pgadmin/setup/tests/servers.json @@ -36,6 +36,7 @@ "TunnelPort": "22", "TunnelUsername": "username", "TunnelAuthentication": 0, + "TunnelPromptPassword": 0, "PasswordExecCommand": "echo 'test'", "PasswordExecExpiration": 100 } diff --git a/web/pgadmin/static/js/Dialogs/ConnectServerContent.jsx b/web/pgadmin/static/js/Dialogs/ConnectServerContent.jsx index 9696959cf..cb17144eb 100644 --- a/web/pgadmin/static/js/Dialogs/ConnectServerContent.jsx +++ b/web/pgadmin/static/js/Dialogs/ConnectServerContent.jsx @@ -109,21 +109,23 @@ export default function ConnectServerContent({closeModal, data, onOK, setHeight, } onClick={()=>{ closeModal(); }} >{gettext('Cancel')} - } onClick={()=>{ - let postFormData = new FormData(); - if(data.prompt_tunnel_password) { - postFormData.append('tunnel_password', formData.tunnel_password); - formData.save_tunnel_password && - postFormData.append('save_tunnel_password', formData.save_tunnel_password); - } - if(data.prompt_password) { - postFormData.append('password', formData.password); - formData.save_password && - postFormData.append('save_password', formData.save_password); - } - onOK?.(postFormData); - closeModal(); - }} >{gettext('OK')} + {(data.prompt_password || data.prompt_tunnel_password) && <> + } onClick={()=>{ + let postFormData = new FormData(); + if(data.prompt_tunnel_password) { + postFormData.append('tunnel_password', formData.tunnel_password); + formData.save_tunnel_password && + postFormData.append('save_tunnel_password', formData.save_tunnel_password); + } + if(data.prompt_password) { + postFormData.append('password', formData.password); + formData.save_password && + postFormData.append('save_password', formData.save_password); + } + onOK?.(postFormData); + closeModal(); + }} >{gettext('OK')} + } ); diff --git a/web/pgadmin/utils/__init__.py b/web/pgadmin/utils/__init__.py index a66055e3f..b2b17d4c5 100644 --- a/web/pgadmin/utils/__init__.py +++ b/web/pgadmin/utils/__init__.py @@ -525,6 +525,8 @@ def dump_database_servers(output_file, selected_servers, server.tunnel_authentication) add_value(attr_dict, "TunnelIdentityFile", server.tunnel_identity_file) + add_value(attr_dict, "TunnelPromptPassword", + server.tunnel_prompt_password) add_value(attr_dict, "TunnelKeepAlive", server.tunnel_keep_alive) add_value(attr_dict, "KerberosAuthentication", @@ -773,6 +775,9 @@ def load_database_servers(input_file, selected_servers, new_server.tunnel_identity_file = \ obj.get("TunnelIdentityFile", None) + new_server.tunnel_prompt_password = \ + obj.get("TunnelPromptPassword", 0) + new_server.tunnel_keep_alive = \ obj.get("TunnelKeepAlive", None) diff --git a/web/pgadmin/utils/driver/psycopg3/server_manager.py b/web/pgadmin/utils/driver/psycopg3/server_manager.py index 9505a6b76..561141b5d 100644 --- a/web/pgadmin/utils/driver/psycopg3/server_manager.py +++ b/web/pgadmin/utils/driver/psycopg3/server_manager.py @@ -99,6 +99,7 @@ class ServerManager(object): if server.tunnel_authentication is None \ else server.tunnel_authentication self.tunnel_identity_file = server.tunnel_identity_file + self.tunnel_prompt_password = server.tunnel_prompt_password self.tunnel_password = server.tunnel_password self.tunnel_keep_alive = server.tunnel_keep_alive else: @@ -108,6 +109,7 @@ class ServerManager(object): self.tunnel_username = None self.tunnel_authentication = None self.tunnel_identity_file = None + self.tunnel_prompt_password = 0 self.tunnel_password = None self.tunnel_keep_alive = 0 @@ -610,8 +612,12 @@ WHERE db.oid = {0}""".format(did)) self.tunnel_created = True except BaseSSHTunnelForwarderError as e: current_app.logger.exception(e) - return False, gettext("Failed to create the SSH tunnel.\n" - "Error: {0}").format(str(e)) + return False, gettext( + "Failed to create the SSH tunnel. Possible causes:\n" + "1. Enter the correct tunnel password (Clear saved password " + "if it has changed).\n 2. If using an identity file that " + "requires a password, enable “Prompt for Password?” in the " + "server dialog. \n 3. Verify the host address.") # Update the port to communicate locally self.local_bind_port = self.tunnel_object.local_bind_port